Ejercicio Programación Estructurada Guía de Estudio para Examen Ori
Ejercicio Programación Estructurada Guía de Estudio para Examen Ori
Ejercicio Programación Estructurada Guía de Estudio para Examen Ori
Catedra: Programación I
2. ¿Cómo se utiliza la estructura "switch" en C++ y cuáles son sus diferencias con
"ifelse"?
R// me parece que para comprender de forma adecuada como funciona un condicional
Switch, es bueno hacerlo poniendo un ejemplo. Imaginemos entonces que nuestro
programa consta de un menú de opciones digamos 3 opciones, cada una representada
con un número correspondiente, es decir la opción uno corresponde al número 1, la dos
al 2 y así sucesivamente, queremos entonces que de acuerdo a un número ingresado por
el usuario ejecutemos una acción correspondiente y en caso de que no corresponda a
ninguna de las posibles opciones, mostrar un mensaje de error cualquiera. De este
modo, podemos identificar 3 casos distintos para nuestro switch o en otras palabras,
hemos identificado tres condiciones posibles que puede llegar a cumplir nuestra
variable: el caso uno corresponde a que el valor ingresado por el usuario sea el 1, es
decir ejecutar la opción 1, el caso 2 el número 2, etc. adicionalmente hemos encontrado
la opción que se ejecutará por defecto en caso de no suceder ninguno de estos casos, es
decir si el usuario ingresa por ejemplo 10, mostraremos un mensaje de error cualquiera.
"If-else" y "switch" son declaraciones de selección. Las declaraciones de selección
transfieren el flujo del programa al bloque particular de declaraciones en función de si la
condición es "verdadera" o "falsa". La diferencia fundamental entre las declaraciones if-
else y switch es que la declaración if-else "selecciona la ejecución de las declaraciones
basándose en la evaluación de la expresión en las declaraciones if". Las instrucciones de
cambio "seleccionan la ejecución de la declaración a menudo basada en un comando de
teclado".
4. ¿Puedo utilizar una estructura "if" dentro de una estructura "switch"? ¿Por qué sí
o por qué no?
R// si se puede, Con el switch se puede hacer un control del tipo if else más estructurado
pero en realidad no exactamente igual puesto que con el switch lo que se hace es definir
un conjunto de casos que van a tener una ejecución distinta y se ejecutará el caso que
coincida con el valor indicado en el switch.
5. ¿Qué significa la palabra clave "else if" y cómo se utiliza en C++?
R// Los condicionales if-else, son una estructura de control, que nos permiten tomar
cierta decisión al interior de nuestro algoritmo, es decir, nos permiten determinar qué
acciones tomar dada o no cierta condición, por ejemplo determinar si la contraseña
ingresada por el usuario es válida o no y de acuerdo a esto darle acceso al sistema o
mostrar un mensaje de error.
4. ¿Puedo utilizar una estructura "for" dentro de una estructura "while"? ¿Por qué
sí o por qué no?
R// Los ciclos While deben usarse cuando: Quiere que su código se ejecute
indefinidamente.
Los ciclos For deben usarse cuando:
Necesita ejecutar el código una cierta cantidad de veces.
Quiere escribir un número determinado de medidas en un archivo.
Quiere tomar una cierta cantidad de puntos de datos.
3. Prototipado
1. ¿Qué es el prototipado de una función en C++?
R// son valores para tornar, nombre de la función y lista de argumentos seguida de punto
y coma para su compilación y ejecución.
2. ¿Por qué es importante el prototipado de funciones?
R// son importantes porque proporciona información sobre el valor nombrado por la
función, así como sobre sus parámetros. Se utiliza para verificar los llamados a la
función, ya que controla el número y el tipo de los parámetros.
4. Funciones
1. ¿Cuál es la sintaxis básica de una función en C++?
R// tipo nombre_funcion(tipo_1 arg_1, ..., tipo_n arg_n)
{
sentencias;
return expresión; // optativo
}
tipo: indica el tipo de valor (int, float, etc.) devuelto por la función.
nombre función: es el identificador usado para la función.
la lista de argumentos es una secuencia de declaración de parámetros separados
por comas y encerrados entre paréntesis. Son los llamados parámetros formales
de la función.
return expresión es un salto incondicional que permite evaluar una expresión y
devolver su valor a la función llamante.
2. ¿Qué es una función "void" y cuándo se utiliza?
R// Void es una palabra reservada o un tipo de dato que se traduce literalmente como
“vacío” o “nulo”. Este tipo de dato se usa solamente en una función cuando no
queremos que devuelva ningún valor a la función principal.
3. ¿Cuál es la diferencia entre un prototipo de función y una definición de función en
C++?
R// El prototipo de función específica el nombre de la función, el tipo de retorno y los
parámetros, pero omite el cuerpo de la función. La definición de función específica el
nombre de la función, tipo de retorno; los parámetros incluyen un cuerpo de función.
4. ¿Puedo definir una función después de su llamado en el código fuente? ¿Por qué sí o
por qué no?
R// Si se puede solo que para ello tendría que usar ya sea editor de texto para poder
hacer las modificaciones correspondientes esto siempre y cuando tenga conocimiento
del lenguaje de programación y sepa como y donde definir la función si no se le
ocasionara mas problemas que soluciones
5. ¿Qué sucede si llamo a una función que no ha sido prototipada en C++?
R// si llamamos a una función no declarada en C++, no compila y genera errores.
2. Escribe un programa en C++ que solicite al usuario dos números enteros y una
operación aritmética (+, -, * o /) a realizar. Utiliza una función llamada "calcular" que
reciba como parámetros los dos números y la operación ingresada, y regrese el resultado
de la operación. En el programa principal, utiliza el prototipado de la función "calcular"
y solicita al usuario los números y la operación a realizar. Luego, muestra el resultado
de la operación en pantalla. Si el usuario ingresa una operación inválida, muestra un
mensaje de error y solicita de nuevo la operación
#include <iostream>
using namespace std;
int main(){
do{
cout<<"\nIngrese el primer numero entero"<<endl;
cin>>num1;
cout<<"\nIngrese el segundo numero entero"<<endl;
cin>>num2;
switch(Calcular){
case 1:
Sum = num1 + num2;
cout<<"\nSu operacion aritmetica fue Suma";
cout<<"\nEl resultado de la suma de los dos numeros es: "<<Sum;
break;
case 2:
Rest = num1 - num2;
cout<<"\nSu operacion aritmetica fue Resta";
cout<<"\nEl resultado de la resta de los dos numeros es: "<<Rest;
break;
case 3:
Mult = num1 * num2;
cout<<"\nSu operacion aritmetica fue Multiplicacion";
cout<<"\nEl resultado de la multiplicacion de los dos numeros es:"<<Mult;
break;
case 4:
Divi = num1 / num2;
cout<<"\nSu operacion aritmetica fue Division";
cout<<"\nEl resultado de la division de los dos numeros es: "<<Divi;
break;
default:
cout<<"Ha elegido una opcion erronea";
break;
}
return 0;
}