myGully.com

myGully.com (https://mygully.com/index.php)
-   Programmierung (https://mygully.com/forumdisplay.php?f=67)
-   -   HILFE : Rekursives Durchlaufen eindimensionaler Arrays (https://mygully.com/showthread.php?t=3120466)

Dr.Drex 06.12.13 14:58

HILFE : Rekursives Durchlaufen eindimensionaler Arrays
 
Hey Leute ,ich bin relativ neu beim Programmieren.
Kann wer helfen bei folgendem Problem?

Ich möchte eine rekursive Methode schreiben dass ein Array aus zb {1,2,3,4.....usw}
mithilfe einer methode durch trennzeichen trennt. also die ausgabe soll dann so ausehen:
1-2-3-4....usw .

Iterativ konnte ich es berits lösen, jedoch nicht rekursiv .
Hat jemand ne idee??

ZarrocZuckz 06.12.13 17:53

würde es so lösen, kann man natürlich noch verändern wenn man das array nicht global haben möchte. Da du nicht geschrieben hast in welcher programmiersprache bin ich jetzt mal von C ausgegangen

Code:

int arrayToPrint[10];
int arrayLength = 10;

void printNum(int index)
{
    if(index == arrayLength)
        return;
    printf("%d-", arrayToPrint[index]);
    printNum(index+1);
}


int main()
{
    ...
    printNum(0);
    ...
    return 0;
}


Odatas 09.12.13 15:50

Gibt es einen bestimmten Grund warum das unbedingt rekursiv sein muss? Ich hoffe das ist nur für eine Übung, weil ich keinen Sinn sehe so etwas Rekursiv statt Iterrativ zu machen. Rekursion an sich sollte man nur ganz spährlich nutzen. Bei Projekten wo besonders Fehlerfrei gearbeitet werden muss (weil sie lange Zeit Autonam arbeiten müssen z.b.) ist Rekursion meist komplett verboten. Und das hat seinen Grund.

ZarrocZuckz 09.12.13 17:25

macht in diesem fall natürlich nur sinn wenn es in der aufgabenstellung gefordert war, sonst ist iterativ die erste wahl. rekursion ist auch um einiges langsamer da funktionsaufrufe länger dauern als schleifendurchläufe, also wenn möglich sollte man dinge iterativ lösen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:46 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.