Concetti Chiave

  • Il garage applica un costo minimo di $2,00 per il parcheggio fino a tre ore.
  • Ogni ora aggiuntiva oltre le tre ore comporta un addebito di $0,50, fino a un massimo di $10,00 per 24 ore.
  • Il programma calcola e visualizza gli addebiti per tre clienti in un formato tabulare ordinato.
  • Utilizza la funzione calculateCharges per determinare il costo di ogni cliente in base alle ore di parcheggio.
  • Il totale delle ricevute di parcheggio viene calcolato e mostrato al termine del programma.



/*

* Un garage addebita un importo minimo di $2,00 per un parcheggio

* fino a tre ore.

* Il garage addebita un'addizionale di $0,50 per ogni ora o frazione

* di essa che ecceda le tre di base. L'addebito massimo per ogni dato

* periodo di 24 ore è $10,00.

* Assumete che nessuna auto parcheggi per più di 24 ore per volta.

Calcolo degli addebiti

* Scrivete un programma che calcoli e visualizzi gli addebiti

* per ognuno dei tre clienti che hanno parcheggiato le proprie

* auto in questo garage ieri.

* Dovrete immettere le ore di parcheggio per ogni cliente.

* Il vostro programma dovrà visualizzare i risultati in un formato

* tabulare ordinato e dovrà calcolare e visualizzare il totale delle

* ricevute di ieri. Il programma dovrà utilizzare la funzione

* calculateCharges per determinare l'addebito di ogni cliente.

* I vostri risultati dovranno apparire nel seguente formato:

*

* Car Hours Charge

* 1 1.5 2.00

* 2 4.0 2.50

* 3 24.0 10.00

* TOTAL 29.5 14.50

**/

Implementazione del programma

#include

#include

float calculateCharges(float);

int main(void) {

float hours1, hours2, hours3, hoursTotal = 0;

float charge1, charge2, charge3, chargesTotal;

printf("Enter hours for car 1: ");

scanf("%f", &hours1);

hoursTotal += hours1;

charge1 = calculateCharges(hours1);

printf("Enter hours for car 2: ");

scanf("%f", &hours2);

hoursTotal += hours2;

charge2 = calculateCharges(hours2);

printf("Enter hours for car 3: ");

scanf("%f", &hours3);

hoursTotal += hours3;

charge3 = calculateCharges(hours3);

printf("\n%-8s%8s%8s\n", "Car", "Hours", "Charge");

printf("%-8d%8.2f%8.2f\n", 1, hours1, charge1);

printf("%-8d%8.2f%8.2f\n", 2, hours2, charge2);

printf("%-8d%8.2f%8.2f\n", 3, hours3, charge3);

chargesTotal = charge1 + charge2 + charge3;

printf("%-8s%8.2f%8.2f\n\n", "TOTAL", hoursTotal, chargesTotal);

return 0;

}

float calculateCharges(float _hours) {

float charges = 2.00; /* fixed */

if (_hours > 3.00) { /* more than 3 hours */

charges += 0.50 * ceil(_hours - 3.00);

}

if (charges > 10.00) {

charges = 10.00;

}

return charges;

}

Domande da interrogazione

  1. Qual è l'importo minimo addebitato per il parcheggio in garage?
  2. L'importo minimo addebitato per il parcheggio in garage è di $2,00 per un massimo di tre ore.

  3. Come vengono calcolati gli addebiti per il parcheggio oltre le tre ore?
  4. Per ogni ora o frazione di essa che eccede le tre ore, viene addebitato un supplemento di $0,50, con un addebito massimo di $10,00 per ogni periodo di 24 ore.

  5. Qual è il formato richiesto per visualizzare i risultati degli addebiti?
  6. I risultati devono essere visualizzati in un formato tabulare ordinato, mostrando il numero dell'auto, le ore di parcheggio e l'addebito corrispondente, insieme al totale delle ricevute.

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community