elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Corrección de programa en C
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Corrección de programa en C  (Leído 2,460 veces)
Xgirl12

Desconectado Desconectado

Mensajes: 27


Ver Perfil
Corrección de programa en C
« en: 7 Noviembre 2012, 04:35 am »

Hola de nuevo, un gusto saludarlos.
La verdad es un poco penoso estar pregunte y pregunte, pero pues no me queda de otra y pues agradecer su paciencia.

Ahora lo que me trae por aca, es que acabo de hacer un programa que me calcula el sueldo de un trabajador, según indica sus horas trabajadas y selecciona a la zona geográfica que le corresponda (En México se usan diferentes salarios mínimos para las diferentes regiones del país por lo que se divide en a, b, o c).
Entonces yo hice este código, nada más el punto en donde estoy atorada, es por ejemplo:
case'a':("Selecciono ZonA\n");
            scanf("%f", &ZonA);
            sueldo = ZonA * horas;
            printf("Su sueldo es: %.2f\n\n ", ZonA);
            system("pause");
En este punto donde puse en negrita, no entiendo por qué me pone que primero declare la función, si estoy declarando (según yo) bien la variable y pues también las bibliotecas... Entonces si alguien me puede explicar, y tomarse tantito tiempo, pues infinitamente agradecida.
Por otro lado, aquí les paso todo el código y sólo me resta esperar sus comentarios.
Gracias.

Código:
#include <stdio.h>
#include <stdlib.h>
#include<conio.h>
 main()
{
  /* Mis variables */
  textbackground(3) ;
  int horas;
float zonA=62.33, zonaB=60.57, zonaC=59.08, sueldo;
char opc;
do
{
      

  /* Lectura del número de horas trabajadas */
  
  printf("Ingrese el numero de horas trabajadas:%d\n", horas );
    
  scanf("%d", &horas);
  
 
  printf("Introduzca la zona geografica que le corresponda:\n" );
  printf("\n a. ZonA. \n b. ZonaB. \n c. ZonaC. \n d. Salir ");

   system("cls");
   opc=getche();
  
  
  switch(opc)
  {
            case'a':("Selecciono ZonA\n");
            scanf("%f", &ZonA);
            sueldo = ZonA * horas;
            printf("Su sueldo es: %.2f\n\n ", ZonA);
            system("pause");
            break;
            
            case'b':"Selecciono ZonaB \n",ZonaB);
            scanf("%f", &ZonaB);
            sueldo =ZonaB * horas;
            printf("Su sueldo es: %.2f\n\n ", ZonaB);
            system("pause");
            break;
            
            case'c':("Selecciono ZonaC \n");
            scanft("%f", &ZonaC);
            sueldo = ZonaC * horas;
            printf("Su sueldo es: %.2f\n\n ", ZonaC);
            system("pause");
            break;
            
            case'd': printf("\n\nAdios\n");
             system("pause");
                 break;
                     printf("\n\n OpcionInvalida");

    }/*Fin dela Selección Múltiple*/

    }while (opc!='d');
        
  
  
  
  return 0;
}


« Última modificación: 7 Noviembre 2012, 05:33 am por Xgirl12 » En línea

The Swash

Desconectado Desconectado

Mensajes: 194


Programmer


Ver Perfil WWW
Re: Corrección de programa en C
« Respuesta #1 en: 7 Noviembre 2012, 05:26 am »

Si pudieses poner tu código entre etiquetas
Código
  1.  
créeme que nos sería más cómodo y fácil ayudarte.

Saludos.


En línea

The Swash

Desconectado Desconectado

Mensajes: 194


Programmer


Ver Perfil WWW
Re: Corrección de programa en C
« Respuesta #2 en: 7 Noviembre 2012, 05:46 am »

Hola,

A ojo te podría decir que: "zonA" es diferente de "ZonA", C es casesensitive, es decir que diferencia entre mayúsculas y minúsculas.

Así que creo que tu problema será ese, a ojo no veo nada más.

Saludos.
En línea

Xgirl12

Desconectado Desconectado

Mensajes: 27


Ver Perfil
Re: Corrección de programa en C
« Respuesta #3 en: 7 Noviembre 2012, 06:17 am »

¿Sabes qué? Al final no me realiza la operación que tiene que hacer, no hace nada, ya corregí ese error de las mayúsculas y me lo corrió, pero no hace lo que te digo.

Salu2.
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Corrección de programa en C
« Respuesta #4 en: 7 Noviembre 2012, 06:28 am »

Citar
Tienes varios errores más, como en algunos printf, en poner en lugar de sueldo la Zona, usar el formato %d en los case en lugar de %c, ya que se va a tomar una letra la ausencia del caso default. En fin, creo que ya te funciona:
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include<conio.h>
  4. main()
  5. {
  6.  /* Mis variables */
  7.  int horas;
  8. float ZonA=62.33, ZonaB=60.57, ZonaC=59.08, sueldo;
  9. char opc;
  10. do
  11. {
  12.  /* Lectura del número de horas trabajadas */
  13.  printf("Ingrese el numero de horas trabajadas:" );
  14.  scanf("%d", &horas);
  15.  printf("Introduzca la zona geografica que le corresponda:\n" );
  16.  printf("\n a. ZonA. \n b. ZonaB. \n c. ZonaC. \n d. Salir ");
  17.   /*system("cls");*/
  18.   opc=getche();
  19.  switch(opc)
  20.  {
  21.            case'a':("Selecciono ZonA\n");
  22.            scanf("%c", &ZonA);
  23.            sueldo = ZonA * horas;
  24.            printf("\nSu sueldo es: %1.2f\n\n ", sueldo);
  25.            system("pause");
  26.            break;
  27.  
  28.            case'b':("Selecciono ZonaB \n");
  29.            scanf("%c", &ZonaB);
  30.            sueldo =ZonaB * horas;
  31.            printf("\nSu sueldo es: %1.2f\n\n ", sueldo);
  32.            system("pause");
  33.            break;
  34.  
  35.            case'c':("Selecciono ZonaC \n");
  36.            scanf("%c", &ZonaC);
  37.            sueldo = ZonaC * horas;
  38.            printf("\nSu sueldo es: %1.2f\n\n ",sueldo);
  39.            system("pause");
  40.            break;
  41.  
  42.            case'd': printf("\n\nAdios\n");
  43.             system("pause");
  44.                 break;
  45.                     printf("\n\n OpcionInvalida");
  46.            default: printf("\n\n OpcionInvalida\t");break;
  47.    }/*Fin dela Selección Múltiple*/
  48.  
  49.    }while (opc!='d');
  50.  return 0;
  51. }
Saludos!.
En línea

Xgirl12

Desconectado Desconectado

Mensajes: 27


Ver Perfil
Re: Corrección de programa en C
« Respuesta #5 en: 7 Noviembre 2012, 22:52 pm »

¡Sii! Muchas gracias, es que no me corria bien. Me han salvado todos, pero mil gracias leosansan por pasarte todo el código. Sin comentarios, simplemente gracias a todos.

Salu2.

 ;D
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
IE7pro 2.5.1 disponible con corrección de errores. Mejora IE con este programa..
Noticias
wolfbcn 0 1,561 Último mensaje 2 Junio 2010, 17:51 pm
por wolfbcn
Pido Corrección: Conversor Informática
Programación C/C++
Fluflu 6 2,977 Último mensaje 31 Agosto 2010, 05:53 am
por clodan
¿Que esta mal? [Correccion de codigo]
PHP
2Fac3R 8 3,075 Último mensaje 4 Noviembre 2011, 18:18 pm
por 2Fac3R
Corrección de ejercicio
Programación C/C++
Soulklax 9 4,093 Último mensaje 7 Noviembre 2016, 18:14 pm
por Soulklax
Corrección ejercicio en C de un bingo
Programación C/C++
vaillo33 6 3,149 Último mensaje 11 Enero 2019, 21:57 pm
por vaillo33
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines