Autor Beitrag
ARUS
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Do 25.01.07 17:04 
Moin,
wir fangen in Info gerade mit Delphi an. Nun sollen wir eine Zufallszahl generieren lassen.
Ich schmeiß Google an, da gibts auch gleich genug brauchbares... ne nicht wirklich: fast jeder Code wirft in Delphi rote Felder, Fehler und sonstwas auf.

Könnt ihr mir einen Code posten, der Zufallszahlen von 1-100 generiert UND auch anzeigen lässt. Mach ich das via Label? Was muss ich dem Label denn sagen, dass er eine Zufallszahl anzeigen soll?
mfg
ARUS :)


Moderiert von user profile iconjasocul: Topic aus VCL (Visual Component Library) verschoben am Do 25.01.2007 um 16:10
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Do 25.01.07 17:12 
Google is dafür nich wirklich gut, nimm lieber mal die Forensuche: Suche in: Delphi-Forum, Delphi-Library RANDOM

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
Robinator
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 275

WinXP
BDS 2006
BeitragVerfasst: Do 25.01.07 17:14 
Hallo

Hier gehts nicht darum, dass dir jemand den fertigen code vorwirft, sondern darum zu helfen.
Ich werfe dir einfach mal zwei Schlüsselwörter zu, mit denen du dann eigentlich den Rest hinbekommen solltest.
Randomize; Random();

Gruss, rob
Zyklame
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 41
Erhaltene Danke: 1

Win 7 Professional
Delphi XE, Visual Studio 2010
BeitragVerfasst: Do 25.01.07 17:14 
Du verwendest zum generieren von Zufallszahlen am besten random(Zahl)
das gibt eine Ganzzahl (Integer) zwischen 0 und der angegebenen Zahl -1

in deinem fall also:
ausblenden Delphi-Quelltext
1:
random(100) + 1					


um es anzuzeigen wandelst du es dann mit IntToStr in einen string um und weisst es einem Label oder einer Editkomponente zu

zum Initialisieren von random wird randomize benutzt (am besten nur einmal nach Programmstart)

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
...
var
  Zahl : Integer;
begin
  randomize; // hier eigentlich unguenstig

  Zahl := random(100)+1;
  Label1.Caption := IntToStr(Zahl);
  Edit1.Text := IntToStr(Zahl);
end;


Zuletzt bearbeitet von Zyklame am Do 25.01.07 17:41, insgesamt 1-mal bearbeitet
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Do 25.01.07 17:16 
:welcome: in der Entwickler-Ecke

Fertigen Code wirst Du hier in aller Regel nicht bekommen. Insbesondere nicht, wenn es für die Schule/Hausaufgaben ist. Da bekommen die meisten im Forum nämlich fürchterlichen Ausschlag von :wink:

Du benötigst zum Initialisieren des Zufalssgenerators den Befehl Randomize. Den musst Du nur einmal im Programm aufrufen. Da bietet sich der Programmstart an (z.B. im Form.Create).
Um einzelne Zufallszahlen zu generieren, benötigst Du den Befehl Random. Den solltest Du einfach mal in der Delphi-Hilfe nachschlagen. Ich meine, dass dort sogar ein Beispiel existiert.

Ausgeben kannst Du das Ergebnis durchaus in einem Label. Du musst allerdings beachten, dass ein Lebal nur Strings aufnehmen kann und eine Zufallszahl ist eben kein String. Die muss erst umgewandelt werden. Dafür gibt es entsprechende Befehle (z.B. FloatToStr -> siehe Delphi-Hilfe).

Ich hoffe, die Informationen genügen, damit Du erstmal anfangen kannst.
ARUS Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Do 25.01.07 17:19 
wow das geht ja ratzfatz hier.
Also ich hab den Code mal reinkopiert, da spuckt Delphi aber auch wieder zig "Deklarationfehler" aus:
files.lueling.info/Schulkram/image129.jpg
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Do 25.01.07 17:22 
Dann arbeite die Fehlermeldungen doch einfach ab. "Semikolen erwartet..." Was kann da wohl gemeint sein? Ein bisschen mehr Eigeninitiative bitte. :wink:
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Do 25.01.07 17:22 
Du kannst den Code nich einfach in ne neue Unit schreiben, sondern du musst das schon in deinen bestehenden Code einbauen.

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Do 25.01.07 17:25 
Und ein Label auf die Form legen und das Edit-Feld nicht vergessen.

Hier mal ein ein Einführungskurs in Delphi:
www.christian-stelzm...rials-crashkurs.html
rockminstrel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 38

Win XP Prof.
Delphi 5 Prof., Delphi 2005 pers., Turbo Delphi 2006 Exp.
BeitragVerfasst: Do 25.01.07 17:32 
Hallo,
das kann man ja nicht mit anschauen :hair:
bau in dein Formular ein Edit ein (wo kein Edit1, da kann er auch keins finden), selbes gilt vermutlich für Label1. Weiterhin musst du Befehle immer mit einem Semikolon abschließen ( ; ). Du solltest dich aber erst mal mit den Delphigrundlagen vertraut (z.B. hier www.christian-stelzm...rials_crashkurs.html) machen, damit du sowas in Zukunft selbst machen kannst. :mahn: