
Menú y funciones
Publicado por Kevin Karim (1 intervención) el 09/10/2021 05:52:17
Buena noche, chicos:
Tengo un tema que no he podido resolver, se trata de una función que se ejecuta sin regresar al main, luego en una segunda función me imprimi dos resultado cuando solo quiero uno de los dos mediante el if-else, lo mismo sucede con el tercero:
Lo que tengo que hacer es:
programa que muestre el siguiente menú:
▪ Ingresa un número
▪ Incrementa un número
▪ Decrementa un número
▪ Salir
Cada una de las opciones del menú llamará a una función que realizará una tarea específica, como se indica a continuación:
▪ La opción 1 aceptará el ingreso de un número entero; si no se ocupa esta opción, se iniciará con el número 10.
▪ La opción 2 le sumará un 1 al número anterior; y la opción 3 le restará un 1 al número mencionado. Utiliza variables globales.
Código:
#include <stdio.h>
int entero, resultado1, resultado2, opcion;
int opcion1 (){
int entero;
printf("\nIntroduce un número entero: ");
scanf("%d", &entero);
printf("Presione enter para continuar...");
return entero;
}
int opcion2 (){
if (entero != 0)
{
resultado1 = entero ++;
printf("\nResultado: %d", resultado1);
}
else
{
int numero1 = 10;
resultado2 = numero1++;
printf("\nResultado: %d", resultado2);
}
return 0;
}
int opcion3 (){
if (entero != 0)
{
resultado1 = (entero - 1);
printf("\nResultado: %d", resultado1);
}
else
{
int numero1 = 10;
resultado2 = (numero1 - 1);
printf("\nResultado: %d", resultado2);
}
return 0;
}
int main(){
printf("\n");
printf("\tMenú\n");
printf("\n1. Ingresar un número");
printf("\n2. Incrementar un numero");
printf("\n3. Decrementar un numero");
printf("\n4. Salir");
printf("\n");
printf("\nSelecciona una opción: ");
scanf("%d", &opcion);
do{
switch (opcion)
{
case 1:
opcion1();
getchar();
break;
case 2:
opcion2();
getchar();
break;
case 3:
opcion3();
getchar();
break;
case 4:
break;
default:
printf("\nIngrese una opción correcta, presione enter para regresar...");
getchar();
break;
}
} while (opcion != 4);
return 0;
}
Si me pudieran orientar se los agradecería. Saludos!
Tengo un tema que no he podido resolver, se trata de una función que se ejecuta sin regresar al main, luego en una segunda función me imprimi dos resultado cuando solo quiero uno de los dos mediante el if-else, lo mismo sucede con el tercero:
Lo que tengo que hacer es:
programa que muestre el siguiente menú:
▪ Ingresa un número
▪ Incrementa un número
▪ Decrementa un número
▪ Salir
Cada una de las opciones del menú llamará a una función que realizará una tarea específica, como se indica a continuación:
▪ La opción 1 aceptará el ingreso de un número entero; si no se ocupa esta opción, se iniciará con el número 10.
▪ La opción 2 le sumará un 1 al número anterior; y la opción 3 le restará un 1 al número mencionado. Utiliza variables globales.
Código:
#include <stdio.h>
int entero, resultado1, resultado2, opcion;
int opcion1 (){
int entero;
printf("\nIntroduce un número entero: ");
scanf("%d", &entero);
printf("Presione enter para continuar...");
return entero;
}
int opcion2 (){
if (entero != 0)
{
resultado1 = entero ++;
printf("\nResultado: %d", resultado1);
}
else
{
int numero1 = 10;
resultado2 = numero1++;
printf("\nResultado: %d", resultado2);
}
return 0;
}
int opcion3 (){
if (entero != 0)
{
resultado1 = (entero - 1);
printf("\nResultado: %d", resultado1);
}
else
{
int numero1 = 10;
resultado2 = (numero1 - 1);
printf("\nResultado: %d", resultado2);
}
return 0;
}
int main(){
printf("\n");
printf("\tMenú\n");
printf("\n1. Ingresar un número");
printf("\n2. Incrementar un numero");
printf("\n3. Decrementar un numero");
printf("\n4. Salir");
printf("\n");
printf("\nSelecciona una opción: ");
scanf("%d", &opcion);
do{
switch (opcion)
{
case 1:
opcion1();
getchar();
break;
case 2:
opcion2();
getchar();
break;
case 3:
opcion3();
getchar();
break;
case 4:
break;
default:
printf("\nIngrese una opción correcta, presione enter para regresar...");
getchar();
break;
}
} while (opcion != 4);
return 0;
}
Si me pudieran orientar se los agradecería. Saludos!
Valora esta pregunta


0