Dev - C++ - c++ recursividad

 
Vista:

c++ recursividad

Publicado por YOMIRA (1 intervención) el 07/01/2015 16:53:52
porfavor ayundenme
Escriba una función recursiva que reciba un numero entero positivo e imprime los números impares hasta dicho numero.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

c++ recursividad

Publicado por Rene gar (50 intervenciones) el 07/01/2015 21:11:45
Te dejo mi version espero sea de ayuda saludos..

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<iostream>
using namespace std;
 
 
 
int recursivo(int n){
 
    if(n==0){return 1;}
 
    if(n %2!=0){cout<<n<<endl;}
 
    recursivo(n-1);
}
 
int main(){
    recursivo(100);
 
cin.get();
cin.get();
return 0;}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 417
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

c++ recursividad

Publicado por Thanatos (199 intervenciones) el 08/01/2015 01:02:27
Otra sugerencia:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
 
int mostrarImpares (const int &, int inicio = 1);
 
int main() {
   int numero(0);
 
   std::cout << "Ingrese el limite\nlimite = ";
   std::cin >> numero;
   std::cout << std::endl;
   numero = mostrarImpares (numero);
 
   (void)std::cin.ignore();
   (void)std::cin.ignore();
   return 0;
}
 
int mostrarImpares (const int& limite, int inicio) {
    if (limite >= 0) {
        if (inicio % 2 == 0) {
            inicio++;
        }
        if (inicio <= limite) {
            std::cout << inicio << ' ';
            return mostrarImpares (limite, inicio + 2);
        }
    } else {
        std::cout << "El numero debe ser un entero positivo";
    }
    return 0;
}

La función verifica que el limite de la lista de números sea positiva. Puedes pasar como segundo argumento el valor inicial de la lista de números. Si le pasas sólo un argumento, utilizará el 1 como valor inicial.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar