Skip to main content

Alles für die Homepage... Scripte, Templates, Workshops und Support

Perl – Arrayinhalte mischen

Dieser Code beschreibt das zufällige Mischen von Arrayinhalten, als Beispiel dient die Ziehung der Lottozahlen.

Das Script als komplettes Codebeispiel.

Als Mischroutine kommt dabei ein Algorithmus nach Fisher Yates zum Einsatz.

CODE:
#!/usr/bin/perl

# Benutzung:
# Das Script als "lotto.pl" abspeichern
# Im ASCII Modus hochladen
# chmod 755 vergeben und im Browser aufrufen.

#Fehlerausgabe an Browser
use CGI::Carp qw(fatalsToBrowser);
use strict;
print "Content-type: text/html \n\n";

# Lottozahlen
my @lottozahlen = (1..49);

# Erste Mischung...
fisher_yates_shuffle(@lottozahlen);

# Nochmal mischen das ganze
my @zweite_mischung = (@lottozahlen);
fisher_yates_shuffle(@zweite_mischung);

# Zufaellige Startzahl ermitteln fuer das auslesen
# der 7 Lottozahlen aus dem gemischten Array
my @startzahl = (1..40);
my $sz = $startzahl[rand @startzahl];

# Holen der Lottozahlen
my @unsortiert = ();
for (my $i = $sz; $i <= 6+$sz; $i++) {
push(@unsortiert, $zweite_mischung[$i]);
}

print "<b>Ziehung der Lottozahlen: \"6 aus 49\"</b><hr>";

# Sortieren...
my @sortiert = sort {$a <=> $b} @unsortiert;

# Zusatzzahl ermitteln
my $zz = $sortiert[rand @sortiert];

# Lottozahlen ausgeben...
foreach my $lotto (@sortiert) {
if ($lotto ne $zz) {
print "$lotto<br>";
}
}
# Zusatzzahl ausgeben...
print "<b>Zusatzzahl:</b> $zz<br><br><a href=\"lotto.pl\">...nochmal mischen</a>";

# Mischroutine nach Fisher Yates

sub fisher_yates_shuffle {
my $array = shift;
my $i;
for ($i = @$array; - $i;) {
my $j = int rand ($i+1);
next if $i == $j;
@$array[$i,$j] = @$array[$j,$i];
}
} 

Beispielausgabe:

Ziehung der Lottozahlen: „6 aus 49“

2
17
19
21
25
46
Zusatzzahl 5
…nochmal mischen

Weitere Beiträge

Amazon Black Friday Woche startet

amazon black friday woche 2023

Auch in diesem Jahr präsentiert Amazon während der Black Friday Woche wieder erstklassige Schnäppchen in allen Kategorien. Kundinnen und Kunden können sich auf einzigartige Geschenkideen und interessante Angebote für die bevorstehende Weihnachtszeit freuen. Darüber hinaus gibt es eine Vielzahl weiterer Produkte mit attraktiven Preisnachlässen – und das elf Tage lang. Ab Freitag, den 17. November […]

Mit eigenem Buch zum Expertenstatus

buchautor dirk kreuter erfolgreicher autor bestseller

Eigenes Buch. Nutzen Sie diese sensationelle Chance, ihre Reputation zu steigern und Bestsellerautor zu werden. Haben Sie sich auch schon immer gefragt, wie bekannte Größen der Wirtschaft es immer wieder schaffen, Bestseller zu landen? Nun, es gibt kein Geheimrezept für den Erfolg als Autor. Doch eins ist sicher: Sie müssen Ihre Leser begeistern und fesseln […]

Amazon Black-Friday-Woche vom 17. bis 27. November

Amazon

Amazon Black-Friday-Woche. Der Shopping-Monat November beginnt und damit auch die Vorweihnachtszeit. Den Anfang macht der Singles Day Shopping am 11. November. Gefolgt vom Black Friday. Natürlich ist auch Amazon an diesem Tag wieder mit vielen Angeboten am Start. Schnäppchenjäger sollten sich daher die Zeit vom 17. bis 27. November vormerken. Die ersten Angebote sind bereits […]

Empfehlung: Die besten Midjourney Prompts

midjourney prompts

Midjourney Prompts. Künstliche Intelligenz (KI) ist heutzutage ein heiß diskutiertes Thema. Midjourney trägt zweifellos zu diesem Erfolg bei. Es handelt sich um einen benutzerfreundlichen KI-Generator, der hochwertige Bilder mit verschiedenen Motiven erzeugt. Der Zugriff auf Midjourney erfolgt ausschließlich über Textbefehle an einen Discord-Bot. Durch die Verwendung dieser Befehle, auch Prompts genannt, können neue KI-generierte Bilder […]


Ähnliche Beiträge



Keine Kommentare vorhanden


Du hast eine Frage oder eine Meinung zum Artikel? Teile sie mit uns!

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *