Sei sulla pagina 1di 15

EJERCICIOS DE REPASO PRUEBA 1

Indique si cada una de las siguientes instrucciones es verdadera o falsa. Si es falsa, explique
por qué.
Asuma que se usa la instrucción using std::cout;
a) Los comentarios hacen que la computadora imprima el texto que va después de los caracteres
// en la pantalla, al ejecutarse el programa. FALSO
b) Cuando la secuencia de escape \n se imprime con cout y el operador de inserción de flujo, el
cursor se posiciona al principio de la siguiente línea en la pantalla. VERDADERO
c) Todas las variables deben declararse antes de utilizarlas. VERDADERO
d) Todas las variables deben recibir un tipo al declararlas. VERDADERO
e) C++ considera que las variables numero y NuMeRo son idénticas. FALSO
f ) Las declaraciones pueden aparecer casi en cualquier parte del cuerpo de una función de C++.
FALSO
g) El operador módulo (%) se puede utilizar sólo con operandos enteros. FALSO
h) Los operadores aritméticos *, /, %, + y – tienen todos el mismo nivel de precedencia. FALSO
i) Un programa en C++ que imprime tres líneas de salida debe contener tres instrucciones en las
que se utilicen cout y el operador de inserción de flujo. FALSO
Escriba una sola instrucción en C++ para realizar cada una de las siguientes tareas (suponga
que no se han utilizado declaraciones using):
a) Declarar las variables c, estaEsUnaVariable, q76354 y numero como de tipo int.
b) Pedir al usuario que introduzca un entero. Termine el mensaje del indicador con un signo de
dos puntos (:) seguido de un espacio, y deje el cursor posicionado después del espacio.
c) Recibir un entero como entrada del usuario mediante el teclado, y almacenarlo en la variable
entera edad.
d) Si la variable numero no es igual a 7, mostrar “La variable numero no es igual a 7”.
e) Imprimir el mensaje "Este es un programa en C++" en una línea.
f) Imprimir el mensaje "Este es un programa en C++" en dos líneas. La primera línea debe
terminar con es un.
g) Imprimir el mensaje "Este es un programa en C++"; cada palabra se debe escribir en una línea
separada.
h) Imprimir el mensaje "Este es un programa en C++". Separe una palabra de otra mediante un
tabulador.
Escriba una declaración (o comentario) para realizar cada una de las siguientes tareas
(suponga que se han utilizado declaraciones using para cin, cout y endl):
a) Indicar que un programa calculará el producto de tres enteros.
b) Declarar las variables x, y, z y resultado de tipo int (en instrucciones separadas).
c) Pedir al usuario que escriba tres enteros.
d) Leer tres enteros del usuario y almacenarlos en las variables x, y y z.
e) Calcular el producto de los tres enteros contenidos en las variables x, y y z, y asignar el
resultado a la variable resultado.
f) Imprimir "El producto es ", seguido del valor de la variable resultado.
g) Devolver un valor de main, indicando que el programa terminó correctamente.
Escriba un programa completo que calcule e imprima el producto de tres enteros. Agregue
comentarios al código donde sea apropiado. (Nota: necesitará escribir las declaraciones using
necesarias)
Identifique y corrija los errores en cada una de las siguientes instrucciones (suponga que se
utiliza la instrucción using std::cout):
a) if ( c < 7 );
cout << "c es menor que 7\n";
b) if ( c > =7 )
cout << "c es igual o mayor que 7\n";
Hable sobre el significado de cada uno de los siguientes objetos:
a) std::cin
b) std::cout
Complete las siguientes oraciones:
a) __________ se utilizan para documentar un programa y mejorar su legibilidad.
b) El objeto que se utiliza para imprimir información en la pantalla es _COUT_________.
c) Una instrucción de C++ que toma una decisión es __________.
d) La mayoría de los cálculos se realizan normalmente mediante instrucciones __________.
e) El objeto _CIN_________ recibe valores de entrada del teclado.
Escriba una sola instrucción o línea en C++ que realice cada una de las siguientes tareas:
a) Imprimir el mensaje "Escriba dos numeros".
b) Asignar el producto de las variables b y c a la variable a.
c) Indicar que un programa va a realizar un cálculo de nómina (es decir, usar texto que ayude a
documentar un programa).
d) Recibir tres valores de entrada del teclado y colocarlos en las variables enteras a, b y c.
Conteste con verdadero o falso a cada una de las siguientes proposiciones; en caso de ser falso,
explique por qué.
a) Los operadores en C++ se evalúan de izquierda a derecha.
b) Los siguientes nombres de variables son todos válidos: _barra_inferior_, m928134, t5, j7,
sus_ventas, su_cuenta_total, a, b, c, z, z2.
c) La instrucción cout << "a = 5;"; es un ejemplo típico de una instrucción de asignación.
d) Una expresión aritmética válida en C++ sin paréntesis se evalúa de izquierda a derecha.
e) Los siguientes nombres de variables son todos inválidos: 3g, 87, 67h2, h22, 2h.
Complete cada una de las siguientes oraciones:
a) ¿Qué operaciones aritméticas se encuentran en el mismo nivel de precedencia que la
multiplicación? _________.
b) Cuando los paréntesis están anidados, ¿cuál conjunto de paréntesis se evalúa primero en una
expresión aritmética?
__________.
c) Una ubicación en la memoria de la computadora que puede contener distintos valores en
distintos momentos durante la ejecución de un programa se llama __________.
¿Qué se imprime (si acaso) cuando se ejecuta cada una de las siguientes instrucciones de C++?
Si no se imprime nada, entonces responda “nada”. Suponga que x = 2 y y = 3.
a) cout << x;
b) cout << x + x;
c) cout << "x=" ;
d) cout << "x = " << x;
e) cout << x + y << " = " << y + x;
f) z = x + y;
g) cin >> x >> y;
h) // cout << "x + y = " << x + y;
i) cout << "\n";
¿Cuáles de las siguientes instrucciones de C++ contienen variables, cuyos valores se
modifican?
a) cin >> b >> c >> d >> e >> f;
b) p = i + j + k + 7;
c) cout << "variables cuyos valores se destruyen";
d) cout << "a = 5";
Dada la ecuación algebraica y = ax3+ 7, ¿cuáles de las siguientes instrucciones (si acaso) en C++
son correctas para esta ecuación?
a) y = a * x * x * x + 7;
b) y = a * x * x * ( x + 7 );
c) y = ( a * x ) * x * ( x + 7 );
d) y = ( a * x ) * x * x + 7;
e) y = a * ( x * x * x ) + 7;
f) y = a * x * ( x * x + 7 );
Indique el orden de evaluación de los operadores en cada una de las siguientes instrucciones
en C++, y muestre el valor de x después de ejecutar cada una de ellas:
a) x = 7 + 3 * 6 / 2 – 1;
b) x = 2 % 2 + 2 * 2 – 2 / 2;
c) x = ( 3 * 9 * ( 3 + ( 9 * 3 / ( 3 ) ) ) );
Escriba un programa que pida al usuario que escriba dos numeros, que obtenga los numeros
del usuario e imprima la suma, producto, diferencia y cociente de los numeros.
Escriba un programa que imprima los numeros del 1 al 4 en la misma línea, con cada par de
numeros adyacentes separado por un espacio. Haga esto de varias formas:
a) Utilizando una instrucción con un operador de inserción de f lujo.
b) Utilizando una instrucción con cuatro operadores de inserción de f lujo.
c) Utilizando cuatro instrucciones.
Escriba un programa que pida al usuario que escriba dos enteros, que obtenga los numeros
del usuario e imprima el numero más grande, seguido de las palabras "es más grande". Si los
numeros son iguales, imprima el mensaje "Estos números son iguales."
Escriba un programa que reciba tres enteros del teclado e imprima la suma, promedio,
producto, menor y mayor de esos numeros. El dialogo de la pantalla debe aparecer de la
siguiente manera:
Introduzca tres enteros distintos: 13 27 14
La suma es 54
El promedio es 18
El producto es 4914
El menor es 13
El mayor es 27
Escriba un programa que lea el radio de un círculo como un número entero y que imprima su
diámetro, circunferencia y área. Use el valor constante 3.14159 para π. Realice todos los
cálculos en instrucciones de salida.
Escriba un programa que imprima un cuadro, un ovalo, una f lecha y un diamante como se
muestra a continuación:

Que imprime el siguiente codigo?


cout << "*\n**\n***\n****\n*****" << endl;
Escriba un programa que lea cinco enteros y que determine e imprima los enteros mayor y
menor en el grupo. Use solamente las técnicas de programación que aprendió en este período.
Escriba un programa que lea un entero y que determine e imprima si es impar o par.
[Sugerencia: use el operador modulo. Un número par es un múltiplo de dos. Cualquier múltiplo
de dos deja un residuo de cero cuando se divide entre dos.]
Escriba un programa que lea dos enteros, determine si el primero es un múltiplo del segundo
e imprima el resultado.
Escriba una aplicación que muestre un patrón de tablero de damas con ocho instrucciones de
salida, y después muestre el mismo patrón utilizando el menor número de instrucciones
posible

Escriba un programa que reciba como entrada un número entero de cinco dígitos, que separe
ese número en sus dígitos individuales y los imprima, cada uno separado de los demás por
tres espacios. [Sugerencia: use los operadores de división entera y módulo.] Por ejemplo, si el
usuario escribe el número 42339, el programa debe imprimir:
42339
Utilizando sólo las técnicas que aprendió en este capítulo, escriba un programa que calcule los
cuadrados y cubos de los números enteros del 0 al 10, y que imprima los valores resultantes
Escriba cuatro instrucciones distintas en C++, donde cada una sume 1 a la variable entera x.
Escriba instrucciones en C++ para realizar cada una de las siguientes tareas:
a) En una instrucción, asignar la suma del valor actual de x y y a z, y postincrementar el valor de
x.
b) Evaluar si la variable cuenta es mayor que 10. De ser así, imprimir "Cuenta es mayor que 10".
c) Predecrementar la variable x en 1, luego restarla a la variable total.
d) Calcular el residuo después de dividir q entre divisor, y asignar el resultado a q. Escriba esta
instrucción de dos maneras distintas.
Escriba instrucciones en C++ para realizar cada una de las siguientes tareas:
a) Declarar las variables suma y x como de tipo int.
b) Asignar 1 a la variable x.
c) Asignar 0 a la variable suma.
d) Sumar la variable x a suma y asignar el resultado a la variable suma.
e) Imprimir la cadena "La suma es: ", seguida del valor de la variable suma.
Desarrolle un programa que calcule e imprima la suma de los enteros del 1 al 10. Use una
instrucción while para iterar a través de las instrucciones de cálculo e incremento. El ciclo debe
terminar cuando el valor de x se vuelva 11.
Determine el valor de cada una de variables en la siguiente instrucción, después de realizar el
cálculo. Suponga que, cuando se empieza a ejecutar cada una de las instrucciones, todas las
variables tienen el valor 5 entero.
a) producto *= x++;
b) cociente /= ++x;
Escriba instrucciones individuales de C++ o porciones de instrucciones que realicen lo
siguiente:
a) Recibir como entrada la variable entera x con cin y >>.
b) Recibir como entrada la variable entera y con cin y >>.
c) Establecer la variable entera i a 1.
d) Establecer la variable entera potencia a 1.
e) Multiplicar la variable potencia por x y asignar el resultado a potencia.
f ) Preincrementar la variable i en 1.
g) Determinar si i es menor o igual a y.
h) Imprimir la variable entera potencia con cout y <<.
Escriba un programa en C++ que utilice las instrucciones del ejercicio 4.7 para calcular x
elevada a la y potencia. El programa debe tener una instrucción de repetición while.
Identifique y corrija los errores en cada uno de los siguientes fragmentos de codigo:
a) while ( c <= 5 )
{
producto *= c;
++c;
b) cin << valor;
c) if ( genero == 1 )
cout << "Mujer" << endl;
else;
cout << "Hombre" << endl;
Identificar que esta mal en la siguiente instruccion de repeticion while?
while ( z >= 0 )
Identifique y corrija los errores en cada uno de los siguientes fragmentos de codigo:
a) if ( edad >= 65 );
cout << "Edad es mayor o igual que 65" << endl;
else
cout << "Edad es menor que 65 << endl";
b) if ( edad >= 65 );
cout << "Edad es mayor o igual que 65 << endl";
else;
cout << "Edad es menor que 65 << endl";
c) int x = 1, total;
while ( x <= 10 )
{
total += x;
++x;
}
d) while ( x <= 100 )
total += x;
++x;
e) while ( y > 0 )
{
cout << y << endl;
++y;
}
¿Qué es lo que imprime el siguiente programa?
// ¿Qué imprime este programa?
#include <iostream>
using std::cout;
using std::endl;
int main()
{
int y; // declara y
int x = 1; // inicializa x
int total = 0; // inicializa el total
while ( x <= 10 ) // itera 10 veces
{
y = x * x; // realiza el cálculo
cout << y << endl; // imprime el resultado
total += y; // suma y al total
x++; // incrementa el contador x
} // fin de while
cout << "El total es " << total << endl; // muestra el resultado
return 0; // indica que terminó correctamente
} // fin de main
Para el ejercicio realice cada uno de los siguientes pasos:
a) Lea el enunciado del problema.
b) Formule el algoritmo utilizando seudocódigo y el proceso de mejoramiento de arriba a abajo,
paso a paso.
c) Pruebe, depure y ejecute el programa en C++.
Resuelva el siguiente ejercicio, los conductores se preocupan acerca del kilometraje de sus
automóviles. Un conductor ha llevado el registro de varios reabastecimientos de gasolina,
registrando los kilómetros conducidos y los litros usados en cada reabastecimiento. Desarrolle
un programa en C++ que utilice una instrucción while para recibir como entrada los kilómetros
conducidos y los litros usados (ambos como enteros) por cada reabastecimiento. El programa
debe calcular y mostrar los kilómetros por litro obtenidos en cada reabastecimiento, y debe
imprimir el total de kilómetros por litro obtenidos en todos los reabastecimientos hasta este
punto.
Escriba los kilómetros usados (-1 para salir): 287
Escriba los litros: 13
KPL en este reabastecimiento: 22.076923
Total KPL: 22.07693
Escriba los kilómetros usados (-1 para salir): 200
Escriba los litros: 10
KPL en este reabastecimiento: 20.000000
Total KPL: 21.173913
Escriba los kilómetros usados (-1 para salir): 120
Escriba los litros: 5
KPL en este reabastecimiento: 24.000000
Total KPL: 21.678571
Escriba los kilómetros usados (-1 para salir): -1
Desarrolle una aplicación en C++ que determine si alguno de los clientes de una tienda de
departamentos se ha excedido del límite de crédito en una cuenta. Para cada cliente se tienen
los siguientes datos:
a) Número de cuenta (un entero)
b) Saldo al inicio del mes
c) Total de todos los artículos cargados por el cliente en el mes
d) Total de todos los créditos aplicados a la cuenta del cliente en el mes
e) Límite de crédito permitido.
El programa debe usar una instrucción while para recibir como entrada cada uno de estos
datos, debe calcular el nuevo saldo (= saldo inicial + cargos – créditos) y determinar si éste
excede el límite de crédito del cliente. Para los clientes cuyo límite de crédito sea excedido, el
programa debe mostrar el número de cuenta del cliente, su límite de crédito, el nuevo saldo
y el mensaje "Se excedió el límite de su crédito".
Introduzca el número de cuenta (o -1 para salir): 100
Introduzca el saldo inicial: 5394.78
Introduzca los cargos totales: 1000.00
Introduzca los créditos totales: 500.00
Introduzca el límite de crédito: 5500.00
El nuevo saldo es 5894.78
Cuenta: 100
Límite de crédito: 5500.00
Saldo: 5894.78
Se excedió el límite de su crédito.
Introduzca el número de cuenta (o -1 para salir): 200
Introduzca el saldo inicial: 1000.00
Introduzca los cargos totales: 123.45
Introduzca los créditos totales: 321.00
Introduzca el límite de crédito: 1500.00
El nuevo saldo es 802.45
Introduzca el número de cuenta (o -1 para salir): 300
Introduzca el saldo inicial: 500.00
Introduzca los cargos totales: 274.73
Introduzca los créditos totales: 100.00
Introduzca el límite de crédito: 800.00
El nuevo saldo es 674.73
Introduzca el número de cuenta (o -1 para salir): -1
Una gran empresa de químicos paga a sus vendedores mediante comisiones. Los vendedores
reciben $200 por semana, más el 9% de sus ventas brutas durante esa semana. Por ejemplo,
un vendedor que vende $5000 de mercancía en una semana, recibe $200 más el 9% de $5000,
o un total de $650. Desarrolle un programa en C++ que utilice una instrucción while para ecibir
como entrada las ventas brutas de cada vendedor de la semana anterior, y que calcule y
muestre los ingresos de ese vendedor.
Procese las cifras de un vendedor a la vez.
Introduzca las ventas en dólares (-1 para salir): 5000.00
El salario es: $650.00
Introduzca las ventas en dólares (-1 para salir): 6000.00
El salario es: $740.00
Introduzca las ventas en dólares (-1 para salir): 7000.00
El salario es: $830.00
Introduzca las ventas en dólares (-1 para salir): -1
Desarrolle un programa en C++ que utilice una instrucción while para determinar el sueldo
bruto para cada uno de varios empleados. La empresa paga la cuota normal en las primeras
40 horas de trabajo de cada empleado, y paga cuota y media en todas las horas trabajadas
que excedan de 40. Usted recibe una lista de los empleados de la empresa, el número de horas
que trabajó cada empleado la semana pasada y la tarifa por horas de cada empleado. Su
programa debe recibir como entrada esta información para cada empleado, debe determinar
y mostrar el sueldo bruto de cada empleado.
Introduzca las horas trabajadas (-1 para salir): 39
Introduzca la tarifa por horas del empleado ($00.00): 10.00
El salario es $390.00
Introduzca las horas trabajadas (-1 para salir): 40
Introduzca la tarifa por horas del empleado ($00.00): 10.00
El salario es $400.00
Introduzca las horas trabajadas (-1 para salir): 41
Introduzca la tarifa por horas del empleado ($00.00): 10.00
El salario es $415.00
Introduzca las horas trabajadas (-1 para salir): -1
El proceso de encontrar el número más grande (es decir, el máximo de un grupo de números)
se utiliza frecuentemente en aplicaciones de computadora. Por ejemplo, un programa para
determinar el ganador de un concurso de ventas recibe como entrada el número de unidades
vendidas por cada vendedor. El vendedor que haya vendido más unidades es el que gana el
concurso.
Escriba un programa en seudocódigo y después una aplicación en C++ que utilice una
instrucción while para determinar e imprimir el mayor número de una serie de 10 números
introducidos por el usuario. Su programa debe utilizar tres variables, como se muestra a
continuación:
Contador: Un contador para contar hasta 10 (es decir, para llevar el registro de cuántos números
se han introducido, y para determinar cuándo se hayan procesado los 10 números).
Numero: El número actual que se introduce al programa.
Mayor: El número más grande encontrado hasta ahora.
Escriba una aplicación en C++ que utilice una instrucción while y la secuencia de escape de
tabulación \t para imprimir la siguiente tabla de valores:
N 10*N 100*N 1000*N
1 10 100 1000
2 20 200 2000
3 30 300 3000
4 40 400 4000
5 50 500 5000
Utilizando una metodología similar a la del ejercicio 4.17, encuentre los dos valores más grandes
de los 10 que se introdujeron. [Nota: debe introducir cada número sólo una vez.]
El programa de resultados de un examen de las figuras 4.16 a 4.18 asume que cualquier valor
introducido por el usuario que no sea un 1 debe ser un 2. Modifique la aplicación para validar
sus entradas. Para cualquier entrada, si el valor introducido es distinto de 1 o 2, debe seguir
iterando hasta que el usuario introduzca un valor correcto.
¿Qué es lo que imprime el siguiente programa?
// Ejercicio 4.21: ej04_21.cpp
// ¿Qué es lo que imprime este programa?
#include <iostream>
using std::cout;
using std::endl;
int main()
{
int cuenta = 1; // inicializa cuenta
while ( cuenta <= 10 ) // itera 10 veces
{
// imprime una línea de texto
cout << ( cuenta % 2 ? "****" : "++++++++" ) << endl;
++cuenta; // incrementa cuenta
} // fin de while
return 0; // indica que terminó correctamente
} // fin de main
Qué es lo que imprime el siguiente programa
// Ejercicio 4.22: ej04_22.cpp
// ¿Qué es lo que imprime este programa?
#include <iostream>
using std::cout;
using std::endl;
int main()
{
int fila = 10; // inicializa fila
int columna; // declara columna
while ( fila >= 1 ) // itera hasta que fila < 1
{
columna = 1; // establece columna a 1 cuando empieza la iteración
while ( columna <= 10 ) // itera 10 veces
{
cout << ( fila % 2 ? "<" : ">" ); // salida
++columna; // incrementa columna
} // fin de while interior
--fila; // decrementa fila
cout << endl; // empieza nueva línea de salida
} // fin de while exterior
return 0; // indica que terminó correctamente
} // fin de main
(Problema del else suelto) Determine la salida de cada uno de los siguientes conjuntos de
código, cuando x es 9 y y es 11, y cuando x es 11 y y es 9. Observe que el compilador ignora la
sangría en un programa en C++. El compilador de C++ siempre asocia un else con el if que le
precede inmediatamente, a menos que se le indique de otra forma mediante la colocación
de llaves ({}). A primera vista, el programador tal vez no esté seguro de cual if corresponde a
cual else; esta situación se conoce como el “problema del else suelto”. Hemos eliminado la
sangría del siguiente código para hacer el problema más retador. [Sugerencia: aplique las
convenciones de sangría que ha aprendido.]
a) if ( x < 10 )
if ( y > 10 )
cout << "*****" << endl;
else
cout << "#####" << endl;
cout << "$$$$$" << endl;
b) if ( x < 10 )
{
if ( y > 10 )
cout << "*****" << endl;
}
else
{
cout << "#####" << endl;
cout << "$$$$$" << endl;
}
(Otro problema de else suelto) Modifique el siguiente código para producir la salida que se
muestra. Utilice las técnicas de sangría apropiadas. No debe hacer modificaciones en el código,
solo insertar llaves o modificar la sangría del código. El compilador ignora la sangría en un
programa en C++. Hemos eliminado la sangría en el código dado, para hacer el problema mas
retador. [Nota: es posible que no se requieran modificaciones.]
if ( y == 8 )
if ( x == 5 )
cout << "@@@@@" << endl;
else
cout << "#####" << endl;
cout << "$$$$$" << endl;
cout << "&&&&&" << endl;
a) Suponiendo que x = 5 y y = 8, se produce la siguiente salida:
@@@@@
$$$$$
&&&&&
b) Suponiendo que x = 5 y y = 8, se produce la siguiente salida:
@@@@@
c) Suponiendo que x = 5 y y = 8, se produce la siguiente salida:
@@@@@
&&&&&
d) Suponiendo que x = 5 y y = 7, se produce la siguiente salida. [Nota: las tres últimas
instrucciones de salida después del else forman parte de un bloque.]
#####
$$$$$
&&&&&
Escriba un programa que pida al usuario que introduzca el tamaño del lado de un cuadrado y
que muestre un cuadrado hueco de ese tamaño, compuesto de asteriscos y espacios en
blanco. Su programa debe funcionar con cuadrados que tengan lados de todas las longitudes
entre 1 y 20. Por ejemplo, si su programa lee un tamaño de 5, debe imprimir
*****
**
**
**
*****
Un palíndromo es un número o una frase de texto que se lee igual al derecho y al revés. Por
ejemplo, cada uno de los siguientes enteros de cinco dígitos es un palíndromo: 12321, 55555,
45554 y 11611.
Escriba una aplicación que lea un entero de cinco dígitos y determine si es un palíndromo.
[Sugerencia: use los operadores de división y modulo para separar el número en sus dígitos
individuales.]
Escriba un programa que reciba como entrada un entero que contenga solo 0s y 1s (es decir,
un entero “binario”), y que imprima su equivalente decimal. Use los operadores modulo y
división para elegir los dígitos del numero “binario” uno a la vez, de derecha a izquierda. En
forma parecida al sistema numérico decimal, donde el digito más a la derecha tiene un valor
Posicional de 1 y el siguiente digito a la izquierda tiene un valor posicional de 10, después 100,
después 1000, etcétera, en el sistema numérico binario, el digito más a la derecha tiene un
valor posicional de 1, el siguiente digito a la izquierda tiene un valor posicional de 2, luego 4,
luego 8, etcétera.
Así, el número decimal 234 se puede interpretar como 2 * 100 + 3 * 10 + 4 * 1.
El equivalente decimal del numero binario 1101 es 1 * 1 + 0 * 2 + 1 * 4 + 1 * 8, o 1 + 0 + 4 + 8,
o Escriba un programa que muestre el patrón de tablero de damas que se muestra a
continuación. Su programa debe utilizar solo tres instrucciones de salida, una para cada una
de las siguientes formas:
cout << "* ";
cout << ' ';
cout << endl;
********
********
********
********
********
********
********
********
Escriba un programa que imprima las potencias del entero 2; a saber, 2, 4, 8, 16, 32, 64,
etcétera. Su ciclo while no debe terminar (es decir, debe crear un ciclo infinito). Para ello,
simplemente use la palabra clave true como la expresión para la instrucción while. .Que ocurre
cuando ejecuta este programa?
Escriba un programa que lea el radio de un círculo (como un valor double), calcule e imprima
el diámetro, la circunferencia y el área. Use el valor 3.14159 para π.
Que está mal con la siguiente instrucción? Proporcione la instrucción correcta para realizar lo
que probablemente el programador trataba de hacer.
cout << ++( x + y );
Escriba un programa que lea tres valores double distintos de cero, y que determine e imprima
si podrían representar los lados de un triángulo.
Escriba un programa que lea tres enteros distintos de cero, y que determine e imprima si
podrían ser los lados de un triángulo recto.
Una compañía desea transmitir datos a través del teléfono, pero le preocupa que sus teléfonos
puedan estar intervenidos. Todos los datos se transmiten como enteros de cuatro dígitos. La
compañía le ha pedido a usted que escriba un programa que cifre sus datos, de manera que
estos puedan transmitirse con más seguridad. Su programa debe leer un entero de cuatro
dígitos introducido por el usuario y cifrarlo de la siguiente manera: reemplace cada digito con
(el resultado de sumar 7 al dígito) módulo 10. Luego intercambie el primer digito con el
tercero, e intercambie el segundo digito con el cuarto. Después imprima el entero cifrado.
Escriba un programa separado que reciba como entrada un entero de cuatro dígitos cifrado, y
que lo descifre para formar el número original.

El factorial de un entero n no negativo se escribe como n! (n factorial) y se define de la


siguiente manera:
n! = n ・ (n – 1) ・ (n – 2) ・ . . . ・ 1 (para valores de n mayores o iguales a 1)
n! = 1 ( para n = 0 o n = 1).
Por ejemplo, 5! = 5 ・ 4 ・ 3 ・ 2 ・ 1, que es 120. Use instrucciones while en cada uno de los
siguientes casos:
a) Escriba una aplicación que lea un entero no negativo, que calcule e imprima su factorial.
Escriba una instrucción o un conjunto de instrucciones en C++, para realizar cada una de las
siguientes tareas:
a) Sumar los enteros impares entre 1 y 99, utilizando una instrucción for. Suponga que se han
declarado las variables enteras suma y cuenta.
b) Imprimir el valor 333.546372 en una anchura de campo de 15 caracteres, con precisiones de
1, 2 y 3. Imprimir cada número en la misma línea. Justificar a la izquierda cada numero en su
campo.
Cuáles son los tres valores que se imprimen
c) Calcular el valor de 2.5 elevado a la potencia de 3, utilizando la función pow. Imprimir el
resultado con una precisión de 2 en una anchura de campo de 10 posiciones. .Que se imprime?
d) Imprimir los enteros del 1 al 20, utilizando un ciclo while y la variable contador x. Suponga
que la variable x se ha declarado, pero no se ha inicializado. Imprimir solamente cinco enteros
por línea. [Sugerencia: use el cálculo x % 5.
e) Repita el ejercicio usando una instrucción for.
Encuentre el(los) error(es), si los hay, en cada uno de los siguientes segmentos de código, y
explique cómo corregirlo(s):
a) x = 1;
while ( x <= 10 );
x++;
}
b) for ( y = .1; y != 1.0; y += .1 )
cout << y << endl;
c) switch ( n )
{
case 1:
cout << "El numero es 1" << endl;
case 2:
cout << "El numero es 2" << endl;
break;
default:
cout << "El número no es 1 ni 2" << endl;
break;
}
d) El siguiente código debe imprimir los valores 1 a 10:
n = 1;
while (n < 10 )
cout << n++ << endl;

Potrebbero piacerti anche