You are on page 1of 4

Fundamentos de Programacin

Primero de Grado de Ingeniera Informtica


Departamento de Tecnologas de la Informacin

PROBLEMAS TEMA 4.
TABLAS.

1. Escribir un programa que pida 10 nmeros enteros por teclado y que imprima por
pantalla:
Cuntos de esos nmeros son pares.
Cul es el valor del nmero mximo.
Cul es el valor del nmero mnimo.

2. Escribir un programa que lea una matriz de 3 filas y 3 columnas de valores enteros.
A continuacin, el programa debe pedir el nmero de una fila. El programa deber
devolver el mximo de esa fila.

3. Escribir un programa que lea un matriz de enteros de 2 filas y 4 columnas y


muestre por pantalla la transpuesta a dicha matriz. Ejemplo:
Entrada: 2 3 4 5 Salida
2 7
7 6 5 4
3 6
4 5
5 4

4 Escribir un programa que lea una matriz de nmeros enteros y que devuelva la
suma de los elementos positivos de la matriz y la suma de los elementos
negativos.

5 Escribir un programa que lea una matriz de enteros de 4 filas y 4 columnas y a


continuacin intercambie la fila i con la fila j, siendo i y j dos valores
introducidos por teclado.

Escribir un programa que lea una matriz de 4 filas y 3 columnas, la visualice por
pantalla y a continuacin encuentre el mayor y el menor elemento de la matriz y
sus posiciones.

Una palabra es palndroma si se puede leer igual de izquierda a derecha que de


derecha a izquierda, por ejemplo: reconocer es palndroma. Construye un
programa que pida una palabra por teclado e imprima por pantalla si es o no
palndroma.

Un cuadrado mgico 3 x 3 es una matriz 3 x 3 formada por nmeros del 1 al 9


donde la suma de sus filas, sus columnas y sus diagonales son idnticas. Crear un
programa que permita introducir un cuadrado por teclado y determine si este
cuadrado es mgico o no. El programa deber comprobar que los nmeros
introducidos son correctos, es decir, estn entre el 1 y el 9.

Curso 2012-13

Fundamentos de Programacin
Primero de Grado de Ingeniera Informtica
Departamento de Tecnologas de la Informacin

Se dice que una matriz tiene un punto de silla si alguna posicin de la matriz es el
menor valor de su fila y a la vez el mayor de su columna. Escribir un programa
que tenga como entrada una matriz de nmeros enteros y calcule la posicin de
un punto de silla (si es que existe).

10 Disee una clase que represente el tipo de dato tipo_equipo, en la que se


almacene el nombre de un equipo de ftbol, los partidos jugados, ganados y
perdidos, los goles a favor, en contra y los puntos que tiene en la clasificacin
A partir de esta definicin, implemente un programa que :
a. Considere una estructura de datos que permita almacenar, como
mximo, los datos de 22 equipos.
b. Permita introducir los datos correspondientes de cada equipo desde
teclado.
c. Muestre por pantalla los datos de un equipo dado.
El men podra ser el siguiente:
1.- Introducir Informacin
2.- Mostrar informacin
S- SALIR

11 Disee la clase matrices que viene a continuacin:


#define M 10
class matrices {
int tabla [M];
public:
void cargar();
//Pondr en cada elemento de la tabla el valor de su ndice.
void encontrar();
//Pedir un numero entero por teclado y mostrara por pantalla si ese
//numero esta en la tabla o no
};
12 Disee la clase matrices que viene a continuacin:
#define M 10
#define N 15
class matrices {
int tabla [M] [N];
public:
void cargar();
//Pondr en cada elemento de la tabla el valor de la suma de sus ndices.
void encontrar();
//Pedir un numero entero por teclado y mostrara por pantalla si ese
//numero esta en la tabla o no
};

Curso 2012-13

Fundamentos de Programacin
Primero de Grado de Ingeniera Informtica
Departamento de Tecnologas de la Informacin

13 Disee la clase matrices que viene a continuacin:


#define M 10
#define N 15
typedef char cadena [30];
class matrices {
cadena tabla [M] [N];
public:
void cargar();
//Pondr en cada elemento de la tabla una palabra leda desde teclado.
void encontrar();
//Pedir una palabra por teclado y mostrara por pantalla si esa palabra esta
//o no en la tabla y en que fila y columna se encuentra
};

14 Disee la clase matrices que viene a continuacin:


#define M 10
#define N 15
typedef char cadena [30];
struct persona {
long dni;
cadena nombre;
};
class matrices {
persona tabla [M] [N];
public:
void cargar();
//Pondr en cada elemento de la tabla un dni y un nombre ledos desde teclado.
void encontrar();
//Pedir un dni por teclado y mostrara por pantalla si ese dni esta o no en la
//tabla y adems en que fila y columna se encuentra
};

15 Realice una clase que invierta el contenido de un vector conocido. (T)


#define N 15
class vector {
int uno [N];
int num;
public:
void cargar ( );
//Pedir por teclado nmeros enteros ponindolos en la tabla uno.
//num ser la cantidad de nmeros almacenados.
void invertir ();
//Pondr el primer elemento de uno como ultimo, el segundo como
//penltimo y as
};
Curso 2012-13

Fundamentos de Programacin
Primero de Grado de Ingeniera Informtica
Departamento de Tecnologas de la Informacin

16 Determinar si dos tablas tab1 y tab2 tienen el mismo contenido. Disee una
clase que resuelva este problema.
(T)
class vector {
int tab1[10], tab2[10];
public:
void cargar ();
//Llenara las dos tablas con valores ledos desde teclado.
int comparar ();
//devolver un 1 si son diferentes tab1 y tab2, 0 si son iguales
};
17 Determinar si una matriz es simtrica. Disee una clase que resuelva este
problema.
(T)
class matriz {
int a[7][7];
public:
void cargar ();
//Llenara la tabla a completa con valores ledos desde teclado.
bool simtrica ();
//devolver true si la matriz a NO es simtrica, false en caso contrario
};

18 Realice una clase de tal forma que fusione dos tablas (ordenadas previamente)
en otra tercera, de tal forma que los elementos queden ordenados en sta.
class vector {
int uno [15], dos[15], fus[30];
int numuno, numdos;
public:
void cargar ();
//Cargar la tabla uno con valores ledos desde teclado, el nmero de
//elementos ledos se pondr en numuno. Cargar la tabla dos con valores
//leidos desde teclado, el nmero de elementos ledos se pondr en numdos,
//se supone que los valores se ponen ordenados crecientemente desde teclado.
void mezclar ();
//Cargar la tabla fus con los valores de uno y dos quedando la tabla fus
//ordenada crecientemente.
};

Curso 2012-13