Salve a tutti, dovrei risolvere un esercizio che chiede di calcolare uno stipendio in base alle ore lavorate. Lo stipendio è uguale alle ore lavorate * il valore monetario di ogni ora; nel caso in cui le ore sono più di 40, le ore successive alla 40esima vengono pagate una volta e mezzo il valore delle ore "normali"
ad esempio con 40 ore lavorate ed un valore di 10 euro all'ora, il salario sarà di 400
con 41 ore invece sarà di 415
ecco, il mio codice con 41 ore mi restituisce 425
#include <stdio.h>
int main()
{
int ore, pagamento_orario, salario;
while (ore > 0)
{
printf("Inserisci il numero di ore lavorate: \n");
scanf("%d", &ore);
printf("Inserisci il valore monetario di ogni ora: \n");
scanf("%d", &pagamento_orario);
salario = ore * pagamento_orario;
if (ore > 40)
salario = salario + (ore - 40) * pagamento_orario + (pagamento_orario / 2);
printf("Il tuo salario è %d\n", salario);
}
return 0;
}