INFORMATICA DEL CBU – AÑO 2016 Fac. Cs. Exactas y Tecnología - UNT
TRABAJO PRÁCTICO N° 8
Prof. Ing. Fátima Martínez
TEMAS: PROCEDIMIENTOS, ESTRUCTURAS DE CONTROL
Escribe en código de Lenguaje Pascal, los programas para dar solución a los problemas planteados. Genera en cada caso, primero un diagrama de flujo y un algoritmo en pesudocódigo. Problema 1)
Resolución de dos ecuaciones lineales con dos incógnitas a1x + b1y = c1;
a2x + b2y = c2
a) Escribe un programa que solicite los coeficientes a, b y el término independiente c, de cada una de las 2 ecuaciones lineales con dos incógnitas (x e y) y encuentre el valor de las mismas. b) Para determinar el valor de las incógnitas, escribe un procedimiento CalculaIncognitas(), al que se le pasará a, b y c de ambas ecuaciones. Será invocado desde el programa principal, solamente si el determinante es mayor que cero. c) Modifica el programa del pto. a) para que permita ingresar N sistemas lineales de 2 incógnitas y determine el valor de las mimas. Problema 2)
Los dígitos de un número entero
a) Dado un número entero X, separar cada uno de sus dígitos y mostrarlos por pantalla indicando además qué tipo de unidad es. Por ejemplo para el número 1538, mostrará: 8 Unidades; 3 Decenas; 5 Centenas; 1 unidad de mil. b) Escribe un programa que ingrese N números enteros positivos de 4 dígitos, los separe en sus dígitos y determine para cada uno el tipo de unidad. c) Para separar el número en sus dígitos, escribe un procedimiento SeparaDigitos(), invocado desde el programa principal, al que se le pasará el número ingresado e indique la unidad a la que pertenece cada dígito. Problema 3)
Raíces de una ecuación cuadrática
a) Dados los coeficientes a, b y c de una ecuación cuadrática, analizar su discriminante D para saber el tipo de raíces que tendrá. Si resultan ser complejas conjugadas, no calcularlas, simplemente indicar esta situación mediante un mensaje por pantalla y finalizar. Si en cambio el discriminante es mayor o igual a cero, calcular ambas raíces e indicar mediante mensajes si es una raíz doble o dos raíces reales, mostrando también los valores de ambas raíces. b) Escribe un programa que pida los valores a, b y c, de N ecuaciones cuadráticas.
Trabajo Práctico Nº 8
Página 1
Trabajo Práctico N° 8
INFORMATICA DEL CBU
Prof. Ing. Fátima Martínez
c) Para determinar las raíces, escribe un procedimiento DeterminaRaices() al que se le pase los valores de a, b, c y D. El procedimiento determinará las raíces de la ecuación y mostrará por pantalla el mensaje y el valor de las raíces. Será invocado desde el programa principal sólo si D es mayor o igual a cero. Problema 4)
Números primos
a) Escribe un programa que genere números aleatorios entre un límite inferior y un límite superior ingresados por teclado y determine si el número generado es primo. b) Para determinar si un número primo, escribe un procedimiento EsPrimo() que será invocado desde el programa principal, al que se le pasará el número generado. El procedimiento presentará por pantalla aquellos números que sean primos. Problema 5)
Lados de un triángulo rectángulo
a) Escribe un programa que genere 3 valores enteros aleatorios a, b, y c correspondientes a los lados de un triángulo. Estos valores estarán en el rango entre 1 y 25 para cada lado. b) Escribe un procedimiento EsRectangulo() invocado desde el programa principal, que recibirá los valores de los lados. Determinará si pertenecen a un triángulo rectángulo y entonces mostrará los valores de a, b, y c (lados del triángulo). Problema 6)
Cuántas series aparecen
a) Determinar cuántas series de números estrictamente crecientes aparecen al generar 15 números enteros positivos. b) Escribe un programa que genere números aleatorios en el rango 0 a 10, y determine el número de series estrictamente crecientes. Ejemplo:
3, 4, 1
1, 8,10, 2
6, 4,
3,5,8,9, 3
1, 0,2,4
Son 4 series.
4
c) Para ello, escribe un procedimiento CuentaSerie(), invocado desde el programa principal, el que recibirá, al menos, el número generado en forma aleatoria. Nota: determina otros parámetros que pueda necesitar. Sugerencia: utiliza una variable especial llamada bandera o interruptor.
Página 2