SuApellido SuNombre CAP2 L2
SuApellido SuNombre CAP2 L2
SuApellido SuNombre CAP2 L2
b) Un(a) llave izquierda empieza el cuerpo de toda función, y un(a) llave derecha termina el cuerpo.
d) La secuencia de escape \n representa el carácter nueva línea, el cual hace que el cursor se posicione
al principio de la siguiente línea en la pantalla.
2.2 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. Los comentarios no producen ninguna acción cuando el programa se ejecuta. Se utilizan para
documentar programas y mejorar su legibilidad.
b) Cuando la secuencia de escape \n se imprime con cout y el operador de inserción de f lujo, el cursor
se posiciona al principio de la siguiente línea en la pantalla.
Verdadero.
Verdadero.
Verdadero.
Falso. C++ es sensible a mayúsculas y minúsculas, por lo que estas variables son distintas.
f) Las declaraciones pueden aparecer casi en cualquier parte del cuerpo de una función de C++.
Verdadero.
Verdadero.
2.3 Escriba una sola instrucción en C++ para realizar cada una de las siguientes tareas (suponga que no
se han utilizado declaraciones using):
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.
if ( numero != 7 ){
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.
2.4 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):
int x;
int y;
int z;
int result;
e) Calcular el producto de los tres enteros contenidos en las variables x, y y z, y asignar el resultado a la
variable resultado.
resultado = x * y * z;
return 0;
2.5 Utilizando las instrucciones que escribió en el ejercicio 2.4, 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.]
2.6 Identifi que 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 );
Error: punto y coma después del paréntesis derecho de la condición en la instrucción if. Corrección:
elimine el punto y coma después del paréntesis derecho. [Nota: el resultado de este error es que la
instrucción de salida se ejecutará sin importar que la condición en la instrucción if sea verdadera o no.]
El punto y coma después del paréntesis derecho es una instrucción nula (o vacía): una instrucción que
no hace nada. En el siguiente capítulo aprenderemos más acerca de la instrucción nula.
b) if ( c => 7 )
Error: el operador relacional =>. Corrección: cambie => a >=, y tal vez quiera cambiar “igual o mayor
que” a “mayor o igual que”, también
Ejercicios
2.7 Hable sobre el signifi cado de cada uno de los siguientes objetos:
a) std::cin
b) std::cout
2.9 Escriba una sola instrucción o línea en C++ que realice cada una de las siguientes tareas:
a=b*c;
, 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
cin>>a;
cin>>b;
cin>>c;
2.10 Conteste con verdadero o falso a cada una de las siguientes proposiciones; en caso de ser falso,
explique por qué.
c) La instrucción cout << "a = 5;"; es un ejemplo típico de una instrucción de asignación.
Falso. Eso solo imprimiría en pantalla “a=5”, para que sea una asignación no debe ir nada más que la
variable a la que se asignara algo, y lo que se le asignara a dicha variable, aquí debería ser a=5;.
d) Una expresión aritmética válida en C++ sin paréntesis se evalúa de izquierda a derecha. verdadero
e) Los siguientes nombres de variables son todos inválidos: 3g, 87, 67h2, h22, 2h.
Falso.h22 si es válido.
b) Cuando los paréntesis están anidados, ¿cuál conjunto de paréntesis se evalúa primero en una
expresión aritmética? ___izquierdo _______.
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 variable.
2.12 ¿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; 2
b) cout << x + x; 4
c) cout << "x=“; x=
d) cout << "x = " << x; x=2
e) cout << x + y << " = " << y + x; 5=5
f) z = x + y; nada
g) cin >> x >> y; nada
h) // cout << "x + y = " << x + y; nada
i) cout << "\n"; Salto de linea
2.13 ¿Cuáles de las siguientes instrucciones de C++ contienen variables, cuyos valores se modifican?
b) p = i + j + k + 7;
2.14 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 );
2.15 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; (7+3)*(6)/(2-1)
b) x = 2 % 2 + 2 * 2 – 2 / 2; (2%2)+(2*2)-(2/2)
c) x = ( 3 * 9 * ( 3 + ( 9 * 3 / ( 3 ) ) ) ); (3*9)*(3)+(9*3)/3
2.16 Escriba un programa que pida al usuario que escriba dos números, que obtenga los números del
usuario e imprima la suma, producto, diferencia y cociente de los números.
2.17 Escriba un programa que imprima los números del 1 al 4 en la misma línea, con cada par de
números adyacentes separado por un espacio. Haga esto de varias formas:
La suma es 54
El promedio es 18
El producto es 4914
El menor es 13
El mayor es 27
2.20 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. [Nota: en este capítulo sólo hemos visto constantes enteras y variables. En el
capítulo 4 hablaremos sobre los números de punto flotante; es decir, valores que pueden tener puntos
decimales.]
2.21 Escriba un programa que imprima un cuadro, un óvalo, una f lecha y un diamante como se muestra
a continuación:
2.22 ¿Qué imprime el siguiente código?
2.24 Escriba un programa que lea un entero y que determine e imprima si es impar o par. [Sugerencia:
use el operador módulo. 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.]
2.25 Escriba un programa que lea dos enteros, determine si el primero es un múltiplo del segundo e
imprima el resultado. [Sugerencia: use el operador de módulo.]
2.26 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.
2.28 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:
2.29 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 en formato
de tabla, como se muestra a continuación: