Euer schlechtester Code

Smalltalk
Benutzeravatar
Night.Hawk
Beiträge: 655
Registriert: 24.05.2003 11:00:39
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Night.Hawk » 24.09.2003 00:19:25

Man soll es ja kaum glauben, aber auch ich ahbe mal 8! Seiten des schlimmsten Codes verbrochen, die es je an unser Schule gab. Und die liefen, bis der C64 ausgemustert wurde!

War ein Menue-System für den "Schulrechner". Die etwas ahnugslosen Lehrer haben darüber ihre Stundenpläne, Zensuren und Klassenbelegungen zum Hlabjahreswechsel gemacht. Für die Berchnung (für 2500 Schüler) lief die Kiste wohl so ne Woche oder mehr.

Ich habe das Menuesystem verbochen, alles in Basic. Alles mit den grafischen Sonderzeichen vom C64. Rahmen, Eintragswechsel, Auswahl mit nem kleinen Quadrat, Umtermenue usw.

Natürlich alles NICHT kommentiert. Hab dafür (weil es lief) ne 1 bekommen!

Das System lief bis zur Anschaffung eines PCs, ca. 5-6 Jahre.

Alleine der Ausdruck der Klassenpläne und Aufteilungen der Schüler über drei Schulen dauerte 4 Tage mit nem 9-Nadler von NEC.

Das Programm für die Berechnungen haben zwei Freunde von mir geschrieben, ebenfalls Basic, waren ca. 35 Seiten undokumentierter Code. :D

Leider ist alles auf dem Schrott gelandet!
________________________________________________
Leben und leben lassen ...

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 24.09.2003 01:15:18

Bert hat geschrieben:Dafür hast Du volle Punktzahl bekommen? Da wundert mich ja gar nichts mehr, wenn ich mir manchen Code so ansehe..
Dangeschön... :? Der Code hat die Aufgabenstellung erfüllt, war dokumentiert und verständlich, nur halt "ungewöhnlich"... Wenn das nicht volle Punkte gegeben hätte, hätte ich solange diskutiert, bis sie es gegeben hätte.

Und 'mal abgesehen davon: Ich hab's ja mit Absicht schlecht gemacht. Ich habe im Prinzip mit voller Absicht das gesamte OO Konzept in Java umgangen und programmiert wie in BASIC (nur globale Variablen und Funktionen). Und um ganz ehrlich zu sein: für eine Übung, die sich in 20 Minuten erledigen lässt, investiere ich doch nicht eine Stunde, damit es auch noch schön ist... Den Code muss man danach nie wieder anfassen, also was soll's? ;-)

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Benutzeravatar
Bert
Beiträge: 3751
Registriert: 16.07.2002 14:06:52
Wohnort: Dresden
Kontaktdaten:

Beitrag von Bert » 24.09.2003 10:12:39

Da hast Du zwar sicherlich recht, aber es geht in der Ausbildung ja auch um die Aneignung eines sauberen Stils. Das ich Dir auch sauberen Code zutraue, steht hier ja nicht zur Diskussion. :)
Programmer: A biological machine designed to convert caffeine into code.
xmpp:bert@debianforum.de

Benutzeravatar
brahma
Beiträge: 653
Registriert: 28.08.2003 11:05:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Münsterland
Kontaktdaten:

Beitrag von brahma » 24.09.2003 11:20:57

Das schlimmste was ich gemacht habe, war einen psycho-test als programm umzuarbeiten....
20* if mit jeweils 3 verschiedenen fällen, ganz chaotisch untereinander getippt..... :oops:

aber ich denke ich kann euch demnächste jede menge komische sachen präsentieren, wir fangen jetzt im studium an zu programmieren, für viele ist es das erste mal...... :lol:

BlackCrow
Beiträge: 39
Registriert: 06.08.2003 17:49:40

Beitrag von BlackCrow » 20.10.2003 00:16:53

hm das ist teil einer kollisionsabfrage von einem spiel in c++ :D
meine fresse was eine scheisse 8O

Code: Alles auswählen

//schlaeger 1 Kollsion START
	if(y_ball_ende>=y_schlag_anfang && x_ball_ende>=x_schlag_anfang && x_ball_anfang<=x_schlag_ende && move_y>0)
	{
		if(x_ball_ende<=x_schlag_anfang+zone && move_y>=8)
		{
			move_y=move_y/1.5;
		}
		else
		{
			if(x_ball_ende<=x_schlag_anfang+zone+zone+zone && move_y<=20)
			{
				move_y=move_y*1.5;
			}
			else
			{
				move_y=move_y/1.5;
			}
		}
		move_y=move_y*-1;
		Beep(420,ton_zeit);
	}
	//schlaeger 1 Kollision ENDE


//schlaeger 2 Kollsion START
		
		if(y_ball_anfang<=y_schlag2_anfang && x_ball_anfang>=x_schlag2_anfang && x_ball_ende <=x_schlag2_ende && move_y<0)
		{
		
		if(x_ball_ende<=x_schlag2_anfang+zone && move_y>=8)
		{
			move_y=move_y/1.1;
		}
		else
		{
			if(x_ball_ende<=x_schlag2_anfang+zone+zone+zone && move_y<=20)
			{
				move_y=move_y*1.1;
			}
			else
			{
				move_y=move_y/1.1;
			}
			
		}

		move_y=move_y*-1;
		Beep(420,ton_zeit);
	}
	//schlaeger 2 Kollision ENDE

Antworten