Dev - C++ - El programa dejo de funcionar-ayuda c++ please

 
Vista:
Imágen de perfil de Alex
Val: 4
Ha disminuido su posición en 6 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

El programa dejo de funcionar-ayuda c++ please

Publicado por Alex (2 intervenciones) el 29/04/2018 02:53:59
En este codigo puedo registrara trabajadores pero si le doy en la opcion 3 del menu entonces se cierra el programa.

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#include <iostream>
#include <stdlib.h>
#include <string>
using namespace std;
int main(){
int menu,cantidadTrabajadores=1;
int codigo[10];
string nombres[10];
double sueldo[10],nuevosueldo[10];
double total=0,totalsueldo=0,totalaumento=0;
 
for(int i=1;i<=10;i++){
    sueldo[i]=0.0;nuevosueldo[i]=0.0;
    codigo[i]=0;
    nombres[i]="a";
}
 
 
cout<<"******-MENU DEL PROGRAMA-*******\n";
cout<<"1.Registrar nuevo trabajador\n";
cout<<"2.modificar trabajador\n";
cout<<"3.Mostrar Nomina\n";
cout<<"0.Salir\n";
cin>>menu;
while(menu!=0){
switch(menu){
case 1:
cout<<"\nIngrese el codigo del trabajador: \n";cin>>codigo[cantidadTrabajadores];
cout<<"\nIngrese el nombre del trabajador: \n";
getline(cin,nombres[++cantidadTrabajadores]);
cin>>nombres[cantidadTrabajadores];
cout<<"\nIngrese el sueldo del trabajador: \n$";
cin>>sueldo[cantidadTrabajadores];
 
if(sueldo[cantidadTrabajadores]<650){
    nuevosueldo[cantidadTrabajadores]=sueldo[cantidadTrabajadores]+sueldo[cantidadTrabajadores]*0.15;
    totalaumento=totalaumento+sueldo[cantidadTrabajadores]*0.15;
}
else if(sueldo[cantidadTrabajadores]>650&&sueldo[cantidadTrabajadores]<=1000){
    nuevosueldo[cantidadTrabajadores]=sueldo[cantidadTrabajadores]+sueldo[cantidadTrabajadores]*0.12;
    totalaumento=totalaumento+sueldo[cantidadTrabajadores]*0.12;
}
 
else if(sueldo[cantidadTrabajadores]>1000){
    nuevosueldo[cantidadTrabajadores]=sueldo[cantidadTrabajadores]+sueldo[cantidadTrabajadores]*0.09;
    totalaumento=totalaumento+sueldo[cantidadTrabajadores]*0.09;
}
cantidadTrabajadores++;
break;
case 3:
 
    for(int i=1;i<=10;i++){
    totalsueldo=sueldo[i]+totalsueldo;
    }
    total=totalsueldo+totalaumento;
    cout<<"La nomina es: \n\n";
 
    cout<<"Codigo.........Nombre........Sueldo........Nuevo sueldo\n";
 
    for(int i=1;i<=10;i++){
       /* if(codigo[i]!=0){*/
    cout<<codigo[i]<<".......";
    cout<<nombres[i]<<".......$";
    cout<<sueldo[i]<<".......$";
    cout<<nuevosueldo[i]<<"\n";
 
    }
    cout<<"\nEl total de los aumentos es: "<<totalaumento;
    cout<<"\nEl total de los sueldos es: "<<totalsueldo;
    cout<<"\nEl monto total es: "<<total;
break;
 
}
cout<<"\n******-MENU DEL PROGRAMA-*******\n";
cout<<"1.Registrar nuevo trabajador\n";
cout<<"2.modificar trabajador\n";
cout<<"3.Mostrar Nomina\n";
cout<<"0.Salir\n";
cin>>menu;
 
}
 
system("pause");
return 0;
}
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
Val: 682
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

El programa dejo de funcionar-ayuda c++ please

Publicado por dario (107 intervenciones) el 29/04/2018 15:35:32
A ver si esto te ayuda un poco. Hice unas correcciones a tu codigo.
Saludos.

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include <iostream>
//#include <stdlib.h>
//#include <string>
 
using namespace std;
 
int main() {
 
    int menu,cantidadTrabajadores=0;
    int codigo[10];
    string nombres[10];
    float sueldo[10],nuevosueldo[10];
    float total=0,totalsueldo=0,totalaumento=0;
 
    do {
        cout<<"******-MENU DEL PROGRAMA-*******\n";
        cout<<"1.Registrar nuevo trabajador\n";
        cout<<"2.modificar trabajador\n";
        cout<<"3.Mostrar Nomina\n";
        cout<<"0.Salir\n";
        cin>>menu;
 
        switch(menu) {
            case 1:
                cout<<"\nIngrese el codigo del trabajador: \n";cin>>codigo[cantidadTrabajadores];
                cout<<"\nIngrese el nombre del trabajador: \n";
                //getline(cin,nombres[++cantidadTrabajadores]);
                cin>>nombres[cantidadTrabajadores];
                cout<<"\nIngrese el sueldo del trabajador: \n$";
                cin>>sueldo[cantidadTrabajadores];
 
                if(sueldo[cantidadTrabajadores]<650){
                    nuevosueldo[cantidadTrabajadores]=sueldo[cantidadTrabajadores]+sueldo[cantidadTrabajadores]*0.15;
                    totalaumento=totalaumento+sueldo[cantidadTrabajadores]*0.15;
                }
                else if(sueldo[cantidadTrabajadores]>650&&sueldo[cantidadTrabajadores]<=1000){
                    nuevosueldo[cantidadTrabajadores]=sueldo[cantidadTrabajadores]+sueldo[cantidadTrabajadores]*0.12;
                    totalaumento=totalaumento+sueldo[cantidadTrabajadores]*0.12;
                }
                else if(sueldo[cantidadTrabajadores]>1000){
                    nuevosueldo[cantidadTrabajadores]=sueldo[cantidadTrabajadores]+sueldo[cantidadTrabajadores]*0.09;
                    totalaumento=totalaumento+sueldo[cantidadTrabajadores]*0.09;
                }
 
                cantidadTrabajadores++;
            break;
            case 3:
                for(int i=0;i<cantidadTrabajadores;i++){
                    totalsueldo=totalsueldo+sueldo[i];
                }
 
                total=totalsueldo+totalaumento;
                cout<<"La nomina es: \n\n";
                cout<<"Codigo\tNombre\tSueldo\tNuevo sueldo";
                cout << endl;
 
                for(int i=0;i<cantidadTrabajadores;i++){
                    /* if(codigo[i]!=0){*/
                    cout<<codigo[i] << "\t"
                        <<nombres[i]<<"\t"
                        <<sueldo[i]<<"\t"
                        <<nuevosueldo[i];
                    cout << endl;
                }
 
                cout<<"\nEl total de los aumentos es: "<<totalaumento;
                cout<<"\nEl total de los sueldos es: "<<totalsueldo;
                cout<<"\nEl monto total es: "<<total << endl;
            break;
        }
 
    } while (menu != 0);
 
    //system("pause");
    return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Alex
Val: 4
Ha disminuido su posición en 6 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

El programa dejo de funcionar-ayuda c++ please

Publicado por Alex (2 intervenciones) el 04/05/2018 04:25:10
Hombre muchisimas gracias!!!
Agradezco infinitamente tu ayuda!!!!!
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