Está en la página 1de 15

24 DE SEPTIEMBRE DE 2022

DISEÑO DE ALGORITMOS
CHRISTIAN ENRIQUEZ LOZANO

ABEL FLORES TERAN


USUARIO ROSARIO CASTELLANOS
LAIT304B1_O_22-2
1

Programa con una función el cálculo de la cuota del IMSS


con los siguientes valores
#include <iostream>

using namespace std;

// declaracion de variables globales

int nivelS;

int rangoS;

int diasLabor;

double importeIMSS;

double isr;

// declaracion de funciones declaradas por el usuario

void mensajeSwitch(double bruto);

void tabuladorSueldoBruto(int nivel);

void calculoISR(double sueldoB, int rangSal);

void cuotalIMSS(double sueldoB, int diaslaborados);

void calculoSueldoNeto(double sueldoB, double IMSS, double ISR);

//Funcion Principal

int main(){

double sueldo;

cout<<"Niveles de Sueldo"<<endl;

cout<<"\n1. Nivel 1: Operativo 1";

ABEL FLORES TERAN 1


2

cout<<"\n2. Nivel 2: Operativo 2";

cout<<"\n3. Nivel 3: Operativo 3";

cout<<"\n4. Nivel 4: Operativo 4";

cout<<"\n5. Nivel 5: Operativo 5";

cout<<"\n6. Nivel 6: Analista 1";

cout<<"\n7. Nivel 7: Jefe de Oficina 1";

cout<<"\n8. Nivel 8: Jefe de Oficina 2";

cout<<"\n9. Nivel 9: Jefe de Oficina 3\n";

cin >> nivelS;

cout<<"\nNiveles de Sueldo"<<endl;

cout<<"\n1. Caso 1: $4,910.19 a $8,629.20";

cout<<"\n2. Caso 2: $8,629.21 a $10,031.07";

cout<<"\n3. Caso 3: $10,031.08 a $12,009.94";

cout<<"\n4. Caso 4: $12,009.95 a $24,222.31";

cout<<"\n5. Caso 5: $24,222.32 a $38,177.69";

cout<<"\n6. Caso 6: $38,177.70 a $70,887.50";

cout<<"\n7. Caso 7: $70,887.51 a $97,183.33\n";

cin >> rangoS;

switch (nivelS){

double m;

case 1:

sueldo=5063*1.25;

ABEL FLORES TERAN 2


3

break;

case 2:

sueldo=5571*1.25;

break;

case 3:

sueldo=6710*1.25;

break;

case 4:

sueldo=8862*1.25;

break;

case 5:

sueldo=11902*1.25;

break;

case 6:

sueldo=13927*1.25;

break;

case 7:

sueldo=17725*1.25;

break;

case 8:

sueldo=22789*1.25;

break;

case 9:

sueldo=31652*1.25;

ABEL FLORES TERAN 3


4

break;

default:

cout << "Nivel Salarial Incorrecto" ;

cout<<"\nDias que laboraste en este mes\n";

cin >> diasLabor;

tabuladorSueldoBruto(nivelS);

calculoISR(sueldo, rangoS);

cuotalIMSS(sueldo, diasLabor);

calculoSueldoNeto(sueldo, importeIMSS, isr);

// Crea cion de funciones declaradas por el usuario

void mensajeSwitch(double bruto){

cout << "\nSu sueldo bruto es de: $"<< bruto;

void tabuladorSueldoBruto(int nivel){

switch (nivelS){

ABEL FLORES TERAN 4


5

double sueldo;

case 1:

sueldo=5063*1.25;

mensajeSwitch(sueldo);

break;

case 2:

sueldo=5571*1.25;

mensajeSwitch(sueldo);

break;

case 3:

sueldo=6710*1.25;

mensajeSwitch(sueldo);

break;

case 4:

sueldo=8862*1.25;

mensajeSwitch(sueldo);

break;

case 5:

sueldo=11902*1.25;

mensajeSwitch(sueldo);

break;

case 6:

sueldo=13927*1.25;

mensajeSwitch(sueldo);

ABEL FLORES TERAN 5


6

break;

case 7:

sueldo=17725*1.25;

mensajeSwitch(sueldo);

break;

case 8:

sueldo=22789*1.25;

mensajeSwitch(sueldo);

break;

case 9:

sueldo=31652*1.25;

mensajeSwitch(sueldo);

break;

default:

cout << "Nivel Salarial Incorrecto" ;

break;

void calculoISR(double sueldoB, int rangSal){

switch (rangSal){

double m;

case 1:

isr=((sueldoB-4910.19)*.1088)+288.33;

ABEL FLORES TERAN 6


7

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 2:

isr=((sueldoB-8629.21)*.16)+692.96;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 3:

isr=((sueldoB-10031.08)*.1792)+917.26;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 4:

isr=((sueldoB-12009.95)*.2136)+1271.87;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 5:

isr=((sueldoB-24222.31)*.2352)+3880.44;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 6:

isr=((sueldoB-38177.70)*.30)+7162.74;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 7:

isr=((sueldoB-72887.51)*.32)+17575.36;

ABEL FLORES TERAN 7


8

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

default:

cout << "Rango Salarial Incorrecto" ;

void cuotalIMSS(double sueldoB, int diaslaborados){

double CAO;

double gastosMedicos;

double gastosInv;

double sueldoDiario;

sueldoDiario=sueldoB/diaslaborados;

CAO=(((sueldoDiario-123.22)*3)*diaslaborados)*.011;

if(CAO < 0){

CAO=0;

gastosMedicos=(sueldoDiario*diaslaborados)*0.0375;

gastosInv=(sueldoDiario*diaslaborados)*0.0625;

ABEL FLORES TERAN 8


9

importeIMSS=CAO+gastosInv+gastosMedicos;

cout<<"\nImporte IMSS es: $"<<importeIMSS;

void calculoSueldoNeto(double sueldoB, double IMSS, double ISR){

double sueldoN;

sueldoN=sueldoB-IMSS-ISR;

cout<<"\n\nTu sueldo neto es de: $"<<sueldoN;

Programa en una función el cálculo del sueldo neto, con


los siguientes valores.

ABEL FLORES TERAN 9


10

Relaciona la función del cálculo de la cuota del


IMSS cuotaIMSS con la función del cálculo del sueldo
neto sueldoNeto e ingresa los datos de sueldo bruto e ISR.
void tabuladorSueldoBruto(int nivel){

switch (nivelS){

double sueldo;

case 1:

sueldo=5063*1.25;

mensajeSwitch(sueldo);

break;

case 2:

sueldo=5571*1.25;

mensajeSwitch(sueldo);

break;

case 3:

sueldo=6710*1.25;

mensajeSwitch(sueldo);

break;

case 4:

sueldo=8862*1.25;

mensajeSwitch(sueldo);

break;

case 5:

1
ABEL FLORES TERAN
0
11

sueldo=11902*1.25;

mensajeSwitch(sueldo);

break;

case 6:

sueldo=13927*1.25;

mensajeSwitch(sueldo);

break;

case 7:

sueldo=17725*1.25;

mensajeSwitch(sueldo);

break;

case 8:

sueldo=22789*1.25;

mensajeSwitch(sueldo);

break;

case 9:

sueldo=31652*1.25;

mensajeSwitch(sueldo);

break;

default:

cout << "Nivel Salarial Incorrecto" ;

break;

}
1
ABEL FLORES TERAN
1
12

void calculoISR(double sueldoB, int rangSal){

switch (rangSal){

double m;

case 1:

isr=((sueldoB-4910.19)*.1088)+288.33;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 2:

isr=((sueldoB-8629.21)*.16)+692.96;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 3:

isr=((sueldoB-10031.08)*.1792)+917.26;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 4:

isr=((sueldoB-12009.95)*.2136)+1271.87;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 5:

isr=((sueldoB-24222.31)*.2352)+3880.44;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;
1
ABEL FLORES TERAN
2
13

case 6:

isr=((sueldoB-38177.70)*.30)+7162.74;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

case 7:

isr=((sueldoB-72887.51)*.32)+17575.36;

cout<<"\nSu importe de ISR es de: $"<<isr;

break;

default:

cout << "Rango Salarial Incorrecto" ;

void cuotalIMSS(double sueldoB, int diaslaborados){

double CAO;

double gastosMedicos;

double gastosInv;

double sueldoDiario;

sueldoDiario=sueldoB/diaslaborados;

CAO=(((sueldoDiario-123.22)*3)*diaslaborados)*.011;

if(CAO < 0){


1
ABEL FLORES TERAN
3
14

CAO=0;

gastosMedicos=(sueldoDiario*diaslaborados)*0.0375;

gastosInv=(sueldoDiario*diaslaborados)*0.0625;

importeIMSS=CAO+gastosInv+gastosMedicos;

cout<<"\nImporte IMSS es: $"<<importeIMSS;

void calculoSueldoNeto(double sueldoB, double IMSS, double ISR){

double sueldoN;

sueldoN=sueldoB-IMSS-ISR;

cout<<"\n\nTu sueldo neto es de: $"<<sueldoN;

1
ABEL FLORES TERAN
4

También podría gustarte