Dev - C++ - Ayuda con Programa en C

 
Vista:
Imágen de perfil de Juan

Ayuda con Programa en C

Publicado por Juan (2 intervenciones) el 11/11/2015 01:19:07
pag1
pag2
pag3
pag4
pag5

Hola amigos soy nuevo en este foro y quisiera ver si me pueden ayudar a resolver este programa. Yo acabo de ingresar a la universidad en la carrera de ingeniería en computación. estoy en primer semestre y el profesor como proyecto final dejo un programa con todo lo que incluye las imágenes. tiene que llevar menú y opciones secundarias. y la verdad aun no eh comprendido como hacer todo eso. el proyecto vale 80% de la calificación y si no lo resuelvo para antes del 18 de noviembre repruebo el curso. De antemano agradezco su comprensión y les agradecería infinitamente si me pueden ayudar con este programa en C.
Gracias!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Ayuda con Programa en C

Publicado por Hector (45 intervenciones) el 11/11/2015 16:43:19
Hola.

Bueno ese proyecto se ve muy completo sobre todo ya que lo estas viendo al inicio de tu carrera!

Ahora vamos a determinar las prioridades en el desarrollo de tu programa:

Lo primero que deberias concentrarte es en el desarrollo de los menus que llevaran tu programa, ya que te indica que debe haber un menu por cada opcion del menu principal (exceptuando la opcion de salir), vas a tener que hacer 8 menus, donde 1 sera el principal, y los demas seran los secundarios.

Crea todas las funciones que manejaran los menus, identificando cada uno para no confundirte:

- menu_principal()
- menu_sec_for()
- menu_sec_con_parametros()
- menu_sec_sin_parametros()
- menu_sec_matrices()
- menu_sec_ficheros()
- menu_sec_struct()
- menu_sec_acerca()

Puedes colocar cualquier nombre a tus funciones, esto es un pequeño ejemplo.

Una vez creada todas tus funciones puedes empezar a codificar cada una:

Veras, un menú consta de un ciclo el cual imprime las opciones a utilizar, lee un dato que sera el numero que ingresara el usuario, y en función del dato ingresado, ejecuta una acción especifica o ninguna (en caso de que ingrese una opción invalida).

Seria algo como esto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
void menu(){
    char opcion;
 
    do
    {
        printf("Menu:");
        printf("1) Imprime hola\n
                    2) Sale del menu");
 
        opcion = getch();
 
        switch(opcion)
        {
                case '1':
                       imprimir_hola();
                break;
                case '2':
                       return;
                break;
                default:
                       printf("Valor invalido, ingrese un valor correcto");
                       getch();
                break;
        };
 
        system("cls");
    }while(true);
}

Como puedes ver, la función entra en un ciclo el cual jamas se detiene, hasta que el usuario elija la opción 2. Puedes utilizar ese método para todas las demás funciones de menú.

Nota que también en vez de codificar dentro del switch la impresión de "hola", se llama una función que hace esa opción; se hace con el objetivo mantener por separado cada aspecto del programa, así en caso de tener un error, podrás ubicar mas rápido en que área del código puede estar.

Cualquier duda la publicas aquí con tu código para que desarrolles las funciones que te especifican el programa.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 661
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con Programa en C

Publicado por agustin (522 intervenciones) el 11/11/2015 20:07:58
Otro modo de conseguir lo mismo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
void menu(){
    int opcion,salir=0;
 
    do
    {
        printf("Menu:");
        printf("1) Imprime hola\n
                    2) Sale del menu");
 
        scanf ("%i",&opcion);
 
        switch(opcion)
        {
                case 1:
                       imprimir_hola();
                break;
                case 2:
                       salir=1;
                break;
                default:
                       printf("Valor invalido, ingrese un valor correcto");
                       system ("pause");
        };
        system("cls");
    }while(salir !=1);
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Juan

Ayuda con Programa en C

Publicado por Juan (2 intervenciones) el 25/11/2015 00:21:46
Hola buena tardes. ya hice todo lo que me dijo y lo único que me falta por hacer es que me muestre la opción 4, 6 y 7. hice lo mismo que los anteriores y me manda error, no se que hacer. quisiera ver si me puede ayudar a corregir ese error por favor. le adjunto mi archivo. mi trabajo es para mañana. le agradecería infinitamente si me puede ayudar en cuanto pueda. saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar