Inicio
Buscar
Ingresar
Registrarse
Starfield: el juego que revolucionará el espacio y la tecnología
Hack x Crack - Comunidad de Seguridad informática
»
Programación
»
C / C++
»
Como hago para regresar al menu
Imprimir
Páginas: [
1
]
Ir Abajo
Autor
Tema: Como hago para regresar al menu (Leído 39602 veces)
hackmundy
{ L3 } Über
Mensajes: 196
Como hago para regresar al menu
«
en:
Junio 25, 2014, 06:43:27 am »
Hola como estan a los tiempos , hoy tengo una dudo espero no molestar a nadie.. como hago para regresar al menu e intentado con while , do while y nada este es el codigo:
Código: C
#include <stdio.h>
#include <conio.h>
#include <math.h>
void
main
(
)
{
unsigned
char
op
;
short
bucle
=
1
;
int
menu
;
float
x
,
d
,
c
,
a
,
b
,
raiz
,
m
,
n
,
x1
,
x2
;
do
{
printf
(
"Universidad de Guayaquil .... Menu de Opciones........
\n
\n
\n
"
)
;
printf
(
"1.- Ecuaciones de 1er Grado
\n
"
)
;
printf
(
"2.- Ecuaciones de 2do Grado
\n
"
)
;
printf
(
"3.- Salir del Programa
\n
\n
\n
"
)
;
printf
(
"Elija Una Opcion: "
)
;
scanf
(
"%d"
,&
menu
)
;
clrscr
(
)
;
}
while
(
!
(
menu
>=
1
&&
menu
<=
3
)
)
;
switch
(
menu
)
{
case
1
:
while
(
bucle
)
{
clrscr
(
)
;
printf
(
"Ecuaciones de Primer Grado ........ 8x+20=0 ........
\n
\n
\n
"
)
;
printf
(
"
\n
Ingrese el Coeficiente X: "
)
;
scanf
(
"%f"
,&
c
)
;
printf
(
"
\n
Ingrese el Termino Independiente: "
)
;
scanf
(
"%f"
,&
d
)
;
if
(
c
==
0
)
{
printf
(
"
\n
El numero que ingreso es Cero y no hay divicion para cero"
)
;
}
else
{
x
=-
d
/
c
;
printf
(
"
\n
El resultado de la Ecuacion es: %.2f "
,
x
)
;
}
// Opcion para preguntar si desea volver a intentarlo
printf
(
"
\n
\n
Hacer otra ecuacion [s/n]?"
)
;
op
=
0
;
while
(
op
!=
's'
&&
op
!=
'n'
)
{
scanf
(
"%c"
,&
op
)
;
if
(
op
==
'n'
)
bucle
=
0
;
}
if
(
!
bucle
)
{
clrscr
(
)
;
printf
(
"
\n
Fin del Programa...
\n
\n
creado por Curso SJ1 Nocturno.....
\n
\n
\n
Profesor Ing Angel Ochoa"
)
;
}
}
break
;
case
2
:
while
(
bucle
)
{
do
{
clrscr
(
)
;
printf
(
"Ecuaciones de Segundo Grado ........
\n
\n
\n
"
)
;
printf
(
"
\n
Ingrese el Valor de A: "
)
;
scanf
(
"%f"
,&
a
)
;
}
while
(
a
==
0
)
;
printf
(
"
\n
Ingrese el Valor de B: "
)
;
scanf
(
"%f"
,&
b
)
;
printf
(
"
\n
Ingrese el Valor de C: "
)
;
scanf
(
"%f"
,&
c
)
;
m
=
(
b
*
b
)
-
(
4
*
a
*
c
)
;
if
(
m
>
0
)
{
n
=
(
2
*
a
)
;
raiz
=
sqrt
(
m
)
;
x1
=
(
-
b
-
raiz
)
/
n
;
x2
=
(
-
b
+
raiz
)
/
n
;
printf
(
"
\n
El resultado de X1 es: %.2f "
,
x1
)
;
printf
(
"
\n
El resultado de X2 es: %.2f "
,
x2
)
;
}
else
{
printf
(
"
\n
La Ecuacion no tiene Solucion Real.. Porque no hay raiz negativa..."
)
;
}
// Opcion para preguntar si desea volver a intentarlo
printf
(
"
\n
\n
Hacer otra ecuacion [s/n]?"
)
;
op
=
0
;
while
(
op
!=
's'
&&
op
!=
'n'
)
{
scanf
(
"%c"
,&
op
)
;
if
(
op
==
'n'
)
bucle
=
0
;
}
if
(
!
bucle
)
{
clrscr
(
)
;
printf
(
"
\n
Fin del Programa...
\n
\n
creado por Curso SJ1 Nocturno.....
\n
\n
\n
Profesor Ing Angel Ochoa"
)
;
}
}
break
;
case
3
:
printf
(
"Saliendo del Programa... Gracias por usarlo Universidad de Guayaquil..."
)
;
printf
(
"
\n
Creado por ..... Profesor Ing Angel Ochoa...."
)
;
break
;
}
getch
(
)
;
}
saludos espero no haber molestado
___
edited
___
seleccion de codigo - C
«
Última modificación: Junio 25, 2014, 09:25:28 am por b10s_0v3rr1d3
»
En línea
Un Hacker sabe de la materia;
Un Lamer cree Saberlo;
Y Yo solo Aprendo..
b10s_0v3rr1d3
Administrador
{ L6 } Flooder del foro
Mensajes: 885
why not die?
Re:Como hago para regresar al menu
«
Respuesta #1 en:
Junio 25, 2014, 09:51:31 am »
hi
para lo que comentas, puedes poner dicho menu en una funcion a la cual puedes ir llamando desde la main y luego una vez terminado el trabajo con una opcion, volviendola a llamar.
por ejemplo
main() => menu().....
optionX() [terminado el work de la opcion] => menu().....
y asi sucesivamente, puedes poner las distintas opciones en distintas funciones para ir llamandolas cuando quieras, eso te permite ir volviendo a una funcion u otra cuando lo requieras.
nos leemos
En línea
ragdoll999
{ L0 } Ñuub
Mensajes: 36
Re:Como hago para regresar al menu
«
Respuesta #2 en:
Junio 25, 2014, 07:34:18 pm »
Código: C
#include <stdio.h>
#include <stdlib.h>
int
v
,
v1
,
v2
;
//variables de mdo, v01 y v02
int
main
(
void
)
{
mdo
:
//etiqueta que lleva al menu principal
system
(
"cls"
)
;
printf
(
"REGRESAR AL MENU EN TODO MOMENTO
\n
"
)
;
printf
(
"0.- Regresar al menu
\n
"
)
;
printf
(
"1.- Ecuaciones de 1er grado
\n
"
)
;
printf
(
"2.- Ecuaciones de 2do grado
\n
"
)
;
printf
(
"3.- Salir
\n
"
)
;
printf
(
"Elija una opcion: "
)
;
scanf
(
"%d"
,&
v
)
;
if
(
v
==
0
)
goto
mdo
;
if
(
v
==
1
)
goto
v01
;
if
(
v
==
2
)
goto
v02
;
if
(
v
==
3
)
{
printf
(
"HA FINALIZADO EL PROGRAMA
\n
"
)
;
return
9
;
}
v01
:
system
(
"cls"
)
;
printf
(
"escriba 0 para volver al menu: "
)
;
scanf
(
"%d"
,&
v1
)
;
//esto es obligatorio
printf
(
"
\\
1
\\
escribiste %d
\n
"
,
v1
)
;
//aqui va lo que quieras
if
(
v1
==
0
)
goto
mdo
;
return
0
;
v02
:
system
(
"cls"
)
;
printf
(
"escriba 0 para volver al menu: "
)
;
scanf
(
"%d"
,&
v2
)
;
//esto es obligatorio
printf
(
"
\\
2
\\
escribiste %d
\n
"
,
v2
)
;
//aqui va lo que quieras
if
(
v2
==
0
)
goto
mdo
;
return
1
;
}
tambien se pueden hacer con funciones, pero quise hacerlo con goto...
«
Última modificación: Junio 25, 2014, 10:55:09 pm por ragdoll999
»
En línea
-0-
b10s_0v3rr1d3
Administrador
{ L6 } Flooder del foro
Mensajes: 885
why not die?
Re:Como hago para regresar al menu
«
Respuesta #3 en:
Junio 25, 2014, 09:06:17 pm »
@ragdoll999: aunque el goto puede llegar a utilizarse en algun momento muy puntual, es una mala practica y habito en la programacion y no se recomienda para nada dicho uso....
puede dar como resultado codigo que a la larga pueda ser complejo de entender cuando seguramente el codigo es realmente sencillo pero gracias a esta instruccion dificulta la lectura.
nos leemos
En línea
ragdoll999
{ L0 } Ñuub
Mensajes: 36
Re:Como hago para regresar al menu
«
Respuesta #4 en:
Junio 25, 2014, 10:04:45 pm »
Sé que no se recomienda, pero me parecio más corto y sencillo mostrarle el uso de goto, es enredado tratar con numeros, y las funciones no son tan sencillas como parecen. Saludos.
(por cierto, como bien dijo la persona de arriba, se recomienda usar funciones para ese proposito).
«
Última modificación: Junio 25, 2014, 10:26:20 pm por ragdoll999
»
En línea
-0-
hackmundy
{ L3 } Über
Mensajes: 196
Re:Como hago para regresar al menu
«
Respuesta #5 en:
Junio 27, 2014, 05:53:00 am »
muchas gracias a todos , Si es verdad lo del goto , y de las funciones tambien, ya lo pude lograr con el bucle do while, lo intente con las funciones pero me confundio un poco...
gracias a todos.
saludos
En línea
Un Hacker sabe de la materia;
Un Lamer cree Saberlo;
Y Yo solo Aprendo..
Kheops
{ L0 } Ñuub
Mensajes: 18
Sirviente en el cielo, rey en el infierno
Re:Como hago para regresar al menu
«
Respuesta #6 en:
Julio 31, 2014, 04:14:57 am »
Espero que este menú te funcione
Código: C
#include <stdio.h>
#include <stdlib.h>
int
opc
=
0
;
// Declaramos opc de manera global
int
main
(
)
{
menu
(
)
;
}
void
menu
(
)
{
opc
=
0
;
while
(
opc
!=
3
)
{
system
(
"Color 7F"
)
;
system
(
"cls"
)
;
printf
(
"REGRESAR AL MENU EN TODO MOMENTO
\n
"
)
;
printf
(
"0.- Regresar al menu
\n
"
)
;
printf
(
"1.- Ecuaciones de 1er grado
\n
"
)
;
printf
(
"2.- Ecuaciones de 2do grado
\n
"
)
;
printf
(
"3.- Salir
\n
"
)
;
scanf
(
"%d"
,&
opc
)
;
switch
(
opc
)
{
case
1
:
system
(
"cls"
)
;
//Codigo o funcion que quieras escribir
break
;
case
2
:
system
(
"cls"
)
;
//Codigo o funcion que quieras escribir
break
;
case
3
:
system
(
"cls"
)
;
//Este solo va con el "cls" para limpiar la pantalla sin funcion o codigo para que vuelva al menu
break
;
default
:
system
(
"Color 4F"
)
;
system
(
"cls"
)
;
printf
(
"OPCION INCORRECTA"
)
;
system
(
"pause"
)
;
break
;
}
}
}
«
Última modificación: Julio 31, 2014, 04:51:21 am por Kheops
»
En línea
No importa que tan grande seas, nunca debes olvidar que cuando empezaste eras pequeño.
Pon tus metas en lugares altos, y no te detengas hasta que los hayas alcanzado.
Imprimir
Páginas: [
1
]
Ir Arriba
Hack x Crack - Comunidad de Seguridad informática
»
Programación
»
C / C++
»
Como hago para regresar al menu
Va un mudo y le dice a un sordo: Hack x Crack usa cookies. Pues eso...
OK
Learn more