Delphi-PRAXiS

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 08: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 09: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 09:20

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

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

?

Jumpy 27. Jan 2016 09: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 10:26

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

Phillip0405 27. Jan 2016 10: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 10: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 11: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 11: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 11: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:

p80286 27. Jan 2016 12:47

AW: Frage: Buchstaben/ Wortzähle mit while
 
Nehmen wir zu seinen Gunsten an, daß er ein Schlunzmichel ist.
Mal schauen was da noch kommt.

Gruß
K-H

Phillip0405 27. Jan 2016 12:47

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

Zitat von Jumpy (Beitrag 1328412)

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?

1.) Wie mache ich es anders mit dem "c"?
2.) Wo / wie muss das Ergebnis von "copy()" machen?
3.) Ich möchte, dass man in dem edit1 Feld einzelne Buchstaben und ganze Wörter suchen (was man suchen möchte soll in edit2 stehen) und zählen lassen, was dann als Zahl in edit3 angezeigt wird.

Danke.

Phillip0405 27. Jan 2016 13:00

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

Zitat von Zacherl (Beitrag 1328413)
Dieser Code wird (von der fehlenden Logik her mal abgesehen) nichtmal kompilieren. :roll:

Kompilieren tut er schon...

Zacherl 27. Jan 2016 14:45

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

Zitat von Phillip0405 (Beitrag 1328445)
Zitat:

Zitat von Zacherl (Beitrag 1328413)
Dieser Code wird (von der fehlenden Logik her mal abgesehen) nichtmal kompilieren. :roll:

Kompilieren tut er schon...

Dieser von dir gepostete Code kompiliert nie im Leben :?
Zitat:

Zitat von Phillip0405 (Beitrag 1328410)
Delphi-Quellcode:
var
a, text, suche:string
b,c, Zähler, Anzahl:interger;

Alleine in den ersten Zeilen befinden sich bereits 3 Syntax/Tipp-Fehler.

Ich weiß nicht, ob du dieses Projekt aus privatem Interesse verfolgst, oder ob es eine Schulaufgabe ist, aber in jedem Falle fehlen dir so ziemlich alle essentiellen Grundlagen. Und bevor du dir diese nicht angeeignet hast, macht es für mich keinen Sinn hier weitere Hilfestellung zu geben.

vagtler 27. Jan 2016 14:54

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

Zitat von Zacherl (Beitrag 1328462)
[...] Alleine in den ersten Zeilen befinden sich bereits 3 Syntax/Tipp-Fehler. [...]

Welcher ist denn der 3.?

Amateurprofi 27. Jan 2016 17:01

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

Zitat von Zacherl (Beitrag 1328413)
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:

Zu "Umlaute sind ungültig in Variablen-Bezeichnern"
Dann hast du eine Sonderausgabe von XE 3.
Bei mir (XE 2) wird z.B.
Delphi-Quellcode:
var ÄÖÜäöüß:String;
begin
   ÄÖÜäöüß:='ÄÖÜäöüß ist ein Variablenname der Umlaute enthält';
   ShowMessage(ÄÖÜäöüß);
end;
kompiliert und ausgeführt.

Zu "und der Typ "Interger" wäre mir auch unbekannt"
Vielleicht hat er weiter oben stehen
Delphi-Quellcode:
type Interger=Integer;
und hat nur vergessen das zu posten.

Ich denke es hilft ihm nicht weiter, wenn er mit Ausdrücken wie "Troll" belegt wird.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:47 Uhr.

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