nikpez
Ominide
1 min. di lettura
Vota 3 / 5

Concetti Chiave

  • Il programma calcola la paga di un dipendente basandosi sull'orario di lavoro inserito dall'utente.
  • Utilizza una struttura 'orario' per memorizzare ore, minuti e secondi lavorati.
  • Include una funzione 'orarioValido' per verificare la validità degli orari inseriti dall'utente.
  • La funzione 'differenzaOrari' calcola la differenza tra due orari inseriti per determinare il tempo di lavoro effettivo.
  • Il guadagno è calcolato moltiplicando le ore per 40 e i minuti convertiti in frazioni di ora.
Calcolo di una paga di un dipendente

#include

struct orario{
int ore;
int minuti;
int secondi;
};
int orarioValido(struct orario p1);
struct orario differenzaOrari(struct orario p1,struct orario p2);

int main()
{
struct orario p1,p2;
int valido=0,valido2=0;

do
{
printf("Digita l'ora di lavoro: \n");
scanf("%d",&p1.ore);
fflush(stdin);

printf("Digita i minuti di lavoro: \n");
scanf("%d",&p1.minuti);
fflush(stdin);

printf("Digita i secondi di lavoro: \n");
scanf("%d",&p1.secondi);
fflush(stdin);

valido=orarioValido(p1);

if(valido==0)
printf("L'orario non e' valido\n");
}while(valido==0);

do
{
printf("\nDigita l'ora di lavoro: \n");
scanf("%d",&p2.ore);
fflush(stdin);

printf("Digita i minuti di lavoro: \n");
scanf("%d",&p2.minuti);
fflush(stdin);

printf("Digita i secondi di lavoro: \n");
scanf("%d",&p2.secondi);
fflush(stdin);

valido2=orarioValido(p2);

if(valido2==0)
printf("L'orario non e' valido");
}while(valido2==0);

p1=differenzaOrari(p1,p2);

printf("Il guadagno e' : %d",p1.ore*40+(p1.minuti*40)/60);

getchar();
return 0;
}

int orarioValido(struct orario p1)
{
if((p1.ore return 1;
else
return 0;
}

struct orario differenzaOrari(struct orario p1,struct orario p2)
{

p1.ore=p2.ore-p1.ore;
p1.minuti=p2.minuti-p1.minuti;
p1.secondi=p2.secondi-p1.secondi;

return p1;
}

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community