|
PROBLEMAS
Fundamentos de Programación
Fundamentos de Programación I
PRÁCTICA 7
Curso 2002-2003 UNIVERSITAT DE VALÈNCIA
(*) 1. Escribir un programa en C++ que diga cuantas veces se repite
una determinada palabra en una frase. Ejemplo:
Palabra: problema
Frase: Este problema es mas interesante que el problema anterior.
Número de repeticiones: 2
Solución
(*) 2. Escribir un programa que elimine todos los espacios en blanco
de una frase introducida por teclado.
Solución
(*) 3. Escribir un programa que convierta un string a entero. El programa
devolverá también un bool indicando si la conversión se ha podido realizar con éxito
o no. Para convertir un carácter a entero se le resta el código del carácter '0'.
Solución
4. Se dice que la palabra a es un anagrama de la palabra ß si
es posible obtener a cambiando el orden de las letras de ß. Por ejemplo, MORA y ROMA son anagramas
de RAMO.
Realizar un programa que diga si dos palabras introducidas por teclado
son anagramas entre si. Considerar que las palabras solo contienen letras mayúsculas.
Solución
(*) 5. Hacer un programa para calcular operaciones sobre puntos en un
espacio 2-D. Los puntos tendrán coordenadas (x, y) almacenadas en un registro para cada
punto. El programa pedirá el punto1 y el punto2 y calculará la distancia, el vector suma y
el vector resta, y los mostrará por pantalla.
Solución
(*) 6. Crear un programa para realizar cálculos sobre triángulos
en un espacio 2-D. El programa debe permitir la introducción de las coordenadas (x, y) para
los tres vértices del triángulo, que deberán ser almacenados en un registro. Posteriormente, se deberá
poder calcular el área del triángulo, el perímetro del triángulo y el punto
medio del triángulo.
Area = base * altura / 2 ó
Area = 1/2*((x3.x-x1.x)*(x1.y-x2.y)+(x3.y-x1.y)*(x2.x-x1.x))
Perimetro = (distancia(x1,x2) + distancia(x2,x3) + distancia(x3,x1))
Punto medio = ((x1.x + x2.x + x3.x) / 3, (x1.y + x2.y + x3.y) / 3)
Solución
(**) 7. Hacer un programa para almacenar la información de una
tabla de clasificación de un equipo de fútbol en un campeonato. Se utilizará un registro para
almacenar el nombre del equipo, los puntos obtenidos, los partidos ganados, empatados y perdidos, los goles
a favor y los goles en contra. Se utilizará un vector para almacenar la información
de los 10 equipos del campeonato. Se generarán datos aleatorios para rellenar los valores de cada
equipo para hacer pruebas. El programa indicará, después de los cálculos aleatorios, cuales
son los equipos primero y último, mostrando la información completa. También se podrá mostrar
información completa sobre la clasificación.
Solución
8. Crear un programa que gestione una agenda de direcciones. El programa
debe permitir añadir nuevas entradas, borrar entradas existentes y buscar entradas por apellido.
La información de cada entrada de la agenda debe constar de nombre, apellidos, dirección,
teléfono y e-mail. La implementación de la agenda se realizará mediante un vector
de estructuras.
Solución
|