Prof. Dr. Franz Schweiggert -- Sektion Angewandte Informationsverarbeitung -- 10. Dezember 1997
Ingo Melzer Blatt 8
[c]


Systemnahe Software I


Allgemeine Informatik III (WS 97/98)



Abgabetermin 24. Dezember 1997

11 Am ersten Tag (1 Bonuspunkt)

Führen Sie folgendes Programm auf Thales oder Turing aus. Singen Sie die Ausgabe Ihrem Tutor vor.

#include <stdio.h>
#define O (b=b?b-1:(p++,5),*p&1<<b)
#define o O?O
char*p,j=2,b,c;e(n){for(p="|'8I0>+@{=#_P0-]PV.]F>TM!YK'?? |T\"Z8}aE<&D-!:-T'\"\
O<~cG5$,<2'#;/UI.0{d^HV6817-2F95-T7X|c^/1XB]*)3WHG0/0}dN>G RMZB.12.P] ~hM^J\\[\
<R^ (7;)R9A78{gU!:N)E5OPUR><29A6|e&9V;E[Q:,S1.P] }eES.$Z):B.*O+$G_ ~fWU8)75?I#\
75?WHN0{jE=]<V*1]JI#5VK)R9A6~J5X9X#69/+VX4 =S%!X-[)OE #1XRZ\"?~%^-#Dz&M\\RST|%\
G66*~&^HV0> {%^-8_P}%N>FO(}'M^JQ=z&U!:O(J{%&9G4|%ERO(~(WU8)G4{'E=]^G4",b=n;*p++
<122||--b;);c=*p;while(--c>31&&c!=79)putchar(44+(o?o?o?-34:68:O?60:74:O?64:o?o?
2:54:O?23:63:77:O?55:o?76:15:35:-12:o?61:O?56:65:O?66:53:o?o?O?75:58:0:70:57:o?
71:o?73:1:67:O?72:59));c>32?e(n-1):0;}main(){while(++j<15)e(1),e(13+j),e(15),e(
j-(j<4));}

12 Es Weihnachtet (1 Bonuspunkt)

Setzten Sie sich an eines der VT-Terminals in O27/211. Führen Sie nach der Anmeldung folgenden Befehl aus: cat ~melzer/Xmas.vt

13 Oh Tannenbaum (bis zu 6 Bonuspunkte)

Schreiben Sie ein -- wenn möglich rekursives -- C-Programm, welches eine Zahl als Parameter erhält, und dann einen ASCII Weihnachtsbaum entsprechender Größe auf dem Bildschirm ausgibt. Machen Sie sich bitte Gedanken über möglichen Schmuck, den man am Baum anbringen könnte.

Um die Ausgabe zu vereinfachen, können Sie 25 Zeichenketten mit 80 Leerzeichen initialisieren (und natürlich mit \0 abschließen) und in diesen Änderungen vornehmen. Dadurch wird die Positionierung des Cursors erleichtert.


Alle Mitarbeiter der SAI wünschen Ihnen ein frohes Weihnachtsfest und ein erfolgreiches Jahr 1998.


Ingo Melzer 12/10/1997