Ayuda con un código fuente

Publicado en 'Programación' por kevin_arthur, 19 Set 2009.





  1. kevin_arthur

    kevin_arthur Suspendido

    Registro:
    21 Set 2008
    Mensajes:
    229
    Likes:
    0




    Hola soy estudiante de ing informatica ...

    y pus me dejaron trabajo...

    creo haberlo hehco bien pero no em sale bien como kisiera u_U

    porfa ojala me puedan ayudar u-U

    ahi les dejo el codigo fuente :



    ojala me puedan ayudar gracias :hi:

    ----- mensaje añadido, 19-sep-2009 a las 19:41 -----

    a me olvidaba a....

    trata sobre una empresa telefonica...

    q necesita registrar varios usuarios... q tiene llamdas a fijos y celulares... (llamada a fijos si los minutos son mas de 120 se cobran los 90 soles mas 0.08 por cda minuto que se pasa ) y llamadas al celular 0.35 l minuto :)

    lo dedl menu es entendible creo gracias!
     


  2. BLake

    BLake Miembro frecuente

    Registro:
    6 Mar 2009
    Mensajes:
    192
    Likes:
    17
    Asu hace tanto que no programo en C no tengo ninguna ide para probar tu codigo pero creo que el problema esta aqui
    pa=90+(U.nf-120)*8/100;

    agrupa bien por ejemplo asi: pa=90+((U.nf-120)*8/100);
     
  3. pablito clavito

    pablito clavito Suspendido

    Registro:
    16 Set 2009
    Mensajes:
    3
    Likes:
    0
    Corrige primero los errores de sintaxis. :plop:

    Pablito
     
  4. kevin_arthur

    kevin_arthur Suspendido

    Registro:
    21 Set 2008
    Mensajes:
    229
    Likes:
    0
    okay gracias! :)

    en q parte salen errores de sintaksis??

    a mi no me salio ningun error u_U
     
  5. BLake

    BLake Miembro frecuente

    Registro:
    6 Mar 2009
    Mensajes:
    192
    Likes:
    17
    No hay errores de sintaxis lo que pasa es que eso es C y seguramente tu estas compilando con un ide de C++.
     
  6. kevin_arthur

    kevin_arthur Suspendido

    Registro:
    21 Set 2008
    Mensajes:
    229
    Likes:
    0
    mmmm entonces que porgrama deebo usar

    yo uso el borland C++
     
  7. kevin_arthur

    kevin_arthur Suspendido

    Registro:
    21 Set 2008
    Mensajes:
    229
    Likes:
    0
    por fa cierren el tema ya resolvi el problema ..

    gracias!
     
  8. gyzav

    gyzav Miembro nuevo

    Registro:
    18 Abr 2008
    Mensajes:
    34
    Likes:
    1
    Esta Bien kevin ya resolviste el problema pero dinos como que ya me entro la curiosidad.:hi:
     
  9. kevin_arthur

    kevin_arthur Suspendido

    Registro:
    21 Set 2008
    Mensajes:
    229
    Likes:
    0
    mmm pues en donde presentaba o mostraba algo tenia que ponerle ... fflush(stdin);

    les pondre el que me quedo... le cambie algunas cosas... el originla no lo tengo.. por q lo pase a mano le di al profe xD!

    bueno ahi va


    #include<conio.h>
    #include<stdio.h>
    #include<string.h>
    #define MU 100

    struct user
    {
    char nombre[50],numero[7],codigo[6];
    int nf,nc;
    float total;
    };

    struct ListaUser
    {
    user Data[MU];
    int N;
    };


    int leeEntero(char texto[],int min , int max)
    {
    int d;
    do{
    printf("%s",texto);
    scanf("%d",&d);
    }while(!(d>=min && d<=max));
    return d;
    }

    void inicia(user &U)
    {
    U.nombre[0]=NULL;
    U.numero[0]=NULL;
    U.codigo[0]=NULL;
    U.nc=0;
    U.nf=0;
    U.total=0.00;

    }

    float Calctotal(user &U )
    {
    float total,pa,pb ;
    if( U.nf>120)
    pa=(90+((U.nf-120)*8/100));
    else
    pa=90;

    pb=(U.nc*35)/100;
    total=(pa+pb);
    return total;
    }

    void lee(user &U)
    {
    fflush(stdin);
    clrscr();
    do{
    printf("\nINGRESE NOMBRE: ");
    gets(U.nombre);
    }while((U.nombre==NULL));
    do{
    printf("\nINGRESE CODIGO DEL USUARIO(5 digitos): ");
    gets(U.codigo);
    }while(strlen(U.codigo)!=5);
    do{
    printf("\nINGRESE NUMERO TELEFóNICO: ");
    gets(U.numero);
    }while(strlen(U.numero)!=6);
    U.nf=leeEntero("Minutos en llamdas a fijos: ",0,1000);
    U.nc=leeEntero("Minutos en llamas a celulares: ",0,500);
    U.total=Calctotal(U);
    }

    void Presenta(user &U)
    {
    clrscr();
    printf("Nombre : %s\n",U.nombre);
    printf("Numero : %s\n",U.numero);
    printf("Codigo : %s\n",U.codigo);
    printf("Cantidad de minutos llamadas a fijos: %d \n",U.nf);
    printf("Cantidad de minutos llamadas a celulares: %d \n",U.nc);
    printf("\t\tTOTAL A PAGAR: %f",U.total);
    }

    void inicia(ListaUser &LU)
    {
    for(int i=0;i<MU;i++)
    inicia(LU.Data);
    LU.N=0;
    }

    void lee(ListaUser &LU)
    {
    clrscr();
    fflush(stdin);
    for(int i=0;i<LU.N;i++)
    lee(LU.Data);
    LU.N=MU;
    }
    void presenta(ListaUser &LU)
    {
    int ind;
    clrscr();
    if(LU.N>0)
    {printf("N: %d \n\n",LU.N);
    ind=leeEntero("Ingrese posicion(entre 0 y N-1) mostrar: ",0,LU.N-1);
    clrscr();
    printf("Nombre : %s\n",LU.Data[ind].nombre);
    printf("Numero : %s\n",LU.Data[ind].numero);
    printf("Codigo : %s\n",LU.Data[ind].codigo);
    printf("Cantidad de minutos llamadas a fijos: %d \n",LU.Data[ind].nf);
    printf("Cantidad de minutos llamadas a celulares: %d \n",LU.Data[ind].nc);
    printf("\t\tTOTAL A PAGAR: %f",LU.Data[ind].total);
    getch();
    }
    else
    printf("No hay elementos.");

    }

    void elimina(ListaUser &LU)
    {
    clrscr();
    int i,ind;
    if(LU.N>0)
    {
    printf("N: %d \n\n",LU.N);
    ind=leeEntero("Ingrese posicion(entre 0 y N-1) a eliminar: ",0,LU.N-1);
    for(i=ind;i<LU.N;i++)
    LU.Data=LU.Data[i+1];
    LU.N--;
    }
    else
    printf("No hay elementos.");
    }

    void modifica(ListaUser &LU)
    {
    clrscr();
    int b;

    if(LU.N>0)
    {
    fflush(stdin); printf("N: %d \n\n",LU.N);
    b=leeEntero("Ingrese posición a eliminar(entre 0 y N-1): ",0,LU.N-1);
    printf("\n\nUSUARIO A MODIFICAR\n");
    do{ fflush(stdin);
    printf("\n INGRESE NUEVO NOMBRE: ");
    gets(LU.Data.nombre);
    }while((LU.Data.nombre==NULL));
    do{
    printf("\n INGRESE NUEVO CODIGO DEL USUARIO(5 digitos): ");
    gets(LU.Data.codigo);
    }while(strlen(LU.Data.codigo)!=5);
    do{
    printf("\n INGRESE NUEVO NUMERO TELEFONICO: ");
    gets(LU.Data.numero);
    }while(strlen(LU.Data.numero)!=6);
    printf("\n");
    LU.Data.nf=leeEntero(" Minutos en llamdas a fijos: ",0,1000);
    printf("\n");
    LU.Data.nc=leeEntero(" Minutos en llamas a celulares: ",0,500);
    printf("\n");
    LU.Data.total=Calctotal(LU.Data);
    }
    else
    printf("No hay elementos.");
    }

    void procesa(ListaUser &LU)
    {
    int opt;
    do{fflush(stdin);
    clrscr();
    printf("\t\t*** MENU *** \n\n");
    printf("<1> REGISTRAR CLIENTES");
    printf("\n<2> MOSTRAR SEGUN INDICE");
    printf("\n<3> ELIMINAR SEGUN INDICE");
    printf("\n<4> MODIFICAR SEGUN INDICE");
    printf("\n<5> SALIR\n\n");
    opt=leeEntero("Ingrese opcion: ",1,5);


    switch(opt)
    {
    case 1: lee(LU); break;
    case 2: presenta(LU); break;
    case 3: elimina(LU); break;
    case 4: modifica(LU); break;

    }
    }while(opt!=5);
    getch();
    }

    void main()
    {
    ListaUser LU;
    inicia(LU);
    procesa(LU);
    }




    bueno ahi esta espero te sirva alguna cosa! :)

    saludos!


    edito : mis validaciones no son eprfectas por ejemplo a la hora de poner nombre puedoponer numeros ... y en el numero puedo poner letras cometo esos errorres por que aun no he aprendido como hacerlo... gracias y espero me comprendan
     
    Última edición: 24 Set 2009
  10. gyzav

    gyzav Miembro nuevo

    Registro:
    18 Abr 2008
    Mensajes:
    34
    Likes:
    1
    [​IMG]Muchas gracias por Responder Kevin Arthur:)
    ya que estas en Xiclalloh :errr: si la ves le saludas a mi prima que se parece a
    Alanis Morisette:biggrin:

    Haber si en un tema otrodia hablamos de Computacion ,o mejor postea en 1 tema q hice en Discusion general es:
    Los Records de tu PC:wow:
    :chau:
     
    Última edición: 24 Set 2009
  11. kevin_arthur

    kevin_arthur Suspendido

    Registro:
    21 Set 2008
    Mensajes:
    229
    Likes:
    0
    tu prima me hablas como si solo hubiera una chica xD!!

    en fin... no posteo mucho por acá! :)

    si hablititas tusmensajes ded visita seria mejor... pr auna mejor comunicacion has visto mi perfil verdad? xD!!

    bueno saludos! dedsde Chiclayo! :)
     
  12. bedia

    bedia Miembro nuevo

    Registro:
    27 Set 2009
    Mensajes:
    1
    Likes:
    0
    ta muy bien espero que me ayuden
     
  13. bebito_agu

    bebito_agu Miembro de bronce

    Registro:
    21 Oct 2008
    Mensajes:
    1,131
    Likes:
    56
    Entre chiclayanos: ¿Cómo se llama el programa que quieres crear, para qué sirve y en qué plataformas correrá?
     
    Última edición: 27 Set 2009
  14. kevin_arthur

    kevin_arthur Suspendido

    Registro:
    21 Set 2008
    Mensajes:
    229
    Likes:
    0
    para que sirve... pues para una operadora telefonica...

    correrá en windows es obvio... u_U

    no soy un experto recien me estoy iniciando... disculpe usted..
     
Etiquetas: