AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

zufall generell für eine zahl...

Ein Thema von mosquito · begonnen am 4. Nov 2005 · letzter Beitrag vom 5. Nov 2005
Antwort Antwort
mosquito

Registriert seit: 31. Okt 2005
22 Beiträge
 
#1

zufall generell für eine zahl...

  Alt 4. Nov 2005, 21:59
Hiho Leutz, ich schon wieder
kann mir mal bidde bidde jemand ein code sagen, bei dem ich einer variablen einen zufallswert zuweise, DER IN EINEM BESTIMMTEN BEREICH liegt,
tya ich habs schon mit der hilfe versucht, bin aba noch relativ neu bei Delphi und komm damit noch nicht so klar, also bidde bidde helft mir
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#2

Re: zufall generell für eine zahl...

  Alt 4. Nov 2005, 22:04
Delphi-Referenz durchsuchenRandomRange?

function RandomRange(const AFrom, ATo: Integer): Integer;
Zitat von Die OH:
Unit Math

Beschreibung

RandomRange gibt einen zufälligen Integer-Wert im Bereich von AFrom bis ATo zurück (inklusive). RandomRange funktioniert auch mit negativen Bereichen (wenn AFrom größer als ATo ist).

Um den Zufallszahlengenerator zu initialisieren, müssen Sie vor dem Aufruf von RandomRange die Prozedur Randomize aufrufen oder der Variable RandSeed einen Wert zuweisen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: zufall generell für eine zahl...

  Alt 4. Nov 2005, 22:12
Oder, wenn man es selbst machen will, einfach das:
Delphi-Quellcode:
i:=Random(1000)+1;//eine Zahl von 1 bis Tausen, also beide darin enthalten
i:=Random(1995)+5;//Ergibt eine Zahl von 5 bis 2000
i:=Random(x) Ergibt einen Wert, für den gilt 0<=i<x
i:=Random(x)+y Durch die Addition dahinter sieht das ganze halt so aus:
y<=i<x+y
Benjamin
  Mit Zitat antworten Zitat
Benutzerbild von Grishnak
Grishnak

Registriert seit: 15. Sep 2005
Ort: Neu-Ulm
111 Beiträge
 
RAD-Studio 2009 Arc
 
#4

Re: zufall generell für eine zahl...

  Alt 4. Nov 2005, 22:28
RandomRange(a, b) gibt meines Wissens eine Zufallszahl von a bis b-1 zurück und nicht von a bis b. Die OH ist in diesem Fall falsch! Bitte berichtigt mich, wenn ich mich irre!
Mach' etwas idiotensicher und irgendjemand erfindet einen besseren Idioten!
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#5

Re: zufall generell für eine zahl...

  Alt 4. Nov 2005, 22:35
jup. habe ich auch erst heute erfahren nmüssen.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#6

Re: zufall generell für eine zahl...

  Alt 4. Nov 2005, 22:40
Eigentlich sollte die Hilfe stimmen?

jedenfalls wenn ich mir denCode so ansehe

Delphi-Quellcode:
function RandomRange(const AFrom, ATo: Integer): Integer;
begin
  if AFrom > ATo then
    Result := Random(AFrom - ATo) + ATo
  else
    Result := Random(ATo - AFrom) + AFrom;
end;
fals dein RandomRange falsch ist, dann kannst'e ja das nehmen ^^
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Grishnak
Grishnak

Registriert seit: 15. Sep 2005
Ort: Neu-Ulm
111 Beiträge
 
RAD-Studio 2009 Arc
 
#7

Re: zufall generell für eine zahl...

  Alt 4. Nov 2005, 22:51
Eben wenn ich mir diesen Code anschaue, sehe ich, warum er falsch ist!

Bsp.: AFrom = 2, ATo = 100 --> Random(100-2)+2 = Random(98)+2
Random(98) spuckt aber Zahlen von 0 bis 97 aus!

Richtig wäre wohl:
Delphi-Quellcode:
function RandomRange(const AFrom, ATo: Integer): Integer;
begin
  if AFrom > ATo then
    Result := Random(AFrom - ATo + 1) + ATo
  else
    Result := Random(ATo - AFrom + 1) + AFrom;
end;
Mach' etwas idiotensicher und irgendjemand erfindet einen besseren Idioten!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#8

Re: zufall generell für eine zahl...

  Alt 5. Nov 2005, 00:01
ohh, war mir garnich aufgefallen -.-''
(welch ein Glück, das ich dieses fehlerhafte Teil noch nie selber verwendet hab ^^)

Du kannst dich ja mal an Borland wenden und denen das sagen
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:34 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