Skip to content

Commit 524282b

Browse files
authored
Merge pull request #8145 from jhoshmc/main
06/c++/jhoshmc.cpp
2 parents fd99ac7 + 7aefb73 commit 524282b

File tree

3 files changed

+201
-0
lines changed

3 files changed

+201
-0
lines changed
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
/*
2+
* EJERCICIO:
3+
* Entiende el concepto de recursividad creando una función recursiva que imprima
4+
* números del 100 al 0.
5+
*
6+
*/
7+
8+
#include <iostream>
9+
10+
using namespace std;
11+
12+
void conteoRecursivo(int);
13+
//! ejercicio extra
14+
void extra();
15+
int factorialRecursivo(int);
16+
int fibonacciRecursivo(int);
17+
18+
int main(){
19+
int numero = 100;
20+
conteoRecursivo(numero);
21+
extra();
22+
return 0;
23+
}
24+
25+
void conteoRecursivo(int numero){
26+
//* este es el caso de finalizacion y finalizacion de la resurción
27+
if(numero == 0){
28+
cout << "numero: " << numero<<endl;
29+
return ;
30+
}
31+
if(numero > 0){
32+
//* se va imprimiendo el numero
33+
cout << "numero: " << numero << endl;
34+
//* se va retornando la funcion con un número menor al ya impreso
35+
return conteoRecursivo(numero - 1);
36+
37+
38+
}
39+
}
40+
41+
/*
42+
* DIFICULTAD EXTRA (opcional):
43+
* Utiliza el concepto de recursividad para:
44+
* - Calcular el factorial de un número concreto (la función recibe ese número).
45+
* - Calcular el valor de un elemento concreto (según su posición) en la
46+
* sucesión de Fibonacci (la función recibe la posición).
47+
*/
48+
49+
void extra(){
50+
int numeroFactorial;
51+
int resultadoFactorial;
52+
int posicionFibonacci;
53+
int resultadoFibonacci;
54+
cout << "\n\t factorial: \n";
55+
cout << "ingrese un numero para ver su factorial: ";
56+
cin >> numeroFactorial;
57+
resultadoFactorial = factorialRecursivo(numeroFactorial);
58+
cout << "el factorial del numero " << numeroFactorial << "! es: " << resultadoFactorial << endl;
59+
cout << "\n\t fibonacci: \n";
60+
cout << "ingrese la posicion fibonacci: ";
61+
cin >> posicionFibonacci;
62+
resultadoFibonacci = fibonacciRecursivo(posicionFibonacci);
63+
cout << "el numero fibonacci en la posicion: " << posicionFibonacci << " es : " << resultadoFibonacci << endl;
64+
}
65+
66+
int factorialRecursivo(int numero){
67+
if(numero == 1){
68+
return 1;
69+
}
70+
if (numero >=1)
71+
{
72+
return numero * factorialRecursivo(numero - 1);
73+
}
74+
75+
}
76+
77+
int fibonacciRecursivo(int numero){
78+
if(numero == 0){
79+
return 0;
80+
}
81+
if(numero == 1){
82+
return 1;
83+
}
84+
85+
return fibonacciRecursivo(numero - 1) + fibonacciRecursivo(numero - 2);
86+
}
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
/*
2+
* EJERCICIO:
3+
* Entiende el concepto de recursividad creando una función recursiva que imprima
4+
* números del 100 al 0.
5+
*
6+
*/
7+
8+
function ejercicio() {
9+
let numero = 100;
10+
conteoRecursivo(numero);
11+
}
12+
13+
function conteoRecursivo(numero) {
14+
if (numero == 0) {
15+
console.log(`numero: ${numero}`);
16+
return;
17+
}
18+
if (numero > 0) {
19+
console.log(`numero: ${numero}`);
20+
return conteoRecursivo(numero - 1);
21+
}
22+
}
23+
24+
ejercicio();
25+
26+
/*
27+
* DIFICULTAD EXTRA (opcional):
28+
* Utiliza el concepto de recursividad para:
29+
* - Calcular el factorial de un número concreto (la función recibe ese número).
30+
* - Calcular el valor de un elemento concreto (según su posición) en la
31+
* sucesión de Fibonacci (la función recibe la posición).
32+
*/
33+
34+
function extra() {
35+
let numeroFactorial = 5;
36+
let posicionFibonacci = 6;
37+
let resultadoFactorial = factorialRecursivo(numeroFactorial);
38+
console.log("\n\t factorial de un numero \n");
39+
console.log(
40+
`el factorial del numero ${numeroFactorial}! es : ${resultadoFactorial}`
41+
);
42+
console.log("\n\t numero fibonacci \n");
43+
let resultadoFibonacci = fibonacciRecursivo(posicionFibonacci);
44+
console.log(
45+
`el numero fibonacci en la posicion ${posicionFibonacci} es : ${resultadoFibonacci}`
46+
);
47+
}
48+
49+
function factorialRecursivo(numero) {
50+
if (numero == 1) {
51+
return 1;
52+
}
53+
if (numero >= 1) {
54+
return numero * factorialRecursivo(numero - 1);
55+
}
56+
}
57+
58+
function fibonacciRecursivo(numero) {
59+
if (numero == 0) return 0;
60+
if (numero == 1) return 1;
61+
return fibonacciRecursivo(numero - 1) + fibonacciRecursivo(numero - 2);
62+
}
63+
64+
extra();
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
"""
2+
! EJERCICIO:
3+
* Entiende el concepto de recursividad creando una función recursiva que imprima
4+
* números del 100 al 0.
5+
*
6+
"""
7+
8+
def ejercicio():
9+
numero=100
10+
conteoRecursivo(numero)
11+
12+
def conteoRecursivo(numero):
13+
if numero == 0:
14+
print(f"numero: {numero}")
15+
return
16+
if numero >0:
17+
print(f"numero: {numero}")
18+
return conteoRecursivo(numero-1)
19+
20+
ejercicio()
21+
22+
"""
23+
! DIFICULTAD EXTRA (opcional):
24+
* Utiliza el concepto de recursividad para:
25+
* - Calcular el factorial de un número concreto (la función recibe ese número).
26+
* - Calcular el valor de un elemento concreto (según su posición) en la
27+
* sucesión de Fibonacci (la función recibe la posición).
28+
"""
29+
30+
def extra():
31+
numeroFactorial= int(input("ingrese el numero factorial: "))
32+
resultadoFactorial= factorialRecursivo(numeroFactorial)
33+
print("\n\t numero factorial \n")
34+
print(f"el factorial del numero {numeroFactorial}! es: {resultadoFactorial}")
35+
print("\n\t numero fibonacci \n")
36+
posicionFibonacci=int(input("ingrese la posicion fibonacci: "))
37+
resultadoFibonacci = fibonacciRecursivo(posicionFibonacci)
38+
print(f"el numero fibonacci en la posicion {posicionFibonacci} es: {resultadoFibonacci}")
39+
40+
def factorialRecursivo(numero)->int:
41+
if numero == 1:
42+
return 1
43+
if numero > 1:
44+
return numero * factorialRecursivo(numero-1)
45+
46+
def fibonacciRecursivo(numero)->int:
47+
if numero == 0:return 0
48+
if numero == 1: return 1
49+
return fibonacciRecursivo(numero-1)+fibonacciRecursivo(numero-2)
50+
51+
extra()

0 commit comments

Comments
 (0)