Ricorsione

Dust1
Ciao a tutti. Volevo chiedere un favore a ki se ne intende un po' d info(e in particolare d java) un'aiuto su dei programmini banali ma irraggiungibili, ora come ora, x la mia mente nn abituata a pensare ricorsivamente.... :-D

Sarebbero i seguenti:

1)Scrivere un algoritmo ricorsivo per calcolare il prodotto dei primi
k numeri pari con k = 1, 2, 3, 4, 5,...10


2) Scrivere un algoritmo ricorsivo per ottenere l'inversione di una stringa.

3) Scrivere un algoritmo ricorsivo per stampare i primi numeri pari in
ordine decrescente e i primi dispari in ordine crescente utilizzando
due metodi distinti: stampapari, stampadispari.

4) Scrivere un algortimo ricorsivo per verificare se una parola e'
palindroma.


mi basta almeno l'idea.. se nn potete postare il codice...
grazie

Risposte
Sonix1
in che linguaggio devono essere scritti?

doremifa1
Tu con ricorsione intendi cicli????
Se si allora ricorda che un numero pari tu lo puoi scrivere come $p=2*k$ e al variare di $k$ ottieni tutti i numeri pari.
Quindi ti basta impostare un ciclo
per $k=1,1,10$
$p=2*k$

eugenio.amitrano
Ho pochissimo tempo a disposizione, per il momento posto una funzione ricorsiva in c che restituisce il prodotto dei primi n numeri.
long prodotto_primi_n(int n)
{
   long r;
   if(n<1) r=0;
   if(n = 1) r=1;
   if(n>1) r = (long) n*prodotto_primi_n(n-1);
   
   return r;
}

gigilatrottola2
Ma frequenti il corso di linguaggi I?
Se pesco gli appunti in giro per casa ti posto del codice. Cmq li fai tutti allo stesso modo... ponendo i valori nello stack e poi leggendoli quando la condizione termina (le funzioni sono chiuse in ordine inverso)

Dust1
"Sonix":
in che linguaggio devono essere scritti?


In java!

doremifa:
Tu con ricorsione intendi cicli????


No, la ricorsione è un'argomento a se stante.


Ho pochissimo tempo a disposizione, per il momento posto una funzione ricorsiva in c che restituisce il prodotto dei primi n numeri.


GRazie intanto x quello ke hai postato...


gigilatrottola:
Ma frequenti il corso di linguaggi I?
Se pesco gli appunti in giro per casa ti posto del codice. Cmq li fai tutti allo stesso modo... ponendo i valori nello stack e poi leggendoli quando la condizione termina (le funzioni sono chiuse in ordine inverso)


no, è x fondamenti di informatica... :oops:

ti ringrazio in anticipo se hai la possibilità d postarmi il codice...

Lo so ke certi sono facili, e me ne accorgo ankio quando vedo la soluzione... ma nn sono ancora entrato nell'ottica giusta...oppure, cosa + probabile, nn sono dotato di intelligenza logica... :-D :-D

Dust1
"Sonix":
in che linguaggio devono essere scritti?


In java!

"doremifa":
Tu con ricorsione intendi cicli????


No, la ricorsione è un'argomento a se stante.


Ho pochissimo tempo a disposizione, per il momento posto una funzione ricorsiva in c che restituisce il prodotto dei primi n numeri.


GRazie intanto x quello ke hai postato...


"gigilatrottola":
Ma frequenti il corso di linguaggi I?
Se pesco gli appunti in giro per casa ti posto del codice. Cmq li fai tutti allo stesso modo... ponendo i valori nello stack e poi leggendoli quando la condizione termina (le funzioni sono chiuse in ordine inverso)


no, è x fondamenti di informatica... :oops:

ti ringrazio in anticipo se hai la possibilità d postarmi il codice...

Lo so ke certi sono facili, e me ne accorgo ankio quando vedo la soluzione... ma nn sono ancora entrato nell'ottica giusta...oppure, cosa + probabile, nn sono dotato di intelligenza logica... :-D :-D





Scusate x il doppio post... ma è stato un problema del pc...

Studente Anonimo
Studente Anonimo
Prova a dare un'occhiata a questi (non sono il massimo, si possono anche semplificare volendo, ma funzionano...):

prodotto dei primi k pari

inversione di una stringa

sequenze pari/dispari decrescente/crescente

verifica parola palindroma

Dust1
T ringrazio molto stan!!!

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.