|< 1 2 3 4 ... 8 >| | 74 Einträge, 8 Seiten |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
RDW #3 - Rätsel der Woche Nummer 3
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Regeln: * Bitte nicht vor Ablauf der ersten 72 Stunden ( = drei Tage )
~~~~~~~ nach Veröffentlichung Hinweise (Spoiler) oder Lösungen ver-
öffentlichen!
* Wenn diese Zeit abgelaufen ist, werde ich einen Thread mit
passendem Titel erstellen, in dem die Lösungen gepostet werden
und diskutiert werden können.
* Die Lösungen sollten nicht nur gepostet, sondern auch an mich
gemailt werden, damit ich sie testen, "bewerten" und zu-
sammenfassen kann.
Die Adrese dafür lautet:
crian <---AT---> perl <---MINUS---> community <---DOT---> de
Im Betreff sollte 'RDW' und die Nummer des Rätsels stehen.
Hilfreich wäre neben dem Quellcode der Username im Forum
sowie Perl- und OS-Version, falls Du diese kennst.
* Verständnisfragen dürfen in diesem Thread gestellt werden, aber
Tipps und (Teil-) Lösungen sind hier unerwünscht.
* Ich werde die eingeschickten Programme im Netz zur Verfügung
stellen, so dass gerade lange Quellcodes nicht (komplett)
gepostet werden müssen.
* Zur Verwendung von Modulen: Ich möchte diese nicht generell
ausschließen, aber wenn quasi die komplette Aufgabe durch
die Verwendung eines Moduls ersetzt werden kann, ist dies
vielleicht nicht der Sinn der Aufgabe gewesen.
Aufgabe: Schreibe eine Funktion hexdump(), die Daten als Hexdump ausgibt.
~~~~~~~~
Beispiel:
hexdump("Ich bin Text");
Erzeugt folgende Ausgabe auf der Konsole:
0000: 49 63 68 20 62 69 6e 20 - 54 65 78 74 Ich bin Text
Der Aufruf
hexdump(qq~Lorem ipsum dolor sit amet, consectetuer adipiscing
elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore
magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis
nostrud exerci tation ullamcorper suscipit lobortis nisl ut
aliquip ex ea commodo consequat. Duis autem vel eum iriure
dolor in hendrerit in vulputate velit esse molestie consequat,
vel illum dolore eu feugiat nulla facilisis at vero eros et
accumsan et iusto odio dignissim qui blandit praesent luptatum
zzril delenit augue duis dolore te feugait nulla facilisi.\n~);
Erzeugt folgende Ausgabe auf der Konsole:
0000: 4c 6f 72 65 6d 20 69 70 - 73 75 6d 20 64 6f 6c 6f Lorem ipsum dolo
0010: 72 20 73 69 74 20 61 6d - 65 74 2c 20 63 6f 6e 73 r sit amet, cons
0020: 65 63 74 65 74 75 65 72 - 20 61 64 69 70 69 73 63 ectetuer adipisc
0030: 69 6e 67 20 65 6c 69 74 - 2c 20 73 65 64 20 64 69 ing elit, sed di
0040: 61 6d 20 6e 6f 6e 75 6d - 6d 79 20 6e 69 62 68 20 am nonummy nibh
0050: 65 75 69 73 6d 6f 64 20 - 74 69 6e 63 69 64 75 6e euismod tincidun
0060: 74 20 75 74 20 6c 61 6f - 72 65 65 74 20 64 6f 6c t ut laoreet dol
0070: 6f 72 65 20 6d 61 67 6e - 61 20 61 6c 69 71 75 61 ore magna aliqua
0080: 6d 20 65 72 61 74 20 76 - 6f 6c 75 74 70 61 74 2e m erat volutpat.
0090: 20 55 74 20 77 69 73 69 - 20 65 6e 69 6d 20 61 64 Ut wisi enim ad
00a0: 20 6d 69 6e 69 6d 20 76 - 65 6e 69 61 6d 2c 20 71 minim veniam, q
00b0: 75 69 73 20 6e 6f 73 74 - 72 75 64 20 65 78 65 72 uis nostrud exer
00c0: 63 69 20 74 61 74 69 6f - 6e 20 75 6c 6c 61 6d 63 ci tation ullamc
00d0: 6f 72 70 65 72 20 73 75 - 73 63 69 70 69 74 20 6c orper suscipit l
00e0: 6f 62 6f 72 74 69 73 20 - 6e 69 73 6c 20 75 74 20 obortis nisl ut
00f0: 61 6c 69 71 75 69 70 20 - 65 78 20 65 61 20 63 6f aliquip ex ea co
0100: 6d 6d 6f 64 6f 20 63 6f - 6e 73 65 71 75 61 74 2e mmodo consequat.
0110: 20 44 75 69 73 20 61 75 - 74 65 6d 20 76 65 6c 20 Duis autem vel
0120: 65 75 6d 20 69 72 69 75 - 72 65 20 64 6f 6c 6f 72 eum iriure dolor
0130: 20 69 6e 20 68 65 6e 64 - 72 65 72 69 74 20 69 6e in hendrerit in
0140: 20 76 75 6c 70 75 74 61 - 74 65 20 76 65 6c 69 74 vulputate velit
0150: 20 65 73 73 65 20 6d 6f - 6c 65 73 74 69 65 20 63 esse molestie c
0160: 6f 6e 73 65 71 75 61 74 - 2c 20 76 65 6c 20 69 6c onsequat, vel il
0170: 6c 75 6d 20 64 6f 6c 6f - 72 65 20 65 75 20 66 65 lum dolore eu fe
0180: 75 67 69 61 74 20 6e 75 - 6c 6c 61 20 66 61 63 69 ugiat nulla faci
0190: 6c 69 73 69 73 20 61 74 - 20 76 65 72 6f 20 65 72 lisis at vero er
01a0: 6f 73 20 65 74 20 61 63 - 63 75 6d 73 61 6e 20 65 os et accumsan e
01b0: 74 20 69 75 73 74 6f 20 - 6f 64 69 6f 20 64 69 67 t iusto odio dig
01c0: 6e 69 73 73 69 6d 20 71 - 75 69 20 62 6c 61 6e 64 nissim qui bland
01d0: 69 74 20 70 72 61 65 73 - 65 6e 74 20 6c 75 70 74 it praesent lupt
01e0: 61 74 75 6d 20 7a 7a 72 - 69 6c 20 64 65 6c 65 6e atum zzril delen
01f0: 69 74 20 61 75 67 75 65 - 20 64 75 69 73 20 64 6f it augue duis do
0200: 6c 6f 72 65 20 74 65 20 - 66 65 75 67 61 69 74 20 lore te feugait
0210: 6e 75 6c 6c 61 20 66 61 - 63 69 6c 69 73 69 2e 0a nulla facilisi..
(Diese Aufgabe stammt von Esskar.)
Ich bitte darum, dass die nicht-Golf-Lösungen folgende Regeln
beachten:
1) Falls das Programm mit Parameter gestartet wird, so wird dieser
als Dateiname interpretiert und das Ergebnis der Funktion
die den Hex-Dump erzeugt auf STDOUT ausgegeben.
2) Falls das Programm ohne Parameter gestartet wird, so wird der
zu hexdumpende Text von STDIN gelesen. Die Ausgabe erfolgt
wieder nach STDOUT.
3) Eventuell auszugebende Fehler werden nach STDERR ausgegeben.
4) Die Form der Ausgabe soll mit obigem Beispiel übereinstimmen
(falls es nicht irgendwo Tippfehler hat;).
Um die Ergebnisse vergleichen zu können werde ich die Ausgaben
maschinell miteinander vergleichen. Dehalb bitte um die
Einhaltung dieser Regel.
5) Bitte nennt die Funktion hexdump und nicht irgendwie.
6) Es wäre schön, wenn die Golflösungen wenigstens die Verarbeitung
in der Pipe zulassen würden.
7) Es sollen keine Module verwendet werden (um use strict/warnings
wird gebeten).
(Das in 1 und 2 geforderte Verhalten ist durch einfaches Bearbeiten
des Arrays @inhalt nach
my @inhalt = <>;
gegeben.)
QuoteBitte sagt mir mal wer, wie ich das auf der Raetsel-Einstiegsseite verlinke,
Quotewie ich dort die Anzahl auf drei setze,
Quotewieso ich beim Bearbeiten von Raetsel 2 unten eine Box habe, wo ich Titel etc einstellen kann, dies bei Raetsel 3 aber nicht der Fall ist etc.
QuoteBraucht man denn erst eine Fortbildung um dieses Wiki genau zu kennen? *grmpf*
|< 1 2 3 4 ... 8 >| | 74 Einträge, 8 Seiten |