Delphi-PRAXiS
Seite 1 von 2  1 2   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Neuen Beitrag zur Code-Library hinzufügen (https://www.delphipraxis.net/33-neuen-beitrag-zur-code-library-hinzufuegen/)
-   -   Delphi Frage: Buchstaben/ Wortzähle mit while (https://www.delphipraxis.net/188052-frage-buchstaben-wortzaehle-mit-while.html)

Phillip0405 27. Jan 2016 09:57

Frage: Buchstaben/ Wortzähle mit while
 
Hallo,
ich hätte die Frage, wie man es angehen muss, wenn man mit while...do begin ein Programm schreiben soll, damit, wenn in dem Feld Text(woraus die Buchstaben/Worte gezählt werden soll) z. B. "Das ist ein Text" steht, und man in Suche dann z. B. s eingibt, soll in Anzahl die Anzahl aller "s" angezeigt werden. Wie muss man dieses angehen?

Danke schon mal im Voraus!:thumb::thumb:

CCRDude 27. Jan 2016 10:09

AW: Frage: Buchstaben/ Wortzähle mit while
 
Durchiterieren hattest Du ja schon in der letzten Hausaufgabe, jetzt musst Du halt nur inkrementieren statt edieren ;)

Phillip0405 27. Jan 2016 10:20

AW: Frage: Buchstaben/ Wortzähle mit while
 
Wie geht
Zitat:

Zitat von CCRDude (Beitrag 1328378)
... inkrementieren ...

?

Jumpy 27. Jan 2016 10:36

AW: Frage: Buchstaben/ Wortzähle mit while
 
Inkrementieren meint Hochzählen. Sprich du hast eine Zählvariable. Diese setzt du zunächst auf 0. Dann gehst du mit einer Schleife alle Buchstaben/Zeichen deines Textes durch, immer wenn du das gesuchte Zeichen findest erhöhst du die Zählvariable um 1.

Code:
Var Zähler:integer;
Zähler:=0
Schleife
Wenn Text an Stelle = Suchbuchstabe dann
  Zähler:=Zähler+1;

Statt Zähler:=Zähler+1; kann man auch Inc(Zähler) schreiben. Das ist eine Delphi-Hilfsprozedur um eine variable zu inkrementieren/hochzuzählen.

Phillip0405 27. Jan 2016 11:26

AW: Frage: Buchstaben/ Wortzähle mit while
 
Danke!

Phillip0405 27. Jan 2016 11:48

AW: Frage: Buchstaben/ Wortzähle mit while
 
Bei mir wird nun jetzt bei Anzahl(der gesuchten Buchstaben) immer 0.
Was einer von euch warum?

Zacherl 27. Jan 2016 11:50

AW: Frage: Buchstaben/ Wortzähle mit while
 
Zitat:

Zitat von Phillip0405 (Beitrag 1328405)
Was einer von euch warum?

Nö, woher auch? Zeig doch mal deinen Code ..

Phillip0405 27. Jan 2016 12:04

AW: Frage: Buchstaben/ Wortzähle mit while
 
Zitat:

Zitat von Zacherl (Beitrag 1328408)
Zitat:

Zitat von Phillip0405 (Beitrag 1328405)
Was einer von euch warum?

Nö, woher auch? Zeig doch mal deinen Code ..

Delphi-Quellcode:
var
a, text, suche:string
b,c, Zähler, Anzahl:interger;
begin
Zähler:=0;
Text:=edit1.text;
Suche:=edit2.text;
b:=Pos(suche,text);
c:=Length(text);
Copy(text, b, c);

while c<3 do begin
Zähler:=Pos(suche,text);
Zähler:=Zähler+1;
end;
Anzahl:=Zähler;
edit3.text:= InToStr(Zähler);

end;

Jumpy 27. Jan 2016 12:17

AW: Frage: Buchstaben/ Wortzähle mit while
 
Zitat:

Zitat von Phillip0405 (Beitrag 1328410)
Delphi-Quellcode:
var
a, text, suche:string
b,c, Zähler, Anzahl:interger;
begin
Zähler:=0;
Text:=edit1.text;
Suche:=edit2.text;
b:=Pos(suche,text);
c:=Length(text);
Copy(text, b, c);

while c<3 do begin
Zähler:=Pos(suche,text);
Zähler:=Zähler+1;
end;
Anzahl:=Zähler;
edit3.text:= InToStr(Zähler);

end;

Was genau willst du bewirken? Dein Code ist konfus/unfertig, z.B.:
- Die while-Schleife: Sie wird entweder nie betreten (Abhängig von der Textlänge) oder wenn Sie denn mal betreten wird, ist sie endlos, weil "c" innerhalb der Schleife nie verändert wird.
- Das Ergebnis der Funktion Copy() die du benutzt muss auch weiter verwendet werden, z.b.: Stringvariable:=Copy(text,b,c)
- Generell: Willst du das vorkommen eines einzigen Zeichens, z.B. "S" innerhalb deines Strings suchen oder einen String innerhalb eines andern Strings?

Zacherl 27. Jan 2016 12:21

AW: Frage: Buchstaben/ Wortzähle mit while
 
Ich glaube so langsam, dass es sich bei Phillip um einen Troll handelt. Dieser Code wird (von der fehlenden Logik her mal abgesehen) nichtmal kompilieren. Bei den Variablen-Deklarationen fehlt hinter String das Semikolon, Umlaute sind ungültig in Variablen-Bezeichnern und der Typ "Interger" wäre mir auch unbekannt :? :roll:


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:07 Uhr.
Seite 1 von 2  1 2   

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