![]() |
ENGLISH VERSION |
|
![]() |
Links | | | Forum | | | Kommentare | | | News melden |
![]() |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
![]() |
amiga-news.de Forum > Amiga, AmigaOS 4 > random funktion in scala | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
-1- | [ - Beitrag schreiben - ] |
18.11.2004, 12:32 Uhr wawa Posts: 314 Nutzer |
auf mal wieder: weiss jemand wie syntax für random funktion in mm400 aussieht? in handbuch ist nur ein beispiel anhand von tutorial, attribute werden aber nicht beschrieben. [ - Antworten - Zitieren - Direktlink - ] |
18.11.2004, 21:25 Uhr Lippi Posts: 1247 Nutzer |
Ich habe es gerade mal probiert, und nicht hingekriegt. Kommt immer die gleiche Zahl raus, bzw abhängig von dem Klammerwert. Dann habe ich das in Arexx probiert, ist auch so ! Würde mich auch interessieren, wie man eine (immer unterschiedliche) Zufallszahl rausbekommt. -- mfg -lippi- Mario Lippert Infokanal-tv.de infokanal@t-online.de [ - Antworten - Zitieren - Direktlink - ] |
18.11.2004, 21:36 Uhr wawa Posts: 314 Nutzer |
eben! ist warscheinlich falsch gepostet. versuche mal bei den programierern. [ - Antworten - Zitieren - Direktlink - ] |
19.11.2004, 01:45 Uhr Palgucker Posts: 1342 Nutzer |
@ Lippi quote: Dann habe ich das in Arexx probiert, ist auch so ! Würde mich auch interessieren, wie man eine (immer unterschiedliche) Zufallszahl rausbekommt. Eine Möglichkeit unter Arexx wäre: say randu(time(S)) mfg Palgucker [ - Antworten - Zitieren - Direktlink - ] |
19.11.2004, 01:54 Uhr cgutjahr Posts: 2782 [Administrator] |
Ich habe hier das Handbuch von der Nightshifts-CD-Version. Um einen zufälligen Wert zwischen 1 und 9 zu ermitteln, wird folgende Syntax vorgeschlagen: RANDOM (1,9,TIME('S')) Hilft euch das irgendwie weiter? -- Gutjahrs ![]() [ - Antworten - Zitieren - Direktlink - ] |
19.11.2004, 10:51 Uhr wawa Posts: 314 Nutzer |
das ist das handbuch-beispiel das ich meinte. offensichtlich entspricht es der arexx funktion. ex nimmt tatsächlich einen pseudizufälligen wert bei jeder script execution, der sich aber während dessen ablaufs nicht mehr zu ändern scheint. vielleicht muss man die variable "S" irgendwie beim start definieren oder resetten oder gott weis was. [ - Antworten - Zitieren - Direktlink - ] |
19.11.2004, 11:05 Uhr thomas Posts: 7717 Nutzer |
Wenn es doch die gleiche Funktion wie bei ARexx ist, warum lest ihr nicht einfach die Beschreibung im ARexx-Handbuch ? RANDOM(x,y) liefert eine Zufallszahl zwischen x und y. Natürlich kommt dabei immer eine neue raus. Allerdings wird der Generator am Anfang des Programms immer mit dem selben Wert initialisiert, d.h. die erste Zahl des Programms ist immer die selbe und die Folge dürfte auch immer die selbe sein. RANDOM(x,y,z) initialisiert den Generator mit z und gibt dann eine Zufallszahl zwischen x und y. Hier kommt natürlich für das gleiche z immer die gleiche Zahl raus. 'S' ist keine Variable, sondern ein String mit dem S als inhalt. TIME('S') gibt die Anzahl Sekunden seit Mitternacht zurück. Sinnvollerweise wird man zuerst einmal RANDOM(x,y,z) aufrufen und danach immer nur noch RANDOM(x,y). z muß dabei eine "echte" Zufallszahl sein. Die aktuelle Uhrzeit ist in den meisten Fällen ausreichend, sofern sie genau genug ist. Mit Sekunden als Einheit finde ich das hingegen überhaupt nicht zufällig. Es sollten schon Zehntel oder Hundertstel dabei sein. Gruß Thomas -- Email: thomas-rapp@web.de Home: home.t-online.de/home/thomas-rapp/ [ - Antworten - Zitieren - Direktlink - ] |
19.11.2004, 12:35 Uhr wawa Posts: 314 Nutzer |
ich habs glaube ich! da die ganzen uhr batterien in meinen amigas sicher leer sind, läuft system uhr nicht alo ändet sich TIME'S' wert auch nie. musste ich überprüfen. deshalb ist das ergebnis während des scriptablaufes immer das gleiche, jedesmal wenn die wieder funktion abgerufen wird! nur was ist mit uae auf meinem sony notebook? ausgelaufenes aku? [ - Antworten - Zitieren - Direktlink - ] |
19.11.2004, 20:29 Uhr Palgucker Posts: 1342 Nutzer |
@ Thomas Mit Sekunden als Einheit finde ich das hingegen überhaupt nicht zufällig. Es sollten schon Zehntel oder Hundertstel dabei sein. Zum üben sollten die 86400 Möglichkeiten erst einmal reichen. Wenn man mehrere Zufallszahlen innerhalb kurzer Zeit braucht, hast Du natürlich recht. Unter Arexx ist das ganze aber eigendlich nicht wirklich ein Problem. Es ginge auch so: RND = random(1,9,c2d(import('00dff006'x,2))) Allerdings bezweifle ich ein bischen, das man auch mit der Scriptsprache von Scala Hardwareadressen auslesen kann. Wenn doch, könnte es ja eine Lösung sein. mfg Palgucker [ - Antworten - Zitieren - Direktlink - ] |
23.11.2004, 03:31 Uhr wawa Posts: 314 Nutzer |
ha! guter tip! habe die zufallfunktion tatsächlich über arex abgewickelt als execute von scala scrypt, übrigens scala scrypt (lingo) kann sich dieser rezeptur genauso gut nativ bedienen. so sind alle parameter der präsentation auf zufall gestellt. läuft grandios!!! danke, palgucker, mann! [ - Antworten - Zitieren - Direktlink - ] |
-1- | [ - Beitrag schreiben - ] |
amiga-news.de Forum > Amiga, AmigaOS 4 > random funktion in scala | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
![]() |
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |
![]() |