Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - rjobel

#1
Programación C/C++ / Re: Ayuda con codigo C++
11 Abril 2011, 01:35 AM
Gracias a todos por su ayuda.

El programa ya jala bien. Espero ir mejorando para no caer en errores tan simples.

Saludos
#2
Programación C/C++ / Re: Ayuda con codigo C++
10 Abril 2011, 03:35 AM
Gracias por la observacion Akai.

Modifiqué le código y ahora no compila. Se traba en la declaración de las funciones.

¿Alguna idea de cual sea el problema?

Código (cpp) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>


/*Declaracion de Variables*/
       struct prod{
              char nomProd[30];
              char fecha[10];
              char categoria[20];
              float costo;
              } prod[50];/*Arreglo de tipo estructura*/
             
             
              int entrada(void);
              int buscar(void);
              int precio(void);
              int salir(void);
       
       main()
       {
             int c=0, opc, clave;
             
             do{
              printf ("Abarrotes Bel-Yes - Registro de Productos \n\n");
              printf ("Opciones \n");
              printf ("1) Registrar producto \n");
              printf ("2) Buscar producto \n");
              printf ("3) Precio de venta \n");
              printf ("4) Salir \n\n");
              printf ("Elige una opcion: \n");
              scanf ("%d", &opc);
             
                                         
                   switch (opc){      /*Opciones*/
                     case 1:
                          entrada();
                          break;
                     case 2:
                          buscar();
                          break;
                     case 3:
                          precio();
                          break; 
                     case 4:
                          salir();     
                     default:
                              printf ("Esa es una opcion invalida \n");
                              return 0;
                              break;                               
                          }
              while (opc!=4);
                     }         
                   
       /*Declaracion de Funciones*/

      int entrada()
       {
           int c=0;
           
            if (c>=50)
                          printf ("No hay espacio para mas productos en el abarrotes \n");
                          else {
                               printf ("Ingresa los datos del producto \n");
                               printf ("Clave %.2d \n", c);
                               printf ("Nombre del Producto: ");
                               fflush (stdin);
                               gets (prod[c].nomProd);
                               printf ("Fecha de Entrada[dd/mm/aa]: ");
                               gets (prod[c].fecha);
                               printf ("Categoria del Producto: ");
                               gets (prod[c].categoria);
                               printf ("Costo del Producto: ");
                               scanf ("%f", &prod[c].costo);
                               c=c+1;
                               }
                               system ("pause");
                               system ("cls");
                                           }
           
       int buscar()
       {
           int clave;
          printf ("Ingresa la clave a buscar [0-50] \n");
                           scanf ("%d", &clave);
                           while (clave<=50 || clave>0){
                                 printf ("Nombre del Producto: %s \n", prod[clave].nomProd);
                                 printf ("Fecha de Entrada: %s \n", prod[clave].fecha);
                                 printf ("Categoria: %s \n", prod[clave].categoria);
                                 printf ("Costo del Producto: %.2f pesos\n\n\n", prod[clave].costo);
                                 system ("pause");
                                 system ("cls");
                                 
          }  }
         
       int precio()
       {
           int clave;
            printf ("Ingresa la clave a buscar [0-50] \n");
                           scanf ("%d", &clave);
                           while (clave<=50 || clave>0){
                           printf ("Nombre del Producto: %s \n", prod[clave].nomProd);           
                           printf ("El precio sugerido de Venta es: %.2f pesos\n\n\n", (prod[clave].costo)*1.30);
                           system ("pause");
                           system ("cls");
                           break;
            }}
           
        int salir()
        {
            return 0;
            }
           
#3
Bueno, aqui esta de nuevo el código pero ahora con funciones. El programa compila, pero no funciona, pues no ejecuta cada una de las funciones.

Como les comenté antes, soy nuevo en esto y no dispongo de un profesor (estudio online), así que si ven donde está el error les voy a agradecer mucho me lo hagan saber.

Se supone que mañana durante el día debo enviar esta tarea y de verdad necesito su ayuda.

Se que aun tengo que mejorar en las tabulaciones, pero al menos ahora si use GESHI.

Este es el código.

Código (cpp) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>


/*Declaración de Variables*/
       struct prod{
              char nomProd[30];
              char fecha[10];
              char categoria[20];
              float costo;
              } prod[50];/*Arreglo de tipo estructura*/
             
             
              int entrada(void);
              int buscar(void);
              int precio(void);
       
       main()
       {
             int c=0, opc, clave;
             
             do{
              printf ("Abarrotes Bel-Yes - Registro de Productos \n\n");
              printf ("Opciones \n");
              printf ("1) Registrar producto \n");
              printf ("2) Buscar producto \n");
              printf ("3) Precio de venta \n");
              printf ("4) Salir \n\n");
              printf ("Elige una opcion: \n");
              scanf ("%d", &opc);
              }
             
             while (opc!=4); { 
                   
                   switch (opc){      /*Opciones*/
                     case 1:
                          entrada();
                          break;
                     case 2:
                          buscar();
                          break;
                     case 3:
                          precio();
                          break; 
                     default:
                              printf ("Esa es una opcion invalida \n");
                              return 0;
                              break;                               
                          }
                     }         
       } 
       /*Declaracion de Funciones*/
       int entrada()
       {
           int c=0;
           
            if (c>=50)
                          printf ("No hay espacio para mas productos en el abarrotes \n");
                          else {
                               printf ("Ingresa los datos del producto \n");
                               printf ("Clave %.2d \n", c);
                               printf ("Nombre del Producto: ");
                               fflush (stdin);
                               gets (prod[c].nomProd);
                               printf ("Fecha de Entrada[dd/mm/aa]: ");
                               gets (prod[c].fecha);
                               printf ("Categoria del Producto: ");
                               gets (prod[c].categoria);
                               printf ("Costo del Producto: ");
                               scanf ("%f", &prod[c].costo);
                               c=c+1;
                               }
                               system ("pause");
                               system ("cls");
                                           }
           
       int buscar()
       {
           int clave;
          printf ("Ingresa la clave a buscar [0-50] \n");
                           scanf ("%d", &clave);
                           while (clave<=50 || clave>0){
                                 printf ("Nombre del Producto: %s \n", prod[clave].nomProd);
                                 printf ("Fecha de Entrada: %s \n", prod[clave].fecha);
                                 printf ("Categoria: %s \n", prod[clave].categoria);
                                 printf ("Costo del Producto: %.2f pesos\n\n\n", prod[clave].costo);
                                 system ("pause");
                                 system ("cls");
                                 
          }  }
         
       int precio()
       {
           int clave;
            printf ("Ingresa la clave a buscar [0-50] \n");
                           scanf ("%d", &clave);
                           while (clave<=50 || clave>0){
                           printf ("Nombre del Producto: %s \n", prod[clave].nomProd);           
                           printf ("El precio sugerido de Venta es: %.2f pesos\n\n\n", (prod[clave].costo)*1.30);
                           system ("pause");
                           system ("cls");
                           break;
            }
           
            }
#4
Gracias a todos por sus respuestas.

Encontre que le faltaba una llave antes del último while.
Apenas tengo unos meses estudiando C++ (y programación en realidad), así que estoy en pañales aun. Espero ir mejorando mis códigos.

Dos duda solamente:

1) ¿Es posible crear una version modular (usando funciones) de ese programa?

2) ¿Como uso GESHI? Ya lo descargue pero no se como instalarlo o usarlo. Disculpen mi ignorancia, pero si no pregunto no voy a saber como hacerlo.

Saludos
#5
Programación C/C++ / Ayuda con codigo C++
6 Abril 2011, 02:00 AM
Buen día. Estoy estudiando programación, apenas iniciando.
Nos pidieron un programa donde usemos struct. Consultando ejemplos hice un programa, pero no compila. Me marca errores en la linea final. La verdad no se donde esta el problema. Los errores y el codigo completo abajo. ¿Podrían ayudarme para que el programa compile? Gracias por adelantado.

Errores:
error: expected `while' at end of input
error: expected `(' at end of input
error: expected primary-expression at end of input
error: expected `)' at end of input
error: expected `;' at end of input
error: expected `}' at end of input

Codigo:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

main(){
       struct prod{
              char nomProd[30];
              char fecha[10];
              char categoria[20];
              float costo;
              float pVenta;
              } prod[50];
              int cv=0, opc, clave; /*Arreglo de tipo estructura*/
             
       do{
              printf ("Abarrotes Bel-Yes - Registro de Productos \n\n");
              printf ("Opciones \n");
              printf ("1) Registrar producto \n");
              printf ("2) Buscar prudcto \n");
              printf ("3) Salir \n\n");
              printf ("Elige una opcion");
              scanf ("%d", &opc);
             
              switch (opc){      /*Opciones*/
                     case 1:   /*Entrada de datos del producto*/
                          if (cv>=50)
                          printf ("No hay espacio para mas productos en el abarrotes \n");
                          else {
                               printf ("Ingresa los datos del producto \n");
                               printf ("Clave %d \n", cv);
                               printf ("Nombre del Producto: ");
                               fflush (stdin);
                               gets (prod[cv].nomProd);
                               printf ("Fecha de Entrada: [dd/mm/aa]");
                               gets (prod[cv].fecha);
                               printf ("Categoria del Producto: ");
                               gets (prod[cv].categoria);
                               printf ("Costo del Producto: ");
                               scanf ("%f", &prod[cv].costo);
                               cv=cv+1;
                               }
                               break;
                      case 2:  /*Busqueda de producto por clave*/
                           printf ("introduzca la clave a buscar \n");
                           scanf ("%d", &clave);
                           while (clave<0 || clave>=50){
                                 printf ("Nombre del Producto: %s \n", prod[clave].nomProd);
                                 printf ("Fecha de Entrada: %s \n", prod[clave].fecha);
                                 printf ("Categoria: %s \n", prod[clave].categoria);
                                 printf ("Costo del Producto: %f \n", prod[clave].costo);
                                 break;
                      case 3:
                           break;
                           
                      default:
                              printf ("Esa es una opcion invalida \n");
                              break;
                             
                              system("pause");
                              }
                              }while (opc!='3');
                              }