Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Pascalsches Dreieck o0 (https://www.delphipraxis.net/175053-pascalsches-dreieck-o0.html)

AneLSD 27. Mai 2013 22:13

AW: Pascalsches Dreieck o0
 
Es tut mir Leid, du erklärst wirklich sehr professionell und ausfühlich, allerdings bin ich das absolute Gegenteil eines Schnelllerners ;)

for i := 0 to exponent do
Memo1.Lines.Add('Mein Wert ist gerade '+IntToStr(i)); // Das habe ich Versatnden, der aktuelle Wert ist also immer der Exponent aber was ist dann mit #Mein Wert ist gerade ' gemeint? Klar, der aktuelle Wert - aber was soll ich hier einsetzen?

Memo1.Lines.Add('Diese Zeile fühlt sich hier wohl'); // Das ist doch nur ein 'Lückenfüller' oder? :)
end;
Memo1.Lines.Add // gibt dann ja einfach die letzte Zeile an :)

Der schöne Günther 27. Mai 2013 22:22

AW: Pascalsches Dreieck o0
 
Ja, das "Mein Wert ist gerade" war unglücklich formuliert. Es hätte besser "Die schleifenvariable i entspricht gerade:" oder ähnlich heißen sollen.

Wie gesagt, im Endeffekt hattest du eigentlich schon alles. Die einzige Herausforderung, vor der wir momentan stehen, ist in der for-Schleife nicht eine Sache (die Variable "zeile" setzen), sondern zwei Sachen zu tun: Die Variable "zeile" setzen und die Variable "zeile" dann ins Memo schreiben.

In Delphi ist es (glaube ich) nicht sonderlich populär, aber in anderen Sprachen nennt zusammen gruppierte, aufeinanderfolgende (sehr salopp umschrieben :?) "einen Block". Wie weiter oben: Die For-Schleife hat zwei Bestandteile:
  • Die Definition deiner Zahlenreihe
  • Den Codeblock, der FÜR JEDE Zahl deiner Zahlenreihe ausgeführt werden soll

In unserem Fall ist der ganze Codeblock unsere Zwei Anweisungen: Variable "zeile" setzen und die Variable "zeile" in unserer Memo ausgeben.


Du hast anscheinend privat keine Delphi-Installation und kannst nicht mal etwas ausprobieren? Gerade das ist eigentlich, was an der Informatik Spaß macht: (Zumindest meistens) kann man herumprobieren wie man lustig ist, ohne etwas kaputt zu machen...

PS: Bitte packe Delphi-Quellcode hier im Forum immer in (delphi)(/delphi)-Tags (mit eckigen Klammern), somit kann man das besser lesen.

AneLSD 27. Mai 2013 22:33

AW: Pascalsches Dreieck o0
 
Delphi-Quellcode:
begin
  for i:=0 to exponent do
                         Memo1.Lines.Add('Mein Wert ist gerade '+IntToStr(i));
                         Memo1.Lines.Add (zeile(i))

So etwa?

Ich besitze Delphi 6 - leider kann ich keine Anwendungen starten, da dich mein liebes Programm dann immer aufhängt :)

Der schöne Günther 27. Mai 2013 22:36

AW: Pascalsches Dreieck o0
 
Nein, nicht ganz. Bislang hatten wir für jeden Zahlenwert zwischen 0 bis "exponent" die Zuweisung der Variable Zahl. Das war schon ganz gut so. Jetzt wollen wir nach jeder Zuweisung das in die Memo schreiben. Weiterhin für jeden Zahlenwert. Und das beides muss direkt zwischen das begin und end:

Delphi-Quellcode:
for i:=0 to exponent do BEGIN

   zeile:=zeile+inttostr(pas(exponent,i))+' ';
   Memo1.Lines.Add(zeile);

END;
Dinge wie Einrückungen sind im Endeffekt nur Geschmackssache für das menschliche Auge, dem Computer ist das (in Delphi) relativ egal, für ihn zählt nur das begin und end. Aber so sieht man als Mensch auf einen Blick, dass sich diese zwei Anweisungen immer wiederholen und zusammengehören.


Zitat:

leider kann ich keine Anwendungen starten, da dich mein liebes Programm dann immer aufhängt
Das ist als würde man sagen "Ich habe zwar einen Stift, aber der kann nicht schreiben weil da vorne kommt irgendwie nichts raus. Aber immerhin habe ich einen Stift..." - Das sollten wir bei Gelegenheit auch einmal in Angriff nehmen, das bringt ja so nichts...


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:11 Uhr.
Seite 2 von 2     12   

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