



Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Asignatura: Introducción a la Programación, Profesor: , Carrera: I. T. Infor. Sistemas, Universidad: UCA
Tipo: Ejercicios
1 / 5
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!




1.- Realiza un programa que declare un vector de 10 enteros y a través de funciones, lo inicialice y lo visualice por pantalla.
2.- Escribe un programa que lea diez enteros comprendidos entre 1 y 10, los almacene en un vector y escriba por pantalla la cantidad de elementos de cada número que contiene.
Ejemplo: Dado el siguiente vector [2, 2, 2, 3, 3, 4, 4, 4, 7, 7]
La salida producida sería:
Existen 3 elementos del número 2 Existen 2 elementos del número 3 Existen 3 elementos del número 4 Existen 2 elementos del número 7
3.- Realiza un programa que escriba por pantalla el máximo de los elementos de un vector. Para ello debes usar las funciones cuyos prototipos se describen a continuación y utilizar aritmética de punteros para acceder a los elementos del vector.
4.- Escribe un programa que normalice los 20 números reales que están almacenados en un vector estadisticas. Para llevar a cabo esta normalización, se debe dividir cada número por el máximo valor del vector de forma que los valores resultantes estén comprendidos entre 0 y 1. Realiza una versión devolviendo el resultado en el mismo vector y otra que construya un nuevo vector normalizado.
5.- Dada la siguiente definición:
int vector[4]={1, 7, 3, 4};
Indica que valor resulta de la evaluación de las siguientes expresiones:
1.- vector + ( (vector + 1)) 2.- *(vector + 3)
6.- Realiza un programa que, dado un vector con 15 números enteros distintos, identifique si los valores que el usuario introduzca a continuación, están o no contenidos en el vector indicando la posición del elemento en caso de existir. El programa finalizará cuando se introduzca un valor 0.
7.- Implementa un programa que realice el producto escalar de dos vectores.
8.- Realiza un programa que calcule la desviación típica de una serie de números reales almacenados en un vector
9.- Escribe un programa que dado un vector desordenado de n enteros, elimine los valores duplicados y obtenga el número de elementos restantes.
10.- Implementa un programa que convierta números enteros positivos menores que 10000 en base 10 a su representación en octal.
11.- Realiza un programa que dada una matriz cuadrada de números reales, calcule una segunda matriz traspuesta de la primera, escribiendo el resultado por pantalla..
12.- Realiza un programa que dadas dos matrices cuadradas de enteros, obtenga una matriz producto de las anteriores e imprima ese resultado por pantalla.
13.- Implementa una función que permita copiar todos los elementos de una matriz cuadrada de enteros en otra matriz.
14.- Realiza una función int compara(int A[N][N], int B[N][N]) que determine si dos matrices cuadradas de enteros son iguales. La función devolverá 1 si las matrices son iguales y 0 en caso contrario.
15.- Realiza una función que compruebe si una matriz es simétrica. La función devolverá 1 si la matriz es simétrica y 0 en caso contrario.
16.- Dada una matriz A de enteros de dimensión nxn que satisface la siguiente propiedad: ∀ i : 1≤ i ≤ n ∀ j : 1≤ j ≤ n a (^) i , j ≤ a (^) i,j+1 , implementa un programa que determine si existen dos elementos ubicados en la diagonal principal (cada uno de ellos en una posición distinta) cuyo producto sea igual a algún otro elemento que ocupe una posición distinta a las de la diagonal principal. Es decir debe determinar si se cumple: ∃ i , j , k , l 1 ≤ i , j , k , l ≤ n i ≠ j k ≠ l tal que a (^) k,k * a (^) l,l = a (^) i,j.
17.- Un cuadrado latino de orden N es una matriz cuadrada que en su primera fila contiene los N primeros números naturales y en cada una de las siguientes N-1 filas contiene la rotación de la fila anterior un lugar a la derecha. Realiza un programa que reciba como parámetro la dimensión del cuadrado y genere la matriz correspondiente a su cuadrado latino
30.- Se desea almacenar la información relativa a 20 personas. De cada persona se almacena su nombre, apellidos, dni, edad. Implementa la estructura necesaria para almacenar dicha información y realiza las funciones necesarias para la inicialización de la estructura. El programa deberá además recibir por teclado el dni de una persona e imprimir su edad utilizando una función cuyo prototipo sea: int busca(personas x[], char *dni)
31.- Se dispone de la información relativa a 100 estaciones meteorológicas diferentes repartidas por una determinada área geográfica. Conocemos el nombre de las estaciones y la cantidad de lluvia en litros/m^2 que recogieron durante el año pasado en cada uno de los 12 meses. Implementa la estructura adecuada para almacenar dicha información. Realiza las funciones necesarias para determinar en qué punto llovió más y en cual menos y la cantidad media de agua recogida en las estaciones meteorológicas durante cada mes.
32.- Se desea almacenar la información relativa a las ventas semanales de los 25 vendedores de una compañía. De cada vendedor se almacena su nombre, apellidos y dni. Realiza un programa que inicialice la estructura y calcule las ventas totales de cada vendedor, las ventas totales de la compañía, y el nombre (e importe) de los dos vendedores que más han facturado.
33.- Se desea realizar un programa en C que implemente un diccionario Inglés/Español. El programa debe leer palabras en Inglés y traducirlas a Español hasta que el usuario introduzca la palabra “Fin”. Diseña la estructura de datos adecuada para almacenar las parejas de palabras Inglés-Español introducidas por el usuario. Inicializa dicha estructura y realiza el proceso de traducción descrito. El número de parejas de palabras es variable, pero limitado a un máximo de 100, siendo la longitud de cada palabra de un máximo de 40 caracteres.
Ejemplo: Si se introducen las siguientes parejas de palabras: book libro green verde mouse ratón door puerta Cuando el usuario introduzca la palabra green la respuesta será verde.
34.- Un instituto desea almacenar los datos de los N alumnos de un curso. De cada alumno se almacenarán nombre, apellidos, dni, edad y las calificaciones que ha obtenido en cada uno de los tres trimestres de cada una de las 7 asignaturas del curso; junto con las calificaciones deberá almacenarse también el nombre de la asignatura. Diseña la estructura necesaria para almacenar dicha información e implementa las siguientes funciones:
35.- Una empresa desea realizar un programa para controlar la permanencia de sus trabajadores en el lugar de trabajo. Para ello debe almacenar la hora de llegada y salida de cada trabajador en horas, minutos y segundos de cada uno de los cinco días laborables de la semana. Además se desea almacenar nombre, apellidos, dni, y salario por hora de cada trabajador. Elige la estructura adecuada para almacenar esta información y realiza las funciones básicas de inicialización e inserción de información. Suponiendo que cada trabajador debe contar con una permanencia de 35 horas semanales, se considerarán el resto como horas extra. El programa debe obtener el nombre, apellidos y el salario total de cada uno de los trabajadores considerando un incremento de un 10% del salario por hora para las horas extra. Así como, los nombres y apellidos de todos aquellos trabajadores que contabilicen una permanencia semanal menor a la exigida por la empresa.
36.- Se desea almacenar la siguiente información de los empleados de una empresa: nombre y apellidos, edad, DNI, ventas realizadas en cada uno de los días de la semana. Diseña la estructura necesaria para almacenar esa información teniendo en cuenta que las ventas diarias de un empleado pueden ser de hasta 100.000 pesetas. Se debe crear un menú para manejar esta estructura implementando las siguientes funciones y respetando sus prototipos: