guia de programas en free pascal

12
GUIA DE APRENDIZAJE Unidad 4 Elaborado por: Randy Alberto Matú León. Ingeniería en Redes MTI Melissa Blanqueto Estrada Chetumal, Q. Roo, 16 de noviembre de 2011. AD-140 Diseño de Algoritmos

Upload: randy-alberto-matu-leon

Post on 20-Nov-2015

13 views

Category:

Documents


4 download

DESCRIPTION

Programas en Free Pascal básicos.

TRANSCRIPT

  • GUIA DE APRENDIZAJE

    Unidad 4

    Elaborado por: Randy Alberto Mat Len.

    Ingeniera en Redes

    MTI Melissa Blanqueto Estrada

    Chetumal, Q. Roo, 16 de noviembre de 2011.

    AD

    -14

    0 D

    ise

    o d

    e A

    lgo

    ritm

    os

  • Diseo de algoritmos

    1

    CONTENIDO

    ACTIVIDADES .................................................................................................................................................. 2

    PROGRAMA 1. .................................................................................................................................................. 2

    PROGRAMA 3. .................................................................................................................................................. 4

    PROGRAMA 4. .................................................................................................................................................. 5

    PROGRAMA 5. .................................................................................................................................................. 6

    PROGRAMA 6. .................................................................................................................................................. 7

    PROGRAMA 7. .................................................................................................................................................. 8

    PROGRAMA 8. .................................................................................................................................................. 9

    PROGRAMA 9. ................................................................................................................................................ 10

    PROGRAMA 10. .............................................................................................................................................. 11

  • Diseo de algoritmos

    2

    ACTIVIDADES

    U4 Prctica 1

    Crear las siguientes funciones utilizandoLazarous y Free Pascal.

    PROGRAMA 1. 1. Disear una funcin que calcule la media de tres nmeros ledos del teclado y poner un ejemplo de su aplicacin. program prommedio1; {Autor: Randy alberto mat len Descripcin: Disear una funcin que calcule la media de tres nmeros ledos del teclado y poner un ejemplo de su aplicacin. Fecha: 16/nov/2011. } function funcionX(acum:real) :real; begin funcionX:= (acum) / 3; end; var i:integer; media,acum,x:real; begin acum:=0; writeln('-----Calculo de funcion de la media de 3 numeros-----'); for i:=1 to 3 do begin writeln('Introduce el valor de X:'); readln(x); acum:=acum+x; end; media:=funcionX(acum); writeln('El resulatdo de la funcion es:',media:5:2); readln; end.

  • Diseo de algoritmos

    3

    2. Disear la funcin FACTORIAL que calcule el factorial de un nmero entero en el rango de 5 a 50. .PROGRAMA 2. program Factorialnum2; {Autor: Randy alberto mat len Descripcin: Disear una funcin que calcule el factorial de un numero. Fecha: 16/nov/2011. } var numero: integer; function factorial( num : integer) :integer; begin if num = 1 then factorial := 1 else factorial := num * factorial( num-1 ); end; begin writeln('------PROGRAMA QUE CALCULA EL FACTORIAL DE UNA NUMERO ENTRE 5 Y 50----'); writeln(); writeln( 'Introduce un numero:' ); readln(numero); if (numero >=5) and (numero

  • Diseo de algoritmos

    4

    3 .Disear una funcin que encuentre el mayor de dos nmeros enteros. PROGRAMA 3. program mayor3; {Autor: Randy alberto mat len Descripcin: Disear una funcin que encuentre el mayor de dos nmeros enteros. Fecha: 16/nov/2011. } function mayor(num1,num2:integer):integer; begin if num1> num2 then begin writeln('el numero mayor es:',num1); end else begin writeln('el numero mayor es:',num2); end; end; var c,num1,num2:integer; begin writeln('Introduce el numero 1:'); readln(num1); writeln('Introduce el numero2:'); readln(num2); c:=mayor(num1,num2); readln end.

  • Diseo de algoritmos

    5

    4. Disear una funcin que calcule Xn para x, variable real y n variable entera.

    PROGRAMA 4. program potencia4; {Autor: Randy alberto mat len Descripcin: Disear una funcin que calcule Xn para x, variable real y n variable entera; Fecha: 16/nov/2011. } uses math; function potencia(x:real;n:integer) :real; begin writeln('Introduce el valor de x:'); readln(x); writeln('Introduce el valor de n:'); readln(n); potencia:= (x**n); end; var c,x:real; n:integer; begin writeln('------Programa que calcula X elevado a una potencia n----'); c:=potencia(x,n); writeln('el valor de la potencia es:',c:5:2); readln end.

  • Diseo de algoritmos

    6

    5. Disear un procedimiento que acepte un nmero de mes, un nmero de da y un nmero de ao y los visualice en el formato dd/mm/aa. Por ej. Los valores 19, 09,1987 se visualizaran como 19/9/87. PROGRAMA 5. program fecha5; {Autor: Randy alberto mat len Descripcin: Disear un procedimiento que acepte un nmero de mes, un nmero de da y un nmero de ao y los visualice en el formato dd/mm/aa. Por ej. Los valores 19, 09,1987 se visualizaran como 19/9/87.. Fecha: 16/nov/2011. } var Dia,Mes,Fecha: integer; procedure Imprimir (Dia,Mes,Fecha:integer); begin fecha:=Fecha mod 100; writeln(' ',Dia,'/',Mes,'/',Fecha); end; begin writeln('--PROGRAMA QUE MUESTRA LA FECHA EN EN SIGUIENTE FORMATO 12/20/89---'); writeln(); repeat write('Introduce un numero de dia:'); readln(Dia); if Dia > 31 then begin writeln('El numero no es valido. Introduce uno valido'); end; until Dia 12 then begin writeln('El numero no es valido. Introduce uno valido'); end; until Mes

  • Diseo de algoritmos

    7

    6. Disear una funcin que permita devolver el valor absoluto de un nmero. PROGRAMA 6. program valorabsoluto6; {Autor: Randy alberto mat len Descripcin: programa que calcula la el valor absoluto de un numero. Fecha: 16/nov/2011. } uses math; function valor(x:real):real; begin valor:= abs(x); end; var x,c:real; begin writeln('------VALOR ABSOLUTO DE UN NUMERO-------'); writeln(); writeln('Introduce un numero para saber su valor absoluto:'); readln(x); c:=valor(x); writeln('El valor absoluto del numero es:',c:5:2); readln end.

  • Diseo de algoritmos

    8

    7. Escribir una funcin booleana Digito que determine si un carcter es uno de los dgitos 0 al 9. PROGRAMA 7. PROGRAM escaracter7; {Autor: Randy alberto mat len Descripcin: programa que dice si un caracter esta entre 0 y 9. Fecha: 16/nov/2011 } Uses Crt; VAR carac: CHAR; respuesta:boolean; FUNCTION verificar(caracter: CHAR) : BOOLEAN; var respuesta:boolean; BEGIN verificar := (caracter >= '0') AND (caracter

  • Diseo de algoritmos

    9

    8. Escribir una funcin Salario que calcule el salario de un trabajador para un nmero dado de horas trabajadas y un salario por hora. PROGRAMA 8. program salario8; {Autor: Randy alberto mat len Descripcin: calcula con una funcin el salario de un trabajador para un nmero dado de horas trabajadas y un salario por hora. Fecha: 16/nov/2011. } var resultado,horas,sueldo: real; function salario(horas, sueldo: real): real; begin salario := (sueldo * horas); end; begin writeln('----PROGRAMA QUE CALCULA EL SALARIO DE UN TRABAJADOR-------'); writeln(); write('Introduce el numero de horas trabajadas:'); readln(horas); write('Introduce el sueldo por hora:'); readln(sueldo); resultado:=salario(horas,sueldo); writeln(''); writeln('El salario del trabajor es:',resultado:5:2); writeln('El salario por hora son:',sueldo:5:2); readln end.

  • Diseo de algoritmos

    10

    9.El nmero de combinaciones de m elementos tomados de n en n es: (m/n) = m! / n!(m-n)!. Disear una funcin que permita calcular el nmero combinatorio (m/n). PROGRAMA 9. program combiaciones9; {Autor: Randy alberto mat len Descripcin: El nmero de combinaciones de m elementos tomados de n en n es: (m/n) = m! / n!(m-n)! Disear una funcin que permita calcular el nmero combinatorio (m/n) Fecha: 16/nov/2011. } uses math; function factorial( num: integer) :integer; begin if num = 1 then factorial := 1 else factorial := num * factorial( num-1 ); end; var m,n,c:integer; Resultado:real; begin writeln('------Programa que calcula combinaciones de m elementos tomados de n en n es: (m/n) = m! / n!(m-n)!------'); writeln(); writeln('introduce el valor de m:'); readln(m); writeln('introduce el valor de n:'); readln(n); c:=(m-n); Resultado:=(factorial(m))/(factorial(n))*(factorial(c)); writeln(); writeln('El resultado es de la operacion (m/n): ',Resultado:5:2); readln end.

  • Diseo de algoritmos

    11

    10. Escribir un procedimiento que convierta un nmero en base 10 a binario. PROGRAMA 10. Program DecimalBinario; {Autor: Randy alberto mat len Descripcin: programa que convierte un numero de decimal a binario. Fecha: 16/nov/2011. } var NumeroDecimal:integer; Procedure Conversion (Numero:integer); var Numero_result:integer; begin while Numero div 2 0 do begin Numero_result:=Numero mod 2; Numero:=Numero div 2; write (' ',Numero_result); //readln; end; Numero_result:=Numero mod 2; write (' ',Numero_result); readln; end; begin writeln('----PROGRAMA QUE CONVIERTE DE DECIMAL A BINARIO-------'); writeln(); writeln ('Escriba un numero en decimal '); read (NumeroDecimal); writeln(''); write('La conversion de decimal a binariio es:'); Conversion(NumeroDecimal); readln end.