Vous êtes sur la page 1sur 16

Cuestiones tema 4

Ingeniería Telemática

1 Cuestiones tema 4 Asignatura: Informática


1. La ejecución de las siguientes sentencias, donde a y b son variables
enteras:

a = 3; b = 6;
if (!(b % 2==0) || (a<5) && (b+7<=8))
cout << 'A';
else
cout << 'B';

a) Escribe A. b) Escribe B.
c) No escribe nada. d) Origina un error durante la ejecución.

2 Cuestiones tema 4 Asignatura: Informática


2. Haz un programa que determine el dinero a pagar en una gasolinera
sabiendo el precio de la gasolina, los litros que se han puesto y si se ha
presentado o no el carnet de cliente habitual (si se presenta el carnet,
se aplica un descuento fijo del 8%).
int main()
{
float precio, litros, total;
bool esHabitual;
cout << "Precio el litro: ";
cin >> precio;
cout << "Litros: ";
cin >> litros;
cout << "¿Es cliente habitual? (0 -> NO 1 -> SÍ): ";
cin >> esHabitual;
total = precio*litros;
if (esHabitual)
total = total * 0.92;
cout << "Total: " << total << endl;
system("PAUSE");
return 1;
}
3 Cuestiones tema 4 Asignatura: Informática
3. Realiza un programa que permita comprobar si una terna
int main()
{
determinada de valores ENTEROS se ajusta a la ecuación de
float x, x2, y, y2, z, z2, res;
Pitágoras:
cout << "X: ";
cin >> x;
cout << "Y: "; x² + y² = z²
cin >> y;
El programa solicitará al usuario los valores x, y, z y a continuación
cout << "Z: ";
cin >> z;
mostrará por pantalla, por un lado el resultado de x² + y², por otro z²
x2 = x*x;
y y2
además
= y*y;si se cumple la igualdad o no.
z2 = z*z;
res = x2 + y2;
cout << x << "^2 " << " + " << y << "^2 " << " = " << res << endl;
cout << z << "^2 " << " = " << z2 << endl;
if (z2==res)
cout << "Se cumple la igualdad"<< endl;
else
cout << "NO se cumple la igualdad"<< endl;
system("PAUSE");
return 1;
}

4 Cuestiones tema 4 Asignatura: Informática


4. Sea n una variable de tipo int. Construye a partir de alternativas
dobles anidadas una estructura que realice la misma tarea que el
siguiente switch para cualquier valor de n.

switch (n)
if (n==0)
{ cout << "cero" << endl;
else if (n==1)
case 0:
cout << "uno" << endl;
cout << "cero";
else
break;
cout << "ni cero ni uno" << endl;
case 1:
cout << "uno";
break;
default:
cout << "ni cero ni uno";
}

5 Cuestiones tema 4 Asignatura: Informática


5. Realizar un programa que proporcione el precio de una entrada de
cine, teniendo en cuenta que el precio normal es de 6.2 euros y que
existen los siguientes descuentos:
y Los
int niños
main()menores de 4 años no pagan
{
y Los niños
float entre 4 y 12 años tienen un 30% de descuento
precio=6.2;
int edad;
y Los mayores de 64 años, tienen un descuento del 40%.
cout << "Edad: ";
cin >> edad;

if (edad<4)
precio=0;
else if (edad<12)
precio=precio*0.7;
else if (edad>64)
precio=precio*0.6;

cout << "Precio: " << precio << endl;

system("PAUSE");
return 1;
}

6 Cuestiones tema 4 Asignatura: Informática


6. Si las variables reales m y n contienen los datos 11 y 5
respectivamente, la sentencia:
switch (m / n)
{
case 1:
cout << "uno";
break;
case 2:
cout << "dos";
break;
default:
cout << "ni uno ni dos";
}

a) Da un error de ejecución. b) Da un error de compilación.


c) Imprime dos. d) Imprime “ni uno ni dos”
7 Cuestiones tema 4 Asignatura: Informática
7. Dada la siguiente declaración de variables:
int a;
float b;

y dado el siguiente trozo de Indica que pasará cuando se


código: introduzca los siguientes valores para
cin >> b; b:
a = b / 2; Uno.
a) b = 2, Efecto: ______________
switch ( a % 10 )
{ b) b = 5, Dos. Tres
Efecto: ______________
case 1:
cout << "Uno."; c) b = 6, Tres.
Efecto: ______________
break;
case 2: Uno
d) b = 23, Efecto: ______________
cout << "Dos.";
case 3:
cout << "Tres.";
break;
default:
cout << "otra cosa.";
}
8 Cuestiones tema 4 Asignatura: Informática
8. La ejecución de las siguientes sentencias, donde n es una variable
entera:
do
cin >> n;
while (n < 1 || n > 10);
if (n < 3 && n > 8)
cout << "Dentro";
else
cout << "Fuera";

a) Escribe Dentro para valores de n en el rango 3..8.


b) Escribe Fuera únicamente para los siguientes valores de n: 1, 2 , 9 ,
10.
c) Escribe Fuera para cualquier valor de n comprendido en el rango
1..10.
d) Nada de lo anterior es cierto.
9 Cuestiones tema 4 Asignatura: Informática
9. Sean n, i, j variables de tipo int, ¿Qué sucede al ejecutarse el
siguiente código?:
j = 0; i = 3; // 1
while (i >= 0)
{
i = i - 1; // 2
n = j / i; // 3
cout << n;
}

Error de ejecución por división por 0

10 Cuestiones tema 4 Asignatura: Informática


10. Dada la siguiente declaración de variables: int i, j=1;
¿Cuántos asteriscos se escriben en pantalla en cada uno de los
siguientes trozos de código?
a) for (i = 0; i <= 10; i ++) e) for (i = 0; i <= j; i ++)
cout << “*”; {
11
cout << “*”;
b) for (i = 0; 1 <= 10; i ++) j ++;
cout << “*”; }
∞ ∞
c) for (i = 0; i <= 10; j ++) f) for (i = 10; i < 0; i ++)
cout << “*”; cout << “*”;
∞ 0
d) for (i = 10; i > 0; i ++) g) for (i = 10; i > 0; i --)
cout << “*”; cout << “*”;
∞ 10
h) i = 1; i) i = 1;
while (i <= j) do
cout << “*”; {
i++ ; i++ ;
cout << “*”;
}
∞ while (i <= j); 1
11 Cuestiones tema 4 Asignatura: Informática
11. Reescribe el siguiente bucle empleando sólo bucles while (1º versión)
y empleando sólo bucles for (2º versión) de manera que funcionen
exactamente igual que el original para cualquier caso.

cin >> n; i = 0;
i = 0; while (i<= n)
{
do{
cout << i;
cout << i; i = i + 1;
i = i + 1; }
} while (i<= n);
for (i = 0; i<=n ; i++)
cout << i;

12 Cuestiones tema 4 Asignatura: Informática


12. Haz un programa que muestre todos los números naturales cuyo cubo
sea menor que 10000.

int main()
{
int n, n3;

n = 1;
n3 = n*n*n;
while (n3<10000){
cout << n << endl;
n++;
n3 = n*n*n;
}

system("PAUSE");
return 1;
}

13 Cuestiones tema 4 Asignatura: Informática


13. Haz un programa que lea caracteres por teclado hasta que el usuario
introduzca el carácter ‘*’. A continuación, el programa debe mostrar el
número de caracteres introducido sin contar el último.
int main()
{
int n;
char c;

n = 0;
do {
cin >> c;
n++;
} while (c!='*');

cout << "Has introducido " << n-1 << " caracteres\n";

system("PAUSE");
return 1;
}
14 Cuestiones tema 4 Asignatura: Informática
14. Haz un programa que calcule la suma de los números impares
incluidos en el intervalo [1..n], siendo n un valor de entero positivo.
int main()
{
int i, n, suma=0;

do {
cout << "n: ";
cin >> n;
} while (n < 1);

for (i=1; i<=n; i+=2)


suma += i;

cout << "Suma entre 1 y " << n << " = " << suma << endl;

system("PAUSE");
return 1;
}

15 Cuestiones tema 4 Asignatura: Informática


14. Realiza un programa que pida un número N entre 1 y 10 y muestre
por pantalla un triángulo como el siguiente (ej. N = 5):
1 int main()
12 {
int i, j, n;
123
do {
1234
cout << "n: ";
12345 cin >> n;
} while (n < 1 || n > 10);

for (i=1; i<=n; i++)


{
for (j=1; j<=i; j++)
cout << j;
cout << endl;
}

system("PAUSE");
return 1;
}

16 Cuestiones tema 4 Asignatura: Informática

Vous aimerez peut-être aussi