[GastForen Programmierung/Entwicklung JavaScript Zufallsgenerator

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Zufallsgenerator

Anonym
Beiträge gesamt: 22827

27. Nov 2004, 17:38
Beitrag # 16 von 23
Beitrag ID: #127502
Bewertung:
(2569 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Vielen Dank, das Script mit dem Sätze mischeln hat schonmal geklappt. ^_^
Jetzt muss ich nur noch schauen ob ich meinen ganzen Javascriptcode da ebensogut reinbringe..vielleicht meld ich mich wieder wenns nen Fehler gibt.


als Antwort auf: [#124402]
X

Zufallsgenerator

Larvarin
Beiträge gesamt: 53

28. Nov 2004, 18:36
Beitrag # 17 von 23
Beitrag ID: #127562
Bewertung:
(2569 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Jetzt steh ich vor ner neuen kniffligen Aufgabe:
Ich habe eine Tabelle, mit zwei Spalten. In jeder dieser Spalte sollen Worte stehen, in zufälliger Reihenfolge, aber so, dass die links und die rechts zu einander passen. Also mit unserem Beispiel folgendermassen:

Sagen wir auf der einen Seite steht das Objekt, auf der anderen Seite die Farbe, also z.B.
Nacht | Schwarz
Baum | Gruen
Blume | Gelb
etc.

Dazu mach ich zwei Arrays, eines mit den Objekten, das andere mit den Farben. Aber wie bringe ich die beiden Arrays dazu, dass sie sich auf die genau gleiche Art mischeln? Ich habs schon folgendermassen versucht: (das Array mit den Farben heisst extra. Ich hab alle Zeilen die ich selbst dazugefügt habe mit drei Sternen markiert. Und der einfachheit halber sorgt dieses Script hier nur dafür, dass die beiden Arrays untereinander erscheinen, nicht nebeneinander in einer Tabelle. Aber das Grundprinzip ist dasselbe: ich will dass die Reihenfolge bei beiden gleich ist. Wenn also beim ersten "Nacht" an erster Stelle steht, sollte beim zweiten "schwarz" an erster Stelle stehn, etc.)

var anzahl = text.length;
var i = anzahl;
var temp
***var temp2
while (i--) {
var j = Math.floor(Math.random() * anzahl);
temp = text; text = text[j]; text[j]= temp;
***temp2 = extra; extra = extra[j]; extra[j]= temp2l;
}
for(var i=0;i < anzahl; i++){
document.write(text + '<br>');
}
***for(var i=0;i < anzahl; i++){
***document.write(extra + '<br>');
***}

EDIT: hoppla, sorry, ich habe den Fehler eben bemerkt: ich hatte mich bloss verschrieben, indem ich nämlich "temp21" statt "temp2" hingeschrieben hatte. Tut mir leid. ^_^ Naja, aber vielleicht kann jetzt jemand aus meinem Post schlauer werden. :)


als Antwort auf: [#124402]
(Dieser Beitrag wurde von Larvarin am 28. Nov 2004, 18:40 geändert)

Zufallsgenerator

Larvarin
Beiträge gesamt: 53

16. Dez 2004, 18:16
Beitrag # 18 von 23
Beitrag ID: #131048
Bewertung:
(2569 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Jetzt ist eine neue Schwierigkeit aufgetreten, ich hoffe jemand kann mir helfen:

Wie kann ich die arrayobjekte so durchmischen, dass jeweils zwei zusammenbleiben?
Als Beispiel:
Angenommen das Nomen und die Farbe sind im selben array, und ich moechte Zeile fuer Zeile erst die Farbe und dann das Nomen schreiben. Im Array waeren die zwei die immer zueinander gehoeren nacheinander, also
blau,
Himmel,
gelb,
Sonne,
gruen,
Gras,
schwarz,
Nacht

Gibts da ne Moeglichkeit wie ich die durchmischeln koennte damit "Himmel" immer nach "blau" kommt u.s.w?


als Antwort auf: [#124402]

Zufallsgenerator

oesi50
  
Beiträge gesamt: 2315

16. Dez 2004, 18:28
Beitrag # 19 von 23
Beitrag ID: #131049
Bewertung:
(2569 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
ja, da musst Du die ein zweidimensionales Array anlegen.


var text = new Array();

text[0] = new Array('blau', 'Himmel');
text[1] = new Array('gelb', 'Sonne');

usw.

der Rest geht wie gehabt, allerdings ist jetzt zu beachten, dass

text[0] wiederum ein Array ist.


zb.

zeile = text[0] ergibt

zeile[0] -> blau
zeile[1] -> Himmel



Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)


als Antwort auf: [#124402]

Zufallsgenerator

Larvarin
Beiträge gesamt: 53

16. Dez 2004, 18:52
Beitrag # 20 von 23
Beitrag ID: #131055
Bewertung:
(2569 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hmm, wie schreib ich dann z.B. ein solches einzelnes Objekt auf, also z.B. nur "Himmel?"

document.write(text[0][1]) ?

Was wuerde kommen wenn ich schreiben wuerde "document.write(text[0])"?


Und, wenn ich dieses 2D-Array durchmischen muss, dann sollte glaub ich das gleiche funktionieren wie oben, oder?

var anzahl = text.length;
var i = anzahl;
var temp
while (i--) {
var j = Math.floor(Math.random() * anzahl);
temp = text; text = text[j]; text[j]= temp;
}


als Antwort auf: [#124402]

Zufallsgenerator

oesi50
  
Beiträge gesamt: 2315

16. Dez 2004, 19:36
Beitrag # 21 von 23
Beitrag ID: #131058
Bewertung:
(2554 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
ja

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)


als Antwort auf: [#124402]

Zufallsgenerator

Larvarin
Beiträge gesamt: 53

16. Dez 2004, 19:38
Beitrag # 22 von 23
Beitrag ID: #131059
Bewertung:
(2554 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Nur zur Sicherheit: Bezieht sich das "Ja" auf beide Fragen?
Ich schreib also:
"document.write(text[0][1])"
um ein einzelnes Objekt auszuspucken, und ich mischle das Array folgendermassen durch:

var anzahl = text.length;
var i = anzahl;
var temp
while (i--) {
var j = Math.floor(Math.random() * anzahl);
temp = text; text = text[j]; text[j]= temp;
}

?


als Antwort auf: [#124402]

Zufallsgenerator

oesi50
  
Beiträge gesamt: 2315

16. Dez 2004, 19:44
Beitrag # 23 von 23
Beitrag ID: #131060
Bewertung:
(2554 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
ja und ja

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)


als Antwort auf: [#124402]
(Dieser Beitrag wurde von oesi50 am 16. Dez 2004, 19:44 geändert)
X

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
14.05.2024

Online
Dienstag, 14. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Prozessoptimierung ist ein Teamsport! Keine Software und keine Maschine allein kann Ihnen helfen, die Effizienzpotenziale Ihres Betriebes maximal auszuschöpfen. Von der Auftragsannahme über die Vorstufe und den Druck bis hin zur Weiterverarbeitung – alles muss optimal ineinandergreifen. Apropos Weiterverarbeitung – in vielen Druckbetrieben fristet sie in Sachen Prozessoptimierung immer noch ein Schattendasein. Dabei liegen hier mittlerweile die größten Einsparpotenziale! In einem Webinar von Horizon und Impressed erfahren Sie, wie Sie diese Einsparungen realisieren können. Horizon, bekannt für innovative Lösungen in der Druckweiterverarbeitung, bietet mit iCE LiNK eine Workflowlösung für die Weiterverarbeitung. iCE LiNK überwacht, visualisiert und analysiert Produktionsabläufe und unterstützt bei der Wartung – damit immer alles reibungslos läuft. Den gleichen Anspruch hat der von Impressed entwickelte Impressed Workflow Server – er ist die smarte PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt. Im Webinar zeigen Ihnen die Experten von Horizon und Impressed, wie beide Lösungen im Team die Effizienz und Produktivität Ihres Betriebes steigern können. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Horizon

https://www.impressed.de/schulung.php?c=sDetail&sid=327

Einsparpotenziale in der Weiterverarbeitung
Veranstaltungen
16.05.2024

Online
Donnerstag, 16. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Nein

Organisator: Impressed / Günther Business Solutions

https://www.impressed.de/schulung.php?c=sDetail&sid=326

Und es geht doch: Automatisierung im Großformatdruck!