ejercicios de funciones

12
EJERCICIOS DE FUNCIONES

Upload: kera

Post on 19-Mar-2016

44 views

Category:

Documents


2 download

DESCRIPTION

Ejercicios de funciones. 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

TRANSCRIPT

Page 1: Ejercicios de funciones

EJERCICIOS DE FUNCIONES

Page 2: Ejercicios de funciones

FUNCION CALCULO DEL FACTORIAL

entero e,n,pot,facfuncion 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) Finprocedimiento ingreso(var entero n)inicio

escriba "Ingresar el numero "lea n

fin

inicio//llamar ingreso(base,expo)llamar ingreso(n)fac<-FACTORIAL(n)Escriba "El factorial es ", fac

fin

Page 3: Ejercicios de funciones

entero base, expo,potprocedimiento ingreso(var entero base,var entero expo)inicioescriba "Ingresar la base "lea baseEscriba " Ingresar el exponente "lea expofinprocedimiento Potencia(entero base , entero expo, var entero potencia)entero iiniciopotencia <-1para I <-1 hasta expo hagapotencia <- potencia * basefin parafininiciollamar ingreso(base,expo)llamar potencia(base,expo,pot)Escriba "Potencia es ", potfin

Page 4: Ejercicios de funciones

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

Page 5: Ejercicios de funciones

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

Page 6: Ejercicios de funciones

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.

Page 7: Ejercicios de funciones

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; ffunción

Page 8: Ejercicios de funciones

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.

Page 9: Ejercicios de funciones

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

Page 10: Ejercicios de funciones

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

Page 11: Ejercicios de funciones

// 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; Escribir(“Introduzca un número entero: “); LeerEntero(número); fsi fmientras

si encontrado entonces Escribir(“El primer primo es “); EscribirEntero(número); si no Escribir(“No se ha introducido ningún primo.“); fsi falgoritmo

Page 12: Ejercicios de funciones

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 primo := Falso; si no d := d+1; fsi fmientras fsi devuelve primo; ffunción