Delphi-PRAXiS
Seite 8 von 9   « Erste     678 9      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Alice - künstliche Intelligenz (https://www.delphipraxis.net/95628-alice-kuenstliche-intelligenz.html)

DGL-luke 27. Okt 2007 19:18

Re: Alice - künstliche Intelligenz
 
o.O

das würd ich so nicht machen!

Delphi-Quellcode:
Found := Pos(Txt, Str) > 0;
So!

der typecast ist extrem unsauber. es ist zwar definiert, false=0 und true=!false, also alles außer 0, trotzdem ist true meistens -1 und wird auch oft so geprüft. das ist natürlich unsauber. aber trotzdem muss man damit nicht weitermachen.

cruiser 27. Okt 2007 19:29

Re: Alice - künstliche Intelligenz
 
hrm.. für Boolean ist laut Hilfe True = 1, allerdings sagt die Hilfe auch:
Delphi Hilfe:
Die Umwandlung der Variable in einen Booleschen Typ ist nicht empfehlenswert.

darum editier ich den Mist mal raus oben :oops:

Bin glaube zu lange auf :mrgreen:

nachti1505 28. Okt 2007 00:32

Re: Alice - künstliche Intelligenz
 
Ja, POS ist wirklich toll, aber TimerTims erste Frage wurde nicht beantwortet - bis jetzt...

Zitat:

Zitat von TimerTim
Delphi-Quellcode:
procedure TxtInStr(Str: String; Txt: String);
var i: Integer;
begin
  For i := 1 To Length(Str) Do If Copy(Str, i, i + Length(Txt) - 1) = Txt Then Found := True;
end;
Was habe ich falsch gemacht?

Delphi-Quellcode:
function Copy(S; Index, Count: Integer): string;
Count ist interessant! Das ist die Anzahl der Zeichen, die kopiert werden sollen... Muss in deinem Beispiel immer gleich sein... und zwar length(Txt) -->

Delphi-Quellcode:
procedure TxtInStr(Str: String; Txt: String);
var i: Integer;
begin
  For i := 1 To Length(Str) Do If Copy(Str, i, Length(Txt)) = Txt Then Found := True;
end;

alzaimar 28. Okt 2007 06:40

Re: Alice - künstliche Intelligenz
 
Zitat:

Zitat von DGL-luke
das würd ich so nicht machen!

Was denn? :gruebel: Das etwa?
Zitat:

Zitat von DGL-luke
Delphi-Quellcode:
Found := Pos(Txt, Str) > 0;
der typecast ist extrem unsauber.

Wo issn da ein Typecast? Das ist eine Zuweisung eines boolschen Terms ('Func > 0') an eine Variable und damit 100% sauber.

Krank wäre das hier:
Delphi-Quellcode:
Found := Boolean (Pos(Foo,Bar))

Progman 28. Okt 2007 09:58

Re: Alice - künstliche Intelligenz
 
@alzaimer: DGL-Luke's Beitrag (der Typecast) bezog sich auf was, das cruiser bereits wieder raus-editiert hatte ;)

alzaimar 28. Okt 2007 11:45

Re: Alice - künstliche Intelligenz
 
Zitat:

Zitat von Progman
@alzaimer: DGL-Luke's Beitrag (der Typecast) bezog sich auf was, das cruiser bereits wieder raus-editiert hatte ;)

Wie hinterhältig. :zwinker:

cruiser 28. Okt 2007 14:31

Re: Alice - künstliche Intelligenz
 
Nee... einfach nur gefährlich, das stehn zu lassen ... sorry :oops:

DGL-luke 29. Okt 2007 08:02

Re: Alice - künstliche Intelligenz
 
Sowas muss man aber in nem PS / EDIT-Kommentar kenntlich machen! Sonst meint alzaimar womöglich, ich würde überall nur noch hard casts sehen und lässt mich einliefern...

alzaimar 29. Okt 2007 08:09

Re: Alice - künstliche Intelligenz
 
Zitat:

Zitat von DGL-luke
Sonst meint alzaimar womöglich, ich würde überall nur noch hard casts sehen

Stimmt doch auch (Beweis: Dieser Thread :mrgreen:)
Zitat:

Zitat von DGL-luke
und lässt mich einliefern...

und DAS wollte ich den Moderatoren empfehlen... :stupid:

Aber hinterher kann man natürlich immer behaupten, das da was ganz anderes stand. :zwinker:

Im Ernst: Im Zweifelsfall ein '[edit]....[/edit]', dann wird so ein Thread lesbarer.

leddl 29. Okt 2007 08:55

Re: Alice - künstliche Intelligenz
 
Zitat:

Zitat von alzaimar
Im Ernst: Im Zweifelsfall ein '[edit]....[/edit]', dann wird so ein Thread lesbarer.

Zitat:

Zitat von cruiser
- hier stand mal was über nen Type-Cast -

:zwinker:


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:47 Uhr.
Seite 8 von 9   « Erste     678 9      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz