Escribe en código de Lenguaje Pascal, los programas para dar ...

a) Escribe una función EsPalindromo() al que se le pase una cadena de caracteres y devuelva un valor que determine si es palíndromo. Trabajo Práctico 9.
113KB Größe 6 Downloads 108 vistas
INFORMATICA DEL CBU – AÑO 2016 Fac. Cs. Exactas y Tecnología - UNT

TRABAJO PRÁCTICO N° 9

Prof. Ing. Fátima Martínez

TEMAS: FUNCIONES, ARREGLOS (VECTORES)

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 pseudocódigo: Problema 1)

Función o procedimiento

a) Refina y codifica el siguiente diseño en pseudocódigo. Convierte cada uno de los procesos indicados en procedimientos o funciones. Realiza control de los datos. ALGORITMO Edades ENTRADA: N: entero >0 fech_nac : d_nac, m_nac, a_nac : enteros >0 DNI : entero largo SALIDA: edad: entero >0; mensaje: cadena de caracteres VARIABLES: i: entero >=0 CONSTANTES: d_hoy , m_hoy, a_hoy : enteros >0 // considerar la fecha como constante para abreviar la solución del problema E1. Leer (N) E2. HACER N VECES (i=1..N) LEER(DNI) LEER(fech_nac) edad  calcular_edad(fech_nac) Escribir Mensaje_si_es_mayor_o_menor_de_edad(edad, DNI) FIN_DEL_HACER E3. PARAR. Problema 2)

Números primos

a) Modifica el programa del problema 4 del TP 8, de modo que el programa principal (main) invoque a una función EsPrimo(), al que se le pasará un número entero positivo, generado aleatoriamente, y devolverá un valor que indique si dicho número es primo. b) El programa principal almacenará en un arreglo llamado Primos[ ] los números generados que sean primos. Al final presentará estos valores. Problema 3)

Palíndromo

a) Escribe una función EsPalindromo() al que se le pase una cadena de caracteres y devuelva un valor que determine si es palíndromo.

Trabajo Práctico 9

Página 1

Trabajo Práctico N° 9

INFORMATICA DEL CBU

Prof. Ing. Fátima Martínez

b) En el programa principal, ingresa una palabra o frase por teclado que luego será pasada por parámetro a la función EsPalindromo(). c) Modifica el programa de manera que se pueda ingresar una cantidad N de palabras a determinar y en cada caso el programa deberá decir si es palíndromo. NOTA: Una palabra o expresión es Palíndromo si es igual cuando se lee de izquierda a derecha que de derecha a izquierda. Problema 4)

Puntos Dentro/Fuera/Sobre la circunferencia

a) Considera una circunferencia de radio R=10 que tiene centro en Xc=15 y Yc=12. Alrededor de la circunferencia se generan 20 puntos aleatorios sobre un rectángulo de lados a=30 y b=24. Determina cuántos puntos se encuentran Dentro/Fuera/Sobre la circunferencia. b) Para la detección de la ubicación de esos puntos, escribe una función EstaEn( ), invocada desde el programa principal, que recibirá dos parámetros: la coordenada Xpt y la coordenada Ypt de cada punto aleatorio.

R = 10 b = 24

Yc = 12

Xc = 15

a = 30 Problema 5)

Tabla de factoriales

n

n/3

n!

1

0

1

3

1

6

5

1

120

7

2

5040

:

:

:

// n! es el factorial del número entero n. Página 2

INFORMATICA DEL CBU – AÑO 2016 Fac. Cs. Exactas y Tecnología - UNT

TRABAJO PRÁCTICO N° 9

Prof. Ing. Fátima Martínez

a) Escribe una función de nombre Factorial que calcule el factorial de un número y otra función de nombre Cociente3 que calcule el cociente indicado. b) En el programa principal invoca esas funciones para distintos valores de la variable n (>0) ¿Hasta qué valor de n se obtienen buenos resultados? ¿Por qué? Realiza los ajustes de manera que calcule los máximos factoriales posibles. c) Los valores devueltos por la función Factorial y por la función Cociente3 deberán ser guardados en sendos arreglos de una dimensión (vectores) Fac[ ] y Coc[ ]. d) Al final, el programa principal, debe mostrar los valores de los arreglos en el formato de tabla como aparece arriba. NOTA: La definición de factorial establece que para todo n entero natural, se llama factorial de n al producto de todos los enteros entre 1 y n. Se define 0! = 1, para que la relación n! = n × (n - 1)! sea también válida para n = 1.

Trabajo Práctico 9

Página 3