Altro problema urgente

di il
3 risposte

Altro problema urgente

Individuare la sequenza di interi stampata a video nei due casi sotto riportati, motivando la risposta data.
Caso 1)
#include<stdio.h>
void f(int x){
if(x>0){
printf("%d ",x);
f(x-­1); }
}
void main(void){
int n=7;
f(n);
printf("\n");
}
Caso 2)
#include<stdio.h>
void f(int x){
if(x>0){
f(x­-1);
printf("%d ",x);
}
}
void main(void){
int n=7;
f(n);
printf("\n");
}

Potreste spiegarmi come si fa grazie

3 Risposte

  • Re: Altro problema urgente

    Non si fa. Codice non compilabile. Poi potresti anche mettere il codice sotto un compilatore e vedere l'output.
    E' smettila di scrivere urgente perchè è conrto il regolamento. se uno ti vuole rispondere lo fa anche se non è urgente. Ultima cosa ogni volta che scrivi dei pezzi di codice racchiudili nei tag code.
    Per ultimo i programmini (anche se non compilabili) fanno uscire le sequenze da 7 a 1 e da 1 a 7
  • Re: Altro problema urgente

    Scusa ma non sapevo le regole del forum però potresti dirmi come mai vengono i numerida 7 a 1 nel primo caso e il contrario nel secondo grazie
  • Re: Altro problema urgente

    Perche ho usato il compilatore e so leggere il codice scritto. La funzione nel primo caso continua a stampare finche x è maggiore di 0. Ciò che scrive è il parametro passato poi viene richiamato la stessa funzione in modo ricorsivo con x diminuito di uno. Fai i conti con carta e penna e vedrai che tornano.
    Le regole del forum sono in alto. Il primo thread scritto da Toki ovvero questo:
    https://www.iprogrammatori.it/forum-programmazione/announces/regolamento-del-forum-leggere-prima-scrivere-t6454.html
Devi accedere o registrarti per scrivere nel forum
3 risposte