La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Ejercicios de funciones

Presentaciones similares


Presentación del tema: "Ejercicios de funciones"— Transcripción de la presentación:

1 Ejercicios de funciones

2 FUNCION CALCULO DEL FACTORIAL
entero e,n,pot,fac funcion FACTORIAL (entero n) : entero entero i, f // segun el resultado f puede ser real inicio f<-1 para i<-1 hasta n haga f<-f*i fin para retorne (f) Fin procedimiento ingreso(var entero n) escriba "Ingresar el numero " lea n fin //llamar ingreso(base,expo) llamar ingreso(n) fac<-FACTORIAL(n) Escriba "El factorial es ", fac

3 entero base, expo,pot procedimiento ingreso(var entero base,var entero expo) inicio escriba "Ingresar la base " lea base Escriba " Ingresar el exponente " lea expo fin procedimiento Potencia(entero base , entero expo, var entero potencia) entero i potencia <-1 para I <-1 hasta expo haga potencia <- potencia * base fin para llamar ingreso(base,expo) llamar potencia(base,expo,pot) Escriba "Potencia es ", pot

4 Ejercicio Construir una función suma_dígitos(n) que calcule la suma de las cifras
de un número y un algoritmo que realice una llamada correcta a dicha función.

5 algoritmo suma de las cifras de un número
var número: entero; fvar Escribir(“Introduzca un entero: “); LeerEntero(número); Escribir(“La suma de los dígitos de entero introducido es “); EscribirEntero(suma_dígitos(número)); falgoritmo función suma_dígitos(n: entero): entero var suma: entero; fvar suma := 0; mientras n ≠ 0 entonces suma := suma + (n mod 10); n := n div 10; fmientras devuelve suma; ffunción

6 Ejercicio Construid una función combinaciones(n,m) que calcule el valor de la
función matemática combinaciones. Esto es, el número de formas en que se puede elegir un subconjunto de m elementos a partir de un conjunto de n elementos. Es- cribid también un algoritmo que utilice correctamente esta función.

7 algoritmo combinaciones de n elementos tomados m a m
var n, m: entero fvar Escribir(“Introduzca el número de elementos del conjunto: “); LeerEntero(n); Escribir(“Introduzca el número de elementos del subjconjunto: )”; LeerEntero(m); Escribir(“Hay “); EscribirEntero(combinaciones(n,m)); Escribir(“ formas distintas de elegir “); EscribirEntero(m); Escribir(“ elementos “); Escribir(“ de un conjunto de “); EscribirEntero(n); Escribir(“ elementos.”); falgoritmo función combinaciones(n1, n2: entero): entero devuelve factorial(n1) / (factorial(n2) * factorial(n1-n2)); ffunción función factorial(n: entero): entero var r, i: entero fvar r:=1; si n > 1 entonces para i:=2 hasta n hacer r:=r*i; fpara fsi devuelve r;

8 Ejercicio Construid una función dec_a_bin(n) que calcule la representación en
binario del número n. Esribid un algoritmo que llame correctamente a esta función.

9 algoritmo decimal a binario (n: entero): booleano
var número: entero; fvar Escribir(“Introduzca un entero positivo: “); LeerEntero(número); Escribir(“La representación en binario de “); EscribirEntero(número); Escribir(“ es “); EscribirEntero(dec_a _bin(número)); falgoritmo función dec_a_bin (n: entero): entero var binario, coeficiente: real fvar binario := 0; coeficiente := 1; mientras ( n ≠ 0 ) hacer binario := binario + coeficiente* (n mod 2); coeficiente := coeficiente*10; n .= n div 2; fmientras devuelve binario; ffunción

10 Ejercicio Construir un algoritmo que encuentre el primer primo en una lista de N enteros introducidos por el usuario.

11 // Algoritmo primer primo de una lista
var número, i, N: entero; encontrado: booleano fvar Escribir(“Introduzca el número de elementos de la lista: “); LeerEntero(N); i:=1; encontrado := F; Escribir(“Introduzca un número entero: “); LeerEntero(número); mientras ( (i ≤ N) y (no encontrado) ) hacer si (primo(número)) entonces encontrado := V; si no i := i+1; fsi fmientras si encontrado entonces Escribir(“El primer primo es “); EscribirEntero(número); Escribir(“No se ha introducido ningún primo.“); falgoritmo

12 función primo (n: entero): booleano
var d: entero; primo: booleano fvar si ( n=1 ) entonces primo := Falso; si no primo := Verdadero; d := 2; mientras ( primo y d*d ≤ n ) hacer si ( n mod d = 0 ) entonces d := d+1; fsi fmientras devuelve primo; ffunción


Descargar ppt "Ejercicios de funciones"

Presentaciones similares


Anuncios Google