AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

repeat-until schleife

Ein Thema von Grubi90 · begonnen am 27. Mär 2008 · letzter Beitrag vom 28. Mär 2008
Antwort Antwort
Seite 2 von 3     12 3      
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: repeat-until schleife

  Alt 27. Mär 2008, 22:46
Zeig mal den Code, den du versucht hast.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#12

Re: repeat-until schleife

  Alt 27. Mär 2008, 22:49
Hi,

da ich Nachhilfe bei mir in der Klasse gebe und wir auch viel mit malen machen, kann ich Dir nur den Tipp geben: Mal es erst auf Papier auf und geh erstmal alles nach und nach im Kopf auf dem Papier durch. Das ist bei den meisten das Problem. Das Umsetzen in Code schaffen sie, aber ohne den theoretischen Bereich, klappt das eben nicht.

Deswegen aufmalen. Mit Koordinaten, wenn es mit Platzhalten noch nicht klappt, nimm absolute, feste Koordinaten und wechsle diese dann nach und nach aus in variable.
  Mit Zitat antworten Zitat
Grubi90

Registriert seit: 14. Mär 2008
Ort: Schwarzbach
9 Beiträge
 
#13

Re: repeat-until schleife

  Alt 27. Mär 2008, 22:54
naja mir ist glaub ich schon klar wie das malen funktionieren soll.
als code hab ich

var
i:integer;

procedure TForm1.Button2Click(Sender: TObject);
begin
i:=1;
repeat
with canvas.Rectangle(0,0,i,i);
until i<5;
end;
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#14

Re: repeat-until schleife

  Alt 27. Mär 2008, 22:59
Warum das with?
Die Abbruchbedingung ist falsch, da i von Anfang an <5 ist. Es fehlt die Inkrementierung der Variable i
Markus Kinzler
  Mit Zitat antworten Zitat
Grubi90

Registriert seit: 14. Mär 2008
Ort: Schwarzbach
9 Beiträge
 
#15

Re: repeat-until schleife

  Alt 27. Mär 2008, 23:03
ich find euer forum eigentlich tiptop bloß teilweise sind für einen leihen wie mich einfach zuviele Fachbegriffe dabei bzw. die beiträge sind zu kurz um sie nach zu voll ziehen.Was ist Inkrementierung der Variable i?
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#16

Re: repeat-until schleife

  Alt 27. Mär 2008, 23:06
Inkrementieren bedeutet Erhöhen (ist eig. kein Fachbegriff, mein Lieber ).

Du kennst doch eine For-Schleife? Dort wird Deine Zählvariable automatisch erhöht, was aber bei einer Repeat-Until-Schleife nicht passiert.

Markus meint z.B. sowas hier:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
i:=1;
repeat
canvas.Rectangle(0,0,i,i); // Hier das With weg.
i := i + 1; // Inkrementieren der Variable
until i < 5;
end;
  Mit Zitat antworten Zitat
WS1976
(Gast)

n/a Beiträge
 
#17

Re: repeat-until schleife

  Alt 28. Mär 2008, 05:13
Hallo,

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
  i:=1;
  repeat
    with canvas.Rectangle(0,0,i,i);
   until i<5;
end;
Du musst i doch verändern damit die Austrittsbedingung jemals erfüllt wird oder?

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
  i:=1;
  repeat
    canvas.Rectangle(0,0,i,i);
    inc(i); // oder i:=i+1 zum Verständnis. Ist aber das Gleiche.
   until i>5; // hier war ein Fehler. Schleife wurde nur einmal durchlaufen.
end;
Nochwas: Auch wenn ich mich damit wieder einmal unbeliebt mache.
Das sind solche absolute Grundlagen, dass ich dir empfehlen würde ein Buch zu kaufen oder in der
Schule (wenns der Lehrer besser kann) besser aufzupassen.

(PS: Wir sind keine Hausaufgabenerledigungsmaschine für faule Schüler )


Grüsse
Rainer
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#18

Re: repeat-until schleife

  Alt 28. Mär 2008, 05:31
Zitat:
Das sind solche absolute Grundlagen,
Deshalb auch nur eine verbale Beschreibung der Fehler meinerseits und keinen Code.
Hier noch der obligatorische Verweis auf die Grundlagentutorials auf Delphi-Treff
Markus Kinzler
  Mit Zitat antworten Zitat
Grubi90

Registriert seit: 14. Mär 2008
Ort: Schwarzbach
9 Beiträge
 
#19

Re: repeat-until schleife

  Alt 28. Mär 2008, 10:14
Cool mein Programm funktioniert schon mal. Ich versteh schon das ihr kein Bock habt für irgendwelche Schüler Hausaufgaben zu machen. Ich hab aber wirklich ewig gesessen und unser Lehrbuch durchgelesen ohne einen guten Hinweis zu erkennen!! Unser Lerhrer ist in der Beziehung ein bisschen seltsam und kann uns bei unseren Problemen meist auch nicht weiter helfen. Ich hab z.b. letztens ein einfaches Programm geschrieben zur Eintrittspreis berechnung(funktionierte einwandfrei) und unser Lehrer wollte darin unbedingt ein Fehler finden hatt das programm extra ne Woche mitgenommen und trotzdem nix gefunden.

nochmal zur schleife zurück, das funktioniert zwar und es entsteht auch ein rechteck aber kann man das auch so programmieren, dass mehrere Rechtecke gezeichnet werden bis die Abbruchbedingung erfüllt ist?
danke!
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.757 Beiträge
 
Delphi 10.4 Sydney
 
#20

Re: repeat-until schleife

  Alt 28. Mär 2008, 10:18
Hallo,

es werden wahrscheinlich mehrere Rechtecke gemalt,
nur sie werden übereinander gemalt.

Du kannst die Position des Rechtecks mit der Laufvariablen i
verschieben.

canvas.Rectangle(0,0,i*2,i*3); Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:45 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