Trabajos

Solo disponible en BuenasTareas
  • Páginas : 6 (1351 palabras )
  • Descarga(s) : 0
  • Publicado : 25 de noviembre de 2010
Leer documento completo
Vista previa del texto
FUNCIONES.

-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.
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

-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 puedeelegir un subconjunto de m elementos a partir de un conjunto de n elementos. Escribid también un algoritmo que utilice correctamente esta función.
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): enterovar 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

-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.
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

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

algoritmo
var número, i, N: entero; encontrado: booleano fvar
Escribir(“Introduzca el número deelementos 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);
fsifmientras
si encontrado entonces
Escribir(“El primer primo es “); EscribirEntero(número);
si no
Escribir(“No se ha introducido ningún primo.“);
fsi
falgoritmo
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 ( primoy d*d ≤ n ) hacer
si ( n mod d = 0 ) entonces
primo := Falso;
si no
d := d+1;
fsi
fmientras
fsi
devuelve primo;
ffunción

-Calcular la potencia de un n numero

entero base,expo,pot
funcion Potencia(entero base , entero expo): entero
entero i, resp
inicioresp<-1
para I <- 1 hasta...
tracking img