C/Visual C - Ayudenmeeeeee plissssssss

 
Vista:

Ayudenmeeeeee plissssssss

Publicado por liz (2 intervenciones) el 20/10/2001 22:24:09
necesito un programa de nomina en c.
por favor mandenme ayuda.
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
Imágen de perfil de Alejandro

Programa de nómina en C

Publicado por Alejandro (913 intervenciones) el 17/10/2024 17:08:13
Liz, aquí tienes un ejemplo básico de un programa de nómina en C. Este programa permite ingresar los datos de los empleados, calcular su salario y mostrar la nómina.

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <stdio.h>
 
#define MAX_EMPLEADOS 100
 
struct Empleado {
    char nombre[50];
    float salarioBase;
    float horasExtra;
    float salarioTotal;
};
 
void calcularSalario(struct Empleado *emp) {
    const float tarifaHoraExtra = 1.5; // Tarifa por hora extra
    emp->salarioTotal = emp->salarioBase + (emp->horasExtra * (emp->salarioBase / 40) * tarifaHoraExtra);
}
 
void mostrarNomina(struct Empleado emp[], int numEmpleados) {
    printf("\n--- Nómina ---\n");
    printf("Nombre\t\tSalario base\tHoras extra\tSalario total\n");
    for (int i = 0; i < numEmpleados; i++) {
        printf("%s\t\t%.2f\t\t%.2f\t\t%.2f\n", emp[i].nombre, emp[i].salarioBase, emp[i].horasExtra, emp[i].salarioTotal);
    }
}
 
int main() {
    struct Empleado empleados[MAX_EMPLEADOS];
    int numEmpleados = 0;
    char continuar;
 
    do {
        if (numEmpleados >= MAX_EMPLEADOS) {
            printf("Se ha alcanzado el número máximo de empleados.\n");
            break;
        }
 
        printf("Ingrese el nombre del empleado: ");
        scanf("%s", empleados[numEmpleados].nombre);
 
        printf("Ingrese el salario base: ");
        scanf("%f", &empleados[numEmpleados].salarioBase);
 
        printf("Ingrese las horas extra: ");
        scanf("%f", &empleados[numEmpleados].horasExtra);
 
        calcularSalario(&empleados[numEmpleados]);
        numEmpleados++;
 
        printf("¿Desea agregar otro empleado? (s/n): ");
        scanf(" %c", &continuar);
    } while (continuar == 's' || continuar == 'S');
 
    mostrarNomina(empleados, numEmpleados);
 
    return 0;
}

Explicación del programa:



1. Estructura `Empleado`: Define la estructura que contiene el nombre del empleado, su salario base, horas extra y salario total.

2. Función `calcularSalario`: Calcula el salario total del empleado, considerando las horas extra.

3. Función `mostrarNomina`: Muestra la nómina de todos los empleados ingresados.

4. Función `main`:
- Permite ingresar los datos de los empleados.
- Pregunta si se desea agregar otro empleado.
- Llama a las funciones para calcular y mostrar la nómina.

Compilación y ejecución:



Para compilar y ejecutar el programa, puedes usar un compilador de C como GCC. Guarda el código en un archivo llamado `nomina.c` y usa el siguiente comando:

1
2
gcc nomina.c -o nomina
./nomina

Personalización:



Puedes personalizar el programa según tus necesidades, como agregar más campos (por ejemplo, ID del empleado, departamento, etc.) o modificar la lógica de cálculo del salario.
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