summaryrefslogtreecommitdiffstats
path: root/Aufgabe4/buchstabenraetzel.pl
diff options
context:
space:
mode:
Diffstat (limited to 'Aufgabe4/buchstabenraetzel.pl')
-rw-r--r--Aufgabe4/buchstabenraetzel.pl99
1 files changed, 99 insertions, 0 deletions
diff --git a/Aufgabe4/buchstabenraetzel.pl b/Aufgabe4/buchstabenraetzel.pl
new file mode 100644
index 0000000..a32100a
--- /dev/null
+++ b/Aufgabe4/buchstabenraetzel.pl
@@ -0,0 +1,99 @@
+#!/usr/bin/env perl
+#===============================================================================
+#
+# FILE: buchstabenraetzel.pl
+#
+# USAGE: ./buchstabenraetzel.pl
+#
+# DESCRIPTION: Erstellt ein Buchstabenrätzel zu einenem lösungswort
+#
+# OPTIONS: ---
+# REQUIREMENTS: ---
+# BUGS: ---
+# NOTES: ---
+# AUTHOR: Martin Talarczyk (MT), martin@talarczyk.de
+# ORGANIZATION: Fachhochschule Südwestfalen, Iserlohn
+# VERSION: 1.0
+# CREATED: 05.11.2015 10:10:27
+# REVISION: ---
+#===============================================================================
+
+use strict;
+use warnings;
+use utf8;
+
+
+binmode (STDIN, ":encoding(UTF-8)");
+binmode (STDOUT, ":encoding(UTF-8)");
+binmode (STDERR, ":encoding(UTF-8)");
+use open ":encoding(UTF-8)";
+
+
+#===============================================================================
+# Variabelen Deklarasion
+#===============================================================================
+my $loesung = "Grünkohl";
+
+my $vertauschen = 10;
+
+print "\n";
+
+print $loesung. "\n";
+
+foreach (0..4)
+{
+print verwuerfeln($loesung,$_) ;
+print "\n";
+}
+
+#print @erb ;
+print "\n";
+
+
+#=== FUNCTION ================================================================
+# NAME: verwuerfeln
+# PURPOSE:
+# PARAMETERS:
+# $word
+# String der vertauscht wird.
+# $vertasuchen
+# anzahl der vertauschungen
+# RETURNS:
+# @ergebnis
+# Vertasuchter String in einem Feld.
+# DESCRIPTION:
+# übernimmt eine String desswen buchsteben beliebig oft miteinader
+# vertauscht werden.
+# THROWS: no exceptions
+# COMMENTS: none
+# SEE ALSO: n/a
+#===============================================================================
+
+sub verwuerfeln {
+ my ( $word , $vertauschen ) = @_;
+
+ defined $word or die "Es wurde keien String übergeben.\n";
+ defined $vertauschen or die "Es wurde keine Anzahl der vertauschung übergeben.\n";
+ my @ergebnis = split //, uc $word;
+
+ my $laenge = int @ergebnis;
+
+ my $index1 = 0;
+
+ my $index2 = 0;
+
+ for ( my $count = 0 ; $count < $vertauschen ;$count++ ) {
+
+
+ do {
+ $index1 = int rand $laenge;
+ $index2 = int rand $laenge;
+ } while ( $index1 eq $index2 ); # ----- end do-while -----
+
+ @ergebnis[$index1,$index2] = @ergebnis[$index2,$index1];
+
+ }
+ return @ergebnis;
+} ## --- end sub verwuerfeln
+
+