Autor Beitrag
David Armstrong
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19

Win XP
Delphi 7
BeitragVerfasst: Di 22.11.05 18:07 
wir haben letztens eine for anwendung gemacht bei der man eine zahl angibt und so viele zeilen wird x angzeigt und
also wenn man jetzt 5 schreiben würde,dann:
x
x
x
x
x

außerdem dann noch

xxxxx

und jetz sollen wir daraus eine pyramide machen und das eben umgekehrt das man halt mit einem x anfängt,dann 2....
xxxxxxxxxxxxxxxx
xxxxxxxxxxxxx
xxxxxxxxxxx
xxxxxxxx
xxxxxx
xxxx
xx
wie funktioniert das?? blick da überhapt nich durch
Chryzler
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1097
Erhaltene Danke: 2



BeitragVerfasst: Di 22.11.05 18:11 
das ist nicht so schwierig:
1. Du musst für n mal X eine for anweisung benutzen (ist ja klar)
2. Du musst n jedesmal um 1 erhöhen (also wieder eine for-Anweisung)
Denk mal drüber nach, wenn du gar nicht weiter weisst, dann helfen wir dir weiter.
David Armstrong Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19

Win XP
Delphi 7
BeitragVerfasst: Di 22.11.05 20:35 
könntest du vielleicht n quelltextanhang machen wo das drin steht? es reicht nur die quelltext für die schleife,den rest hab ich ja
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Di 22.11.05 21:14 
Du must halt die for-Schleifen schachteln, etwa so

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
  for p := 1 to 5 do
   begin
     for q := 1 to 6-p do *Sternchen befüllen*
     *sterne ausgeben*
   end;
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Di 22.11.05 21:15 
Du must halt die for-Schleifen schachteln, etwa so

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
begin
  for p := 1 to 5 do
   begin
     for q := 1 to 6-p do *Sternchen befüllen*
     *sterne ausgeben*
   end;
end;
David Armstrong Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19

Win XP
Delphi 7
BeitragVerfasst: Mi 23.11.05 20:58 
und was macht man wenn man einzelne x löschen will?
also wir sollen da n tannenbaum erstellen
Danke
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Mi 23.11.05 23:06 
Noch leichter:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
  for p := 1 to 5 do
   begin
     for q := 1 to p do *Sternchen befüllen*
     *sterne ausgeben*
   end;

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
David Armstrong Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19

Win XP
Delphi 7
BeitragVerfasst: So 27.11.05 20:04 
hi,also das mit dem tannenbaum hab ich jetzt hingekriegt,aber aus irgend einem grund kommt beim starten die meldung das z möglicherweise undefiniert ist und somit kann man das projekt nicht ausführen,weiß jemand rat?
Einloggen, um Attachments anzusehen!
Amateur
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 777

(Win98, WinMe) WinXP Prof
D3 Prof, D6 Pers, D2k5 Pers., Turbo C++ Explorer
BeitragVerfasst: So 27.11.05 20:17 
nur mal so wieso keine downto schleife... wäre einfacher durchzusehen... dafür gibts das ding ja...
und wegen deinem z problem wäre nen bisschen code nicht schlecht... meine kristallkugel ist grad nicht da...

edit ok aber posten würde auch reichen... ich glaub nicht dass jeder den code erstmal laden will...

_________________
"Kein dummes Gerede. Kein Rumrätseln. Denkt an nichts anderes mehr, nur noch an das, was vor euch liegt. Das ist die wahre Herausforderung. Ihr müßt euch vor euch selbst schützen, Leute." (Rennes in "Cube")
Beiträge: >700
Da_Knuddelbaer
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 485



BeitragVerfasst: So 27.11.05 20:26 
Sorry, aber zwischen deinem Quellcode und dem Tannenbaum-Programm sehe ich keine einzige Verbindung...
was soll denn dieser Code???

Ich habe den runtergeladen und mal ein wenig formatiert und kommentiert, damit man da mal deutlich sieht, was da Sache ist (nämlich nix):

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
// ** BUTTON 1 **
procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.clear;
  Memo1.lines.add('');
end;

// Irgendwelche Variablen, die du dann hier einfach mal deklarierst (soweit okay)...
var z,i,n: Integer;
    zeile :string;
begin
  // Hier fügst du n Leerzeichen in "zeile" ein
  for z:=1  to n do
    zeile:= ' ';

  // und hier machst du eigentlich gar nichts, zumal z hier nichts mehr mit der For-Schleife zu tun hat!
  // Du hängst auch jedes Mal NICHTS an "zeile" an...
  for i:=1 to 3+n-z do
    zeile:=zeile+'';

  // Und hier ausnahmsweise (2*z) - 1 viele Sternchen...
  for i:=1 to 2*z-1 do
    zeile:=zeile+'*';
end;

// Und was soll er dann hier? Mitten in der Pampa mit einer Funktion ohne Namen und nem Code, wo er eigentlich nichts
// macht als zeile zu leeren und ne sinnlose Schleife zu durchlaufen???
begin
  zeile:='';
  for i:=1 to 3+n-z do
    zeile:=zeile+'';
end;

// Und hier deklarierst du die GLEICHEN Variablen nochmal? Das geht net... jede Variable kann nur
// einmal deklariert werden.
var z,i,n: Integer;
    zeile :string;
begin
  // Was soll das "chr(219+chr+219)" denn sein? chr müsste ne Zahl sein, wird bei dir aber nirgends deklariert noch
  // initialisiert.
  zeile:=zeile+chr(219+chr+219);
end;

// und ein drittes mal ein Block ohne Zusammenhang mitten in der Pampa, der noch nicht mal ein
// "end;" ausweisen kann.
begin
  // und diese For-Schleife tut nichts... oder soll sie die Prozedur Button2Click aufrufen?!?!
  for z:=1 to n div 5 do

procedure TForm1.Button2Click(Sender: TObject);
begin
  // Hier fehlt ein Semikolon.
  close
end;

end.


Also dass dieses Programm nur wegen einer nicht initialisierten Variable startet, glaube ich dir nicht. Zumal das nur eine Warnung vom Compiler ist und das Programm dennoch starten würde.

Das Programm kannst du nicht starten, weil da zig Fehler drin sind, zumal einfach nichts passieren würde, selbst wenn es laufen würde und du auf Button1 klicken würdest. Button1 leert nämlich nur das Memo und fügt eine leere Zeile ein.

Ich denke, du brauchst mal einen richtigen Crash-Kurs für Delphi.

Greetz,
Knuddelbaer
Amateur
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 777

(Win98, WinMe) WinXP Prof
D3 Prof, D6 Pers, D2k5 Pers., Turbo C++ Explorer
BeitragVerfasst: So 27.11.05 20:58 
jetzt wo ich das seh kann ich nur eins sagen:
Crashkurs Delphi
und
Delphi Source

Bitte mal ansehen.
Danke...

_________________
"Kein dummes Gerede. Kein Rumrätseln. Denkt an nichts anderes mehr, nur noch an das, was vor euch liegt. Das ist die wahre Herausforderung. Ihr müßt euch vor euch selbst schützen, Leute." (Rennes in "Cube")
Beiträge: >700
David Armstrong Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19

Win XP
Delphi 7
BeitragVerfasst: Mi 30.11.05 18:46 
sorry das ich hier so n misst gepostet hab...ich hab das programm aus nem struktogramm(oder wie man das schreibt) erstellt,das mein informatik lehrer gemacht hat,kann sein das er da n fehler gemacht hat,keine ahnung
achja,danke wegen dem delphi crash-kurs link,danach bin ich schon lange auf der suche gewesen