AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

warum 30 und nicht 35?!?

Ein Thema von kkkiwi · begonnen am 24. Apr 2005 · letzter Beitrag vom 24. Apr 2005
Antwort Antwort
Seite 2 von 2     12   
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#11

Re: warum 30 und nicht 35?!?

  Alt 24. Apr 2005, 23:25
Zitat von kkkiwi:
..und addier sie dann alle zusammen, und des wars dann?!?
Das Wort Rekursion ist bereits gefallen. Und das wars deshalb eben nicht. So einfach geht das leider nicht. Du mußt dich schon damit beschäftigen und zwar richtig, um nicht dumm zu sterben.
Gruß
Hansa
  Mit Zitat antworten Zitat
kkkiwi

Registriert seit: 24. Apr 2005
11 Beiträge
 
#12

Re: warum 30 und nicht 35?!?

  Alt 24. Apr 2005, 23:26
hey danke jetzt hab ichs verstanden...
hab wohl das Zurücklaufen vergessen!
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#13

Re: warum 30 und nicht 35?!?

  Alt 24. Apr 2005, 23:26
Zitat von kkkiwi:
--> dann hätte ich das selbe programm aber nur anderst geschrieben?, oder!?
Nein, was ich dir jetzt geschrieben habe sollte dir als Ergebnis das liefern, was du am Anfang erwartet hast (Zumindest, wenn du das "DownTo 2" in "DownTo 1" änderst. )
Es ist (meistens) überhaupt kein Problem, eine Rekursion in eine Schleife umzubasteln. Die Diskussion hatte wir neulich mal in der CodeLib. Das schöne an einer Rekursion ist, daß man in den meisten Fällen recht schnell erkennen kann, was die Funktion eigentlich tut.
Um das Schleifen-Pendant der ursprünglichen Funktion zu erhalten, mußt du einfach das "+ (z-1)" entfernen, das hab ich ja nur für dich eingefügt, weil du das ja erwartet hast.
Zitat von kkkiwi:
also bei diesen rekursions programmen, rufe ich immer wieder meine zahl auf, subtrahiere in dem fall -1 und behalte alle rechnungen von vorher bei, und addier sie dann alle zusammen, und des wars dann?!?
Sozusagen. Genaugenommen mußt du es dir so vorstellen, daß der Computer die Funktion aufruft. Dann sieht er, daß er die Funktion nochmal aufrufen muß, usw. Irgendwann ist z 1 und die Funktion gibt 1 zurück. Jetzt geht er eine Ebene zurück, addiert 1 zu 2*2, gibt das als Ergebnis zurück. Dann geht er wieder eine Ebene höher, addiert 5 zu 3*3. Wieder eine Ebene höher: 14 + 4*4. Jetzt ist er auf der höchsten Ebene, kann also einfach 30 zurückgeben.

//Edit:
So, und warum hab ich jetzt mal wieder nicht gesehen, daß während ich geschrieben habe gleich mehrere Beiträge gepostet wurden?
Zitat von omata:
Es gilt: Punkt vor Strichrechnung
Wobei das ja jetzt hier mit der Rekursion eher weniger zu tun hat...
Zitat von Hansa:
Wers glaubt wird selig. Erkläre mal, wie du in der Rekursion "zurückläufst". Würde mich mal interessieren.
Boah, bist du fies!
//Edit2: Falls jemand das letzte Quote liest und sich wundert: Hier is noch alles in Ordnung, die Reihenfolge stimmt noch.
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#14

Re: warum 30 und nicht 35?!?

  Alt 24. Apr 2005, 23:29
Zitat von kkkiwi:
hey danke jetzt hab ichs verstanden...
Wers glaubt wird selig. 8) Erkläre mal, wie du in der Rekursion "zurückläufst". Würde mich mal interessieren.
Gruß
Hansa
  Mit Zitat antworten Zitat
kkkiwi

Registriert seit: 24. Apr 2005
11 Beiträge
 
#15

Re: warum 30 und nicht 35?!?

  Alt 24. Apr 2005, 23:32
also noch aml danke für die ausführliche erklärung!

irgendwie seh ich meiner klausur morgen gaaanz beruhigt entgegen *lach*
  Mit Zitat antworten Zitat
kkkiwi

Registriert seit: 24. Apr 2005
11 Beiträge
 
#16

Re: warum 30 und nicht 35?!?

  Alt 24. Apr 2005, 23:33
hey hansa siehe erklärung von leddle

--> da steht mein zurücklaufen beschrieben..
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#17

Re: warum 30 und nicht 35?!?

  Alt 24. Apr 2005, 23:46
Zitat von kkkiwi:
..irgendwie seh ich meiner klausur morgen gaaanz beruhigt entgegen *lach*
Ja, bist früh an. 8)

http://www.delphi-forum.de/viewtopic...6eca4e5ced5429

Unter dem Aspekt wäre ich da nicht so sicher, ob was gescheites dabei rauskommt.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#18

Re: warum 30 und nicht 35?!?

  Alt 24. Apr 2005, 23:53
Nanana, so schlimm war das Topic im DF aber dann auch nich! Ich mußte da auch erst mal kurz überlegen, woran das ganze liegen könnte.
Aber Hauptsache is, daß ers jetzt kapiert hat. Darum stellt man ja Fragen!
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz