Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Wie beende ich eine For-Schleife Frühzeitig.......

Empfohlene Antworten

Veröffentlicht

...... und lasse sie nachher weiterlaufen.

ich hab nu wieder einmal das Problem im Delphi das ich ein Menü programmieren muß. Es soll als erstes eine auswahl kommen die So aussieht:

write('*************************************');

writeln;

write('* 1: Vorname eingeben *');

writeln;

write('* 2: Nachname eingeben *');

writeln;

write('* 3: Strasse eingeben *');

writeln;

write('* 4: PLZ und Ort eingeben *');

writeln;

write('* 5: Die komplette Adresse eingeben *');

writeln;

write('* 6: Die Adresse ausgeben *');

writeln;

write('* 7: Das Programm beenden *');

writeln;

write('*************************************');

nach Eingabe einer Zahl soll der jeweilige Punkt ausgeführt werden.

kann mir jemand helfen, wenn ich nach der Schleife weiter mache gibt er mir den Punkt aus und beendet dann.

zur Info der Code den Ich bisher geschrieben habe ich weis nicht viel aber wenigstens ein Ansatz


var

a:string;

b:string;

c:string;

d:string;

e:string;

f:string;

g:string;

vorname:string;

nachname:string;

strasse:string;

plz:integer;

i:integer;

zustand:integer;

begin

write('Mit diesem Programm koennen Sie ihre komplette Adresse zusammenstellen. Um zu starten druecken Sie bitte die Eingabetaste');

readln;

for i:=1 to 5

do begin

writeln;

write('Was moechten Sie machen?');

writeln;

writeln;

writeln;

write('*************************************');

writeln;

write('* 1: Vorname eingeben               *');

writeln;

write('* 2: Nachname eingeben              *');

writeln;

write('* 3: Strasse eingeben               *');

writeln;

write('* 4: PLZ und Ort eingeben           *');

writeln;

write('* 5: Die komplette Adresse eingeben *');

writeln;

write('* 6: Die Adresse ausgeben           *');

writeln;

write('* 7: Das Programm beenden           *');

writeln;

write('*************************************');

writeln;

write('Eingabe: ');

read(zustand);

writeln;

end;

if zustand=1

then begin

       write('Bitte Vorname eingeben: ');

       read(vorname);

     end;

if zustand=2

then begin

       write('Bitte Nachname eingeben: ');

       read(nachname);

     end;

readln;

write(vorname);

write(nachname);

readln;

end.

euer Cruzito

Ich kenn mich zwar nicht mit Delphi so aus, aber mach doch lieber eine Repeat Until Schleife mit einer Zählervariable bis 5 und die Switch Case Anweisung innerhalb der Schleife. Ich denke doch mal das das besser ist oder geht sowas in Delphi nicht?

Ich hab keine Ahnung hab bisher nur die For-Schleife durchgenommen. Wenn ich mit der For-Schleife diese Aufgabe gelöst habe dann soll ich das ganze noch mit einer Repeat-Anweisung und einer While-Schleife machen

euer Cruzito

hmmmmm das funzt nicht ich weis ja nich mal wo das teil hingehört.

Son Sch***** mein Problem ist nur das wenn ich die Zahl eingebe das dann das ganze 5x wiederholt wird ich komme gar nicht dazu einen Vornamen einzugeben

euer Cruzito

Hy Erdbeere,

also das mit dem readln hat geklappt ich kann dann den vornamen eingeben aber wenn ich dann enter drücken wiederholt er das teil trotzdem sooft ich es oben in der schleife angebe. Hast du vielleicht noch ne lösung?

euer Cruzito

Hi

Warum setzt Du nicht einfach, nachdem Du den Namen eingegeben hast, den Zähler auf 5 ?

Dann ist doch die Abbruchbedingung für die Schleife erreicht.

Erbeere, der sowas bestimmt nicht auf eine solche Art lösen würde smile.gif

hmmmm wie meinst du das danach den Zähler auf 5 setzen???

ich check das irgendwie nich

euer Cruzito

Hy Erdbeere,

ich hab nun einen Punkt hinzugefügt und zwar den punkt sieben Programm beenden da er die Schlefe sooft wiederholen soll bis sieben gedrückt wird.

wenn ich nun dort hineinschreibe das wenn sieben gedrückt wird er die Schleifenvariable i auf 1000 setzen soll dann kommt diese Fehlermeldung

[Fehler] Uebung10.dpr(62): Anweisung für FOR-Schleifenvariablen 'i'

weist du wie ich das Programm beenden kann in der Hilfe stand auch nix brauchbares

euer Cruzito

*freu*

danke an alle die mir geholfen haben. Die Aufgabe ist gelöst.

Falls meinem Ausbilder noch mehr gemenheiten einfallen sollten melde ich mich nochmal

euer Cruzito

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">Zitat:</font><HR>Original erstellt von Cruz Candalaria:

hmmmmm das funzt nicht ich weis ja nich mal wo das teil hingehört.

Son Sch***** mein Problem ist nur das wenn ich die Zahl eingebe das dann das ganze 5x wiederholt wird ich komme gar nicht dazu einen Vornamen einzugeben

@ Gruz

1. Meines Erachtens ist der Quellcode, reinstes PASCAL und nicht Delphi. (Kann sein das ich mich irre???)

2. Warum pakst Du Dein Menü nicht einfach in eine Prozedur? Hätte den Vorteil, daß Dein Code übersichtlicher wäre.

MFG LoneGunman

P.S. Nimm es nicht persönlich, aber der Quellcode ist grausam anzusehen.

Hmmm, da Delphi ja der Nachfolger von Pascal ist es schon möglich das grundlagen-code nicht geändert wurde.

Ich kann mich zwar noch ziemlich genau an meine "Pascal-Zeit" in der Schule erinnern, aber ich habe um ehrlich zu sein noch nicht eine Zeile Delphi gesehen ... *schäm*.

Ich kenn DELPHI, ich kenn PASCAL. Das ist PASCAL.

Hy Leutz,

sorry das ich mich erst jetzt melde hatte Urlaub biggrin.gif

Ich hab nun seit ungefähr 5 Wochen Delphi. Da ich in Zwei Betrieben ausgebildet werde, ist das ganze nicht so einfach. Da Ich be mir im Betrieb niemanden fragen kann und auch keine Lust habe wegen jeder Aufgabe zwei Stöcke tiefer zu rennen und nachzufragen, hol ich mir die Infos lieber aus dem Internet.

Da wir bisher nunmal nur diese Befehle gelernt haben kann ich keine anderen anwenden mit denen es vielleicht schneller gehen würde.

euer Cruzito

Hi Cruz

eine Frage, arbeitest Du unter Delphi, oder PASCAL? Der write-Befehl unter Delphi hat eine Funktion, als noch unter PASCAL.

Und frag mal jemandem, ob er Dir nicht mal das mit den Proceduren und Funktionen beibringen könnte. Es ist echt hilfreich und eigentlich nicht schwer. Also nerv die Leute ruhig. Deine Ausbilder sind schließlich dazu da.

MFG LoneGunman

Hi Cruz,

Wie lange lernst du den Beruf eigentlich schon? Bestimmt seit mind. einem halben Jahr und da hast du noch nix von Proceduren oder Funktionen gehört? Ich glaube da solltest du in deinem Betrieb mal schnell nachfagen.

Wenn die nicht reagieren, würde ich mal in einer Volkshochschule in deiner nähe nachfragen, ob die Programmierkurse anbieten, da lernst du das mit Sicherheit und das ist auch nicht so teuer für einen Azubi...

Aber es erschrickt mich, zu hören, daß einige Betriebe noch so schlecht ausbilden. Mit Proceduren läßt sich ein Menü super machen, und vor allem, du kannst es dir in jedes Programm kopieren, und brauchst nur noch den Text ändern.

viel Glück

Chipsy

Hy,

wie schon gesagt ich mach nun seit 5 wochen delphi und ich werde in zwei betrieben ausgebildet sprich in zwei firmen. Nur meine Firma hat nix mit delphi zu tun und so muss ich immer in die andere zum fragen und da hab ich auch kein bock dazu. So versuch ich mir miene infos aus dem i-net zu holen, da mir später auch nicht jeder sagen kann wie ich meine aufgaben zu lösen habe. Proceduren und funktionen werden denke ich mal noch auf mich zu kommen. Ich warte jetzt mal ab um zu sehen was passiert.

euer Cruzito

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.