Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Listboxen initialisieren, umkopierne ... (https://www.delphipraxis.net/93979-listboxen-initialisieren-umkopierne.html)

h4nnes_ 14. Jun 2007 07:56


Listboxen initialisieren, umkopierne ...
 
Hallo,

Ich brauche dringenst Hilfe bei meinem Delphi Beispiel!!! Ich bekomme das mit hoher wahrscheinlichkeit morgen zur Matura Informatik!

das Programm sieht folgendermaßen aus:

In eine ListBox sind die Buchstaben von a-z zu initialisieren!
Wie gehe ich das am besten an? FOR-Schleife... ich müsste einen String in einen Char umwandeln... wie fordere ich die ASCII Codes an?

ich weiß normal ist dies kein Forum wo einem alles vorgesagt wird, aber in meinem Fall ist es echt wichtig!!!

DANKE; und MFG, h4nnes!

Bernhard Geyer 14. Jun 2007 08:07

Re: Listboxen initialisieren, umkopierne ...
 
Ganz werden wir es dir nicht lösen, aber Tipps geben. Z.B. für die Schleife könntet du folgendes Konstrukt als Ideenquelle nehmen

Delphi-Quellcode:
var
  c: Char;
  str: String;
begin
  for c := 'a' to 'z' do
  begin
    str := c;
  end;
end;

h4nnes_ 14. Jun 2007 08:13

Re: Listboxen initialisieren, umkopierne ...
 
danke für den tipp, allerdings schreibt er mir nur "z" in das Feld hinein! Brauche ich eine doppelte FOR Schleife?

Bernhard Geyer 14. Jun 2007 08:18

Re: Listboxen initialisieren, umkopierne ...
 
Du mußt natürlich in der Schleife die Einträge in die Listbox eintragen. Mein Beispiel soll Zeigen das man über Char's eine Schleife aufbauen kann und dieses Char einfach einem String zuweisen kann.

h4nnes_ 14. Jun 2007 08:30

Re: Listboxen initialisieren, umkopierne ...
 
okay, danke funktioniert!

Nun muss ich eine Forschleife gestalten in Zweier Schritten:

w/2
w/4
w/6
.
.
.
w/16


wie kann das mit doppelter FOR Schleife gehen dass ich nur 2er schritte verwende? soweit bis jetzt!

Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
var w:real;
var h,i:byte;
var a:real;
begin
 w:=StrToFloat(Edit1.Text);
   for h:=2 to 16 do begin
      for i:=0 to 2 do begin
           h:=h+i;
         end;

      a:= w/h;
      RE1.Lines.Add(FloatToStr(a));

   end;
end;

lg

dr. love 14. Jun 2007 08:35

Re: Listboxen initialisieren, umkopierne ...
 
es bietet sich an eine For-Schleife von 1 bis 16 zu nehmen, mit den eigentlichen Werten aber nur dann zu arbeiten (diese auszugeben?), wenn sie durch 2 ohne Rest teilbar, also gerade sind:

Die Bediingung h mod 2 = 0 im folgenden Quelltextbaustein

Delphi-Quellcode:
for i := 1 to 16 do
begin

  if i mod 2 = 0 then
    ...

end;
muss also erfüllt sein

DP-Maintenance 14. Jun 2007 08:51

DP-Maintenance
 
Dieses Thema wurde von "Phoenix" von "Programmieren allgemein" nach "Object-Pascal / Delphi-Language" verschoben.
Ab nach Delphi...

h4nnes_ 14. Jun 2007 09:04

Re: Listboxen initialisieren, umkopierne ...
 
okay danke!


echt super dass ihr mir geholfen habt!!! thx!

lg h4nnes

DGL-luke 14. Jun 2007 09:58

Re: Listboxen initialisieren, umkopierne ...
 
...sehr viel effektiver (weil halbe schleifenlänge und kein teures(!) mod ) geht es so:

Delphi-Quellcode:
for i := 1 to 8 do
begin
  ShowMessage(inttostr(i*2)); //nur gerade zahlen
end;


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