Vous êtes sur la page 1sur 11

UNIVERSIDAD CENTROAMERICANA FACULTAD DE CIENCIA, TECNOLOGIA Y AMBIENTE DEPARTAMENTO DE CIENCIAS BASICAS COORDINACION DE CIENCIAS NATURALES

Anlisis numrico y programacin Elaboracin de programas

Nombre del docente: Pedro Navarrete Carrera: Ingeniera Industrial Nombres: Hctor Sevilla Mario Arguello Nelson Incer Fernando Castro Julio Quintanilla

Managua, 2 de diciembre de 2010

Ejercicio 6: Escriba un algoritmo cuyos datos de entrada sean los valores de tres nmeros y genere como salida el nmero mayor. o Programa:

program numeros; uses crt; var; N1: integer; {primer dato} N2: integer; {segundo dato} N3: integer; {tercer dato} Begin Clrscr; Write (el primer dato:); readln (N1); Write (el segundo dato:); readln (N2); Write (el tercer dato:); readln (N3); If ((N1>N2) and (N1>N3)) then Write (el mayor es N1); If ((N2>N1) and (N2>N3)) then Write (el mayor es N2); If ((N3>N1) and (N3>N2)) then Write (el mayor es N3); readln; End.

Ejercicio 7: Elabore un algoritmo que utilice la frmula de Hern, para calcular el rea de un tringulo de lados conocidos. A=[s(s-a)(s-b)(s-c)]1/2, donde . o Algoritmo:

Programa:

program heron; uses crt; var a: real; {primer lado del triangulo} b: real; {segundo lado del triangulo} c: real; {tercer lado del triangulo} area: real; {area del triangulo} begin clrscr; write (primer lado del triangulo:); readln (a); write (segundo lado del triangulo:); readln (b); write (tercer lado del triangulo:); readln (c); area:=sqrt(((a+b+c)/2)*(((a+b+c)/2)-b)*(((a+b+c)/2)-c)*(((a+b+c)/2)-a)); writeln (area=, area); readln; end.

Ejercicio 8: Determinar si con tres segmentos de longitud conocida, a, b y c se puede formar un tringulo. Si puede formarse, clasificarlo en equiltero, issceles o escaleno. Con tres segmentos puede formarse un tringulo si la suma de dos cualquiera de ellos es mayor que el tercer lado. o Programa:

program triangulo; uses crt; var a: real; {primer segmento del triangulo} b: real; {segundo segmento del triangulo} c: real; {tercer segmento del triandulo} begin clrscr; writeln (primer segmento del triangulo:); readln (a); writeln (segundo segmento del triangulo:); readln (b); writeln (tercer segmento del triangulo:); readln (c); begin if ((a+b)>c) and ((b+c)>a) and ((a+c)>b) then begin if ((a=b) and (b=c)) then writeln (el triangulo es equilatero) else begin if ((a=b) or (b=c) or (a=c)) then writeln (el triangulo es isosceles) else writeln (el triangulo es escaleno); end; end; end; if ((a+b)>c) and ((b+c)>a) and ((a+c)>b) then else writeln (los segmentos no forman un triangulo); readln; end.

Ejercicio 9: Elabore un algoritmo para resolver ecuaciones cuadrticas: ax2 + bx +c = 0, empleando la formula cuadrtica: El algoritmo deber manejar los casos regulares siguientes: a) Una raz doble b2-4ac=0 b) Races complejas b2-4ac<0 c) Una ecuacin no cuadrtica a=0 d) Una ecuacin ilegal a=0 y b=0 o Programa:

program races; uses crt; var a: real; {coeficiente de termino cuadrtico} b: real; {coeficiente de termino lineal} c: real; {termino independiente} X1: real; {primera raz} X2: real; {segunda raz} begin clrscr; write (coeficiente de termino cuadrtico:); readln (a); write (coeficiente de termino lineal:); readln (b); write (termino independiente:); readln (c); if ((b*b)-(4*a*c))=0 then begin X1:=-b/(2*a); X2:=-b/(2*a); Writeln (X1=, X1); Writeln (X2=, X2); End; Begin If ((b*b)-(4*a*c))<0 then Writeln (X1 y X2 son raices imaginarias); End; Begin If a=0 then Writeln (es una ecuacion no cuadratica); End; Begin If (a=0) and (b=0) then Writeln (es una ecuacion ilegal); End; If ((b*b)-(4*a*c))>0 then Begin X1:=(-b+sqrt((b*b)-(4*a*c)))/(2*a); X2:= (-b-sqrt((b*b)-(4*a*c)))/(2*a); Writeln (X1=, X1); Writeln (X2=, X2); Readln; End; End.

Ejercicio 10: Escriba un algoritmo para determinar el peaje segn el tipo de vehculo. Los automviles tienen peaje C$5, las camionetas pagan C$10 y los buses pagan C$20. Los camiones pagan peaje proporcional a sus toneladas de peso: si su peso es menor e=que el peso mximo permisible, peaje=5*peso+1000. Son conocidos el tipo de vehculo, el peso de los camiones y el peso mximo permisible. o Programa:

Program peaje; Uses crt; Var Vehiculo: string[10]; {tipo de vehiculo} Automvil: string[10]; {automvil} Camioneta: string[10]; {camioneta} Bus: string[10]; {bus} Camion: string[10]; {camion} W: real; {peso del camion} Pp: real; {peso permisible} P: real; {peaje a pagar} Begin Clrscr; Write (tipo de vehiculo:); readln (vehiculo); Begin If vehiculo=automovil then Write (el peaje es de 5 cordobas); End; Begin If vehiculo=camioneta then Write (el peaje es de 10 cordobas); End; Begin If vehiculo=bus then Write (el peaje es de 20 cordobas); End; Begin If vehiculo=camion then Write (peso del camin:); readln (w); Write (peso maximo permissible:); readln (pp); End; Begin If w>pp then Begin P:=(5*w)+1000; Write (el peaje es: ,p:4:0); readln; End; If w<pp then Begin P:=(5*w); Write (el peaje es: ,p:4:0); readln; End; End; End.

Ejercicio 25:

Elabore un algoritmo que calcule la edad promedio por sexo y el porcentaje de mujeres y hombres menores de 20 aos casados, de una encuesta en que se pregunt la edad, sexo y estado civil. o uses crt; var n: integer; {numero de encuestados} sem: integer; {suma de edades de mujeres} seh: integer; {suma de edades de hombres} cm: integer; {cantidad de mujeres} ch: integer; {cantidad de hombres} i: integer; {contador del for} e: integer; {edades de los encuestados} sexo: string[6]; {sexo de los encuestados} hombre: string[6]; {sexo masculino} mujer: string[6]; {sexo femenino} estado: string[6]; {estado civil} casado: string[6]; {estado civil casado} epm: real; {edad promedio de mujeres} eph: real; {edad promedio de hombres} phmc20: real; {porcentaje de hombres y mujeres casados menores de 20 aos} chmc20: integer; {cantidad de hombres y mujeres casados menores de 20 aos} begin clrscr; write (el numero de encuestados:); readln (n); for i:=1 to n do begin write (edades de los encuestados:); readln (e); write (estado civil de los encuestados:); readln (estado); write (sexo de los encuestados:); readln (sexo); end; if sexo:=mujer then begin sem:=sem+e; cm:=cm+1; epm:=sem/cm; writeln (suma de edades de mujeres=, sem); writeln (cantidad de mujeres=, cm); writeln (edad promedio de mujeres=, epm); end; if sexo=hombre then begin seh:=seh+e; ch:=ch+1; eph:=seh/ch; writeln (suma de edades de hombres=, seh); writeln (cantidad de hombres=, ch); writeln (edad promedio de hombres=, eph); end; begin if ((estado=casado) and (e<20)) then begin chmc20:=chmc20+1; p:=(chmc20/n)*100; writeln (la cantidad de hombres y mujeres casados menores de 20 aos es:, chmc20); writeln (el porcentaje de hombres y mujeres casados menores de 20 aos es:, p); readln; end; end; end. Programa: Program encuestados;

Ejercicio 26: Escriba un algoritmo para calcular la media aritmtica, la media geomtrica, la varianza y la desviacin estndar de una cantidad conocida de datos. ( ( ) )

Programa:

Program medias; Uses crt; Var n: integer; {numero de datos} i: integer; {contador del for} x: array [1..20] of real; sx: real; {suma de los valores de x} xm: real; {media aritmtica} xg: real; {media geomtrica} va: real; {varianza} begin clrscr; write (numero de datos n=); readln (n); for i:=1 to n do begin write (valor de x*,i,+=); read(x*i+); end; sx:=0; for i:=1 to n do sx:=sx+x[i]; xm:=sx/n; xg:=1; for i:=1 to n do xg:=xg*x[i]; xg:=exp((1/n)*ln(xg)); va:=0 for i:=1 to n do va:=va+(xm-x[i])*(xm-x[i]); va:=va/(n-1); writeln (media aritmetica=, xm:4:0); writeln (media geometrica=, xg:4:0); writeln (varianza=, va:6:4); readln; readln; end.

Ejercicio 27: El factorial de un entero positivo n es: n!=1*2*3*..*(n-1)*n, y 0!=1. Escriba un algoritmo para calcular n!, dado un valor de n. o Programa:

Program factorial; Uses crt; Var n: integer; {numero a calcular el factorial} f: real; {factorial} i: integer; {contador del for} begin clrscr; write (numero a calcular el factorial:); readln (n); f:=1; for i:=1 to n do f:=f*i; writeln (el factorial es:, f:4:0); readln; end.

Ejercicio 28: El coeficiente binomial ( ), para enteros positivos i y n con i<n est dado por: ( ) Escriba un algoritmo que calcule el coeficiente binomial para i y n dados. o Programa:
( )

Program coeficiente; Uses crt; Var n: integer; {primer ndice} i: integer; {segundo ndice} fn: integer; {factorial de n} f1: integer; {factorial de 1} fi: integer; {factorial de i} fni: integer; {factorial de n-i} j: integer; {contador del for} c: real; {coeficiente} begin write (primer indice:); readln (n); write (segundo indice:); readln (i); if i<n to then begin fn:=1; for j:=1 to n do fn:=fn*j; end; begin f1:=1; for j:=1 to i do fi:=fi*j; end; begin fi:=1; for j:=1 to n-i do fni:=fni*j; end; c:=fn/(fni*fi); write (el coeficiente es:, c); readln; end.

Ejercicio 29: Los coeficientes del binomio de Newton (ab)n, para un n dado, se calculan con la combinatoria: escriba un algoritmo que determine los coeficientes de Newton. ( ) o Programa:

Program binomio; Uses crt; Var n: integer; i: integer; j: integer; fn: real; fni: real; fi: real; cn: array [1..20] of real; begin clrscr; write (valor de n:); readln (n); for i:=0 to n do fn:=fn*i; for i:=0 to n do begin for j:=1 to i do fi:=fi*j; for j:=1 to n-1 do fni:=fni*j; cn[i]:=(fn/(fni*fi)); end; for i:=0 to n do writeln (el valor de cn es:, cn*i+:4:0); readln; end.

Vous aimerez peut-être aussi