Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Schleife in Memobox (https://www.delphipraxis.net/173515-schleife-memobox.html)

Schali95 28. Feb 2013 20:12

Schleife in Memobox
 
Servus
ich hab ein kleines Problem , als Hausaufgabe müsssen wir im Informatikunterricht eine for-schleife programmieren.
Jedoch weiß ich nicht wie ich dies machen soll denn die schleife soll folgendes beinhalten:
In einer Memobox sollen alle zahlen immer wieder miteinander addiert werden (Beispiel: 1 1 2 4 8 16 usw.)
also die nächste Zeile der Memobox soll immer das Ergebnis aller zahlen davor beinhalte.

Ich würde mich über antworten freuen :-)

Vielen Dank im voraus

Mit freundlichen Grüßen
Schali95

lbccaleb 28. Feb 2013 20:20

AW: Schleife in Memobox
 
Willkommen in der DP ;)


Also, Mathematik sollte bei dieser Stufe ja wohl kein Problem sein ;)

Also mit einfacher Mathematik und nen kleinen bischen Info Stoff über Schleifen kein Problem:


http://de.wikibooks.org/wiki/Program...cal:_Schleifen

Schali95 28. Feb 2013 20:25

AW: Schleife in Memobox
 
Danke für deine Schnelle Antwort :)
Ich weiß wie die for-schleife funktioniert jedoch weiß ich nicht wie ich alle zahle die vorher waren addiere :/
könntest du oder vllt auch ander DP-nutzer eine code schicken da ich mich da immer besser einfinden kann als bei einer Erklärung von Wikipedia oder so :)

Danke im voraus :)

Sir Rufo 28. Feb 2013 20:33

AW: Schleife in Memobox
 
Kleiner Tipp: Merk dir doch einfach immer das letzte Ergebnis und addiere es mit sich selber ;)

Aviator 28. Feb 2013 20:37

AW: Schleife in Memobox
 
Kann es sein, dass du bei deinem Beispiel eine "1" am Anfang zu viel hast?
Zitat:

1 1 2 4 8 16
Aus dieser Zahlenreihe kann ich nämlich kein System erkennen. Wenn die erste 1 fehlen würde, hieße es, dass du alle Zahlen mit 2 multiplizierst und nicht addierst.

Schali95 28. Feb 2013 20:39

AW: Schleife in Memobox
 
nein die ist da richtig
1+1=2
1+1+2=4
1+1+2+4=8
1+1+2+4+8=16
usw

Aviator 28. Feb 2013 21:06

AW: Schleife in Memobox
 
Gib mal ein konkretes Beispiel, wie das Ergebnis aussehen soll.
Die "Rechenwege" sollen ja denke ich nicht dabei stehen, oder? Und ist es egal, wie es umgesetzt wird oder muss eine Addition erfolgen?

Schali95 28. Feb 2013 21:14

AW: Schleife in Memobox
 
also die ergebnisse sollen in der Memobox einfach untereinander stehen also so
1
1
2
4
usw
und ja es muss addition sein (leider :))

lbccaleb 28. Feb 2013 21:17

AW: Schleife in Memobox
 
Und bis wohinn soll das ganze gehen?

Denn unendlich wäre nen bissel blöd, dann hängt das Programm in einer Endlosschleife bis irgendwann der Speicher voll ist^^

Schali95 28. Feb 2013 21:22

AW: Schleife in Memobox
 
ich sag mal so bis höchstens 1000

Bummi 28. Feb 2013 22:23

AW: Schleife in Memobox
 
Delphi-Quellcode:
Procedure InitMemo(m: TMemo);
var
  i: Integer;
begin
  m.Lines.Clear;
  i := 1;
  m.Lines.Add(IntToStr(i));
  while i <= 4 do
  begin
    m.Lines.Add(IntToStr(i));
    i := i * 2;
  end;
end;

Procedure MemoAddUntil1(m: TMemo; lim: Integer);
var
  i, x: Integer;
begin
  x := 0;
  for i := 0 to m.Lines.Count - 1 do
    x := x + StrToInt(m.Lines[i]);
  if x <= lim then
  begin
    m.Lines.Add(IntToStr(x));
    MemoAddUntil1(m, lim);
  end;
end;

Procedure MemoAddUntil2(m: TMemo; lim: Integer);
var
  i, x: Integer;
begin
  x := 0;
  for i := 0 to m.Lines.Count - 1 do
    x := x + StrToInt(m.Lines[i]);
  while x <= lim do
  begin
    m.Lines.Add(IntToStr(x));
    x := 2 * x;
  end;
end;

procedure TForm2.Button1Click(Sender: TObject);
begin
  InitMemo(Memo1);
  MemoAddUntil1(Memo1, 128);
end;

procedure TForm2.Button2Click(Sender: TObject);
begin
  InitMemo(Memo1);
  MemoAddUntil2(Memo1, 128);
end;

p80286 28. Feb 2013 22:24

AW: Schleife in Memobox
 
Täusche ich mich oder sollte es nicht schon bei 64 Additionen etwas eng werden?

Gruß
K-H

Schali95 1. Mär 2013 13:51

AW: Schleife in Memobox
 
danke für die Antwort doch die memobox sollen das machen wenn ich auf ein button klicken kann ich den code einfach für ein button nutzen?
(sorry das ich so fragen stelle beschäftige mich erst seit ca. 3 Monaten mit delphi :/)

lbccaleb 1. Mär 2013 16:07

AW: Schleife in Memobox
 
Dann solltest du vor deinem Programm, vllt. erstmal mit den Grundlagen anfangen.

http://www.delphi-treff.de/tutorials/grundlagen/


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:13 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