Übungsaufgabe für alle :: Nr. 4 - Rekursion
Übersicht BlitzBasic Beginners-Corner
wunderkindBetreff: Übungsaufgabe für alle :: Nr. 4 - Rekursion |
Sa, Jan 01, 2005 15:57 Antworten mit Zitat |
|
---|---|---|
Nach der dritten kommen wir nun zur vierten Übungsaufgabe. Es geht um das Thema Rekursion.
Aufgabe Erstelle ein BB-Programm, welches eine gegebene Zahl mehrmals durch 2 teilt.
Extra Wem die Aufgabe zu einfach ist, der kann sich mit dieser Erweiterung beschäftigen.
Zum Lösen der Aufgabe habt ihr eine Woche Zeit (bis zum 08.01.). Eine Bitte Wie immer die Bitte: Posted eure vollständigen Lösungen bitte nicht vor Sonnabend 08.01. damit alle eine Chance haben, selbstständig ihre Lösung zu finden. Fragen und Teillösungen sind natürlich wieder willkommen, damit jeder hier etwas lernen kann. Die vergangenen Übungsaufgaben findet ihr hier: Aufgabe Nr. 1 : Logische Operatoren Aufgabe Nr. 2 : Menüstruktur unter Verwendung von Types Aufgabe Nr. 3 : Umwandlung von Zahlen zwischen Binär-, Dezimal- und Hexadezimalsystem Viel Erfolg! |
||
- Zuletzt bearbeitet von wunderkind am Fr, Jan 28, 2005 17:43, insgesamt einmal bearbeitet
Sound |
Sa, Jan 01, 2005 16:51 Antworten mit Zitat |
|
---|---|---|
Soll bei einem Abbruch wegen kleiner/gleich 2 das letzte Ergebnis, was also kleiner/gleich 2 ist, noch angezeigt werden, oder nicht? | ||
wunderkind |
Sa, Jan 01, 2005 17:35 Antworten mit Zitat |
|
---|---|---|
Nein, dieses Ergebnis braucht nicht angezeigt zu werden. | ||
Waveblue |
Sa, Jan 01, 2005 18:00 Antworten mit Zitat |
|
---|---|---|
^^bin fertig!
solltest aber unbedingt drauf hinweisen, das ohne die Rekursionstiefenbeschränkung der Computer hoffnungslos abstürzt |
||
This is 10% luck
20% skill 15% concentrated power of will 5% pleasure, 50% pain and 100% reason to remember the name |
wunderkind |
Sa, Jan 01, 2005 19:34 Antworten mit Zitat |
|
---|---|---|
Deshalb gibt es ja die Begrenzung ! Ansonsten hast du natürlich recht: wenn es keine Abbruchbedingung gibt, dann wird das Programm abstürzen. Das wäre ähnlich einer Endlosschleife...wenn man den steigenden Speicherplatzverbrauch mal außen vor lässt. | ||
junky |
Sa, Jan 01, 2005 19:53 Antworten mit Zitat |
|
---|---|---|
ehm - wieso sollte des Programm eigentlich ohne Tiefenbeschränkung abstürzen ? Das kommt doch nur auf die Zahl an, die der User wählt...
bei mir stürzt zumindest nix ab, ohne Tiefenbeschränkung noch ne Frage zur Aufgabenstellung: sind globale Variablen in der Bonusaufgabe erlaubt ? - Also nur für's zeichnen vom Koordinatensystem, nicht bei der eigentlichen Lösung der Problemstellung. Man kann natürlich alle Werte statisch festlegen oder immer wieder der Funktion übergeben, ich persönlich fänds aber ziemlich unpraktisch... |
||
gestern stand ich noch vorm Abgrund
heute bin ich einen Schritt weiter... |
RallimenSieger des 30-EUR-Wettbewerbs |
Sa, Jan 01, 2005 20:29 Antworten mit Zitat |
|
---|---|---|
Hallo, werde mal meine FunctionSammlung durchforsten und mal schnell was basteln!
Setzte diese dann als Exe rein! |
||
[BB2D | BB3D | BB+]
|
Clonker |
Sa, Jan 01, 2005 20:53 Antworten mit Zitat |
|
---|---|---|
Setze ich auch mal mein Programm hier als Exe rein:
http://www.clonkfactory.de/Tes...abeNr4.exe edit: nochmal etwas verbessert |
||
Die exzessive Akkumulation von Fremdwörtern suggeriert pseudointellektuelle Kompetenz.
Athlon XP 2800|Radeon 9600 Pro|512MB DDR RAM|240GB Festplatte |
- Zuletzt bearbeitet von Clonker am Sa, Jan 01, 2005 22:14, insgesamt einmal bearbeitet
RallimenSieger des 30-EUR-Wettbewerbs |
Sa, Jan 01, 2005 21:29 Antworten mit Zitat |
|
---|---|---|
das sieht super aus, Clonker!
hier meins! http://people.freenet.de/rallimen/Basic/ |
||
[BB2D | BB3D | BB+]
|
junky |
Sa, Jan 01, 2005 21:31 Antworten mit Zitat |
|
---|---|---|
hm - warte zwar immer noch auf ne Antwort, aber ok ...
Zum Download EDIT: @ Ralli - coole Sache des mit dem Farbdiagramm - nur, haste schonma versucht als Startzahl 1000 einzugeben? |
||
gestern stand ich noch vorm Abgrund
heute bin ich einen Schritt weiter... |
RallimenSieger des 30-EUR-Wettbewerbs |
Sa, Jan 01, 2005 21:37 Antworten mit Zitat |
|
---|---|---|
Danke für den Hinweis, hab da wohl die 0 weg rationalisiert!
da fehlt tatsächlich das = Zeichen die 9 geht auch nicht! Jetzt geht es aber ........ |
||
[BB2D | BB3D | BB+]
|
wunderkind |
Sa, Jan 01, 2005 22:25 Antworten mit Zitat |
|
---|---|---|
Du ahnst es nicht! Sehr schöne Resultate. Und das nach wenigen Stunden. Ich hoffe ihr habt darauf geachtet, keine globalen Variablen zu verwenden . | ||
RallimenSieger des 30-EUR-Wettbewerbs |
Sa, Jan 01, 2005 22:54 Antworten mit Zitat |
|
---|---|---|
Also bei mir steht kein Global im Code drinne!
Die rekursive Function kommt da ganz ohne aus, nur mit Parameter und Rückgabewerte! Nur das erstellen des Diagramms erfordert ein Dim Feld was eigens dafür erstellt wird in der Hauptschleife! Und das will ich auch nicht mehr umschreiben ! (ChaosPur) |
||
[BB2D | BB3D | BB+]
|
wunderkind |
So, Jan 02, 2005 1:03 Antworten mit Zitat |
|
---|---|---|
Ich will jetzt nicht kleinlich sein und das Dim-Feld untersagen, aber mit globalen Variablen meine ich alle, die außerhalb einer Funktion deklariert wurden ! | ||
junky |
So, Jan 02, 2005 3:29 Antworten mit Zitat |
|
---|---|---|
hm - also nochma
Zitat: sind globale Variablen in der Bonusaufgabe erlaubt ? - Also nur für's zeichnen vom Koordinatensystem, nicht bei der eigentlichen Lösung der Problemstellung. Man kann natürlich alle Werte statisch festlegen oder immer wieder der Funktion übergeben, ich persönlich fänds aber ziemlich unpraktisch... was ist damit nun ? - natürlich könnte man alles statisch einbauen - keine Variablen deklarieren, und dafür direkt innerhalb der Funktionen irgendwelche Zahlen einbauen, von denen kein Mensch versteht, für was sie gut sind - aber, ist das das Ziel ?! die eigentliche Funktion kommt natürlich ohne jegwelche "globalen" Variablen aus - aber schon beim Koordinatensystem ist es um ein wesentliches dynamischer und verständlicher mit globals ... wat nun ? - den Code zur Unerkenntlichkeit umbauen ? - kein Problem 8) |
||
gestern stand ich noch vorm Abgrund
heute bin ich einen Schritt weiter... |
David |
So, Jan 02, 2005 10:30 Antworten mit Zitat |
|
---|---|---|
Hi!
So hab ich's verstande, keine globalen Variablen. Daher wird der Code halt ein wenig umständlicher... Wie gesagt, kein Problem, oder? grüße |
||
wunderkind |
So, Jan 02, 2005 11:09 Antworten mit Zitat |
|
---|---|---|
So in etwa sollte das Programm aufgebaut sein:
Code: [AUSKLAPPEN] Const aaaaa = 10 const troet = 20 main() End Function main() Local var1 Local var2 End Function Function teile(xxx, yyy, ...) Local var55 Local var66 End Function |
||
BladeRunnerModerator |
So, Jan 02, 2005 11:40 Antworten mit Zitat |
|
---|---|---|
Zitat: ehm - wieso sollte des Programm eigentlich ohne Tiefenbeschränkung abstürzen ? Das kommt doch nur auf die Zahl an, die der User wählt...
bei mir stürzt zumindest nix ab, ohne Tiefenbeschränkung Genau da liegt ja der Hase im Pfeffer. Immer brav mit dem DAU rechnen, der eine riesige Zahl einhämmert und damit einen stack-overflow verursacht... |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
RallimenSieger des 30-EUR-Wettbewerbs |
So, Jan 02, 2005 12:13 Antworten mit Zitat |
|
---|---|---|
So, habe nochmal etwas umgebaut, jetzt gehts
mit Numpad und Komma bzw Punkt! und keine eine Globale bzw globale Constante Geiler Chaos Code Zur Tiefe: bei maximaler BB-Integerzahl (+2147483647) geht bis ca. 30 Tiefe Wenn die Eingabe von Wissenschaftlichen Zahlen möglich ist gehts bis zu ca 130 mal ! |
||
[BB2D | BB3D | BB+]
|
Waveblue |
So, Jan 02, 2005 12:19 Antworten mit Zitat |
|
---|---|---|
BladeRunner hat Folgendes geschrieben: Zitat:
ehm - wieso sollte des Programm eigentlich ohne Tiefenbeschränkung abstürzen ? Das kommt doch nur auf die Zahl an, die der User wählt...
bei mir stürzt zumindest nix ab, ohne Tiefenbeschränkung Genau da liegt ja der Hase im Pfeffer. Immer brav mit dem DAU rechnen, der eine riesige Zahl einhämmert und damit einen stack-overflow verursacht... Ich meinte die Tiefen- und die kleinergleichzwei-Begrenzung! Könnt ihr mal probieren! Baut´s aus und schießt eure Rechner ab Waveblue übernimmt keine Verantwortung für Schäden an euren Rechnern |
||
This is 10% luck
20% skill 15% concentrated power of will 5% pleasure, 50% pain and 100% reason to remember the name |
Übersicht BlitzBasic Beginners-Corner
Powered by phpBB © 2001 - 2006, phpBB Group