File tree Expand file tree Collapse file tree 1 file changed +63
-0
lines changed
Roadmap/06 - RECURSIVIDAD/delphi Expand file tree Collapse file tree 1 file changed +63
-0
lines changed Original file line number Diff line number Diff line change 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+ * DIFICULTAD EXTRA (opcional):
7+ * Utiliza el concepto de recursividad para:
8+ * - Calcular el factorial de un número concreto (la función recibe ese número).
9+ * - Calcular el valor de un elemento concreto (según su posición) en la
10+ * sucesión de Fibonacci (la función recibe la posición).
11+ *)
12+
13+ program fduron;
14+
15+ { $APPTYPE CONSOLE}
16+
17+ { $R *.res}
18+
19+ uses
20+ System.SysUtils;
21+
22+ procedure NumerosDescendentes (const Numero: integer);
23+ begin
24+ if numero >= 0 then
25+ begin
26+ WriteLn(Numero);
27+ NumerosDescendentes(Numero - 1 );
28+ end ;
29+ end ;
30+
31+ function Factorial (const Numero: Integer): Integer;
32+ begin
33+ if Numero > 1 then
34+ Result := Numero * Factorial(Numero - 1 )
35+ else
36+ Result := 1 ;
37+ end ;
38+
39+ function Fibonacci (const Posicion: Integer): Integer;
40+ begin
41+ if Posicion < 2 then
42+ Result := Posicion
43+ else
44+ Result := Fibonacci(Posicion - 1 ) + Fibonacci(Posicion - 2 );
45+ end ;
46+
47+ var
48+ Numero: Integer;
49+ begin
50+ NumerosDescendentes(100 );
51+
52+ WriteLn(' *****************************' );
53+ WriteLn(' Dificultad extra' );
54+ WriteLn(' *****************************' );
55+ Write(' Escribe un numero entero: ' );
56+ ReadLn(Numero);
57+ WriteLn(' El Factorial de ' , Numero, ' es: ' , Factorial(Numero));
58+ WriteLn;
59+ Write(' Escribe la posicion de la serie fibonacci: ' );
60+ ReadLn(Numero);
61+ WriteLn(' En la posicion ' , Numero, ' el valor fibonacci es: ' , fibonacci(Numero));
62+ ReadLn;
63+ end .
You can’t perform that action at this time.
0 commit comments