Hallo en welkom. Nu we klaar zijn
met onze colleges over beslissingen, het if-statement en het switch-statement, wil
ik je een kleine opdracht geven, een kleine uitdaging.
Dus in deze uitdaging ga je een c-programma maken dat je weekloon berekent.
Dit programma moet de gebruiker vragen om het aantal gewerkte uren in een week via het
toetsenbord in te voeren.
Programma moet als output, het brutoloon, de belastingen en het nettoloon worden weergegeven.
Daarom moeten de volgende basisveronderstellingen worden gemaakt.
Het loon wordt 12 dollar per uur.
Overwerk is elke keer dat je meer dan 40 uur hebt, je krijgt anderhalve tijd betaald.
Het belastingtarief zal afhangen van hoeveel geld u verdient.
Voor de eerste 300 dollar die je verdient, wordt het 15%.
Voor de tweede 150 dollar, 300 tot 450, wordt het 20%.
En voor alles boven de 450 krijgt
u het belastingtarief van 25%.
Dus het eerste dat opvalt, is dat je veel beslissingen zult moeten schrijven.
En het hele doel van deze opdracht is om je vertrouwd te maken met de if else-statements.
Dus wat ik voor deze opdracht
verwacht, is dat je eerst een if else-verklaring nodig hebt om de
overuren te berekenen.
Overwerk is dus alles boven de 40
uur. Je moet dus kijken of er overuren zijn. Je zult moeten
zeggen dat als het aantal ingevoerde uren groter is dan 40, ze 18 dollar per uur zullen krijgen.
Nu wil je er zeker van zijn dat ze alleen betaald
krijgen voor de uren na 40.
Dus als je 45 invult is het aantal gewerkte uren,
dan krijg je 12 dollar per uur betaald voor die eerste 40 uur.
En dan voor de andere 5 uur, verdien je 18 dollar per uur.
Daar moet je dus rekening mee houden.
En dan met de belastingtarieven, moet je if-verklaringen hebben. Want afhankelijk van of
ze meer dan 300 dollar of meer dan 450 dollar
verdienden, krijg je extra belastingtarieven. Dus als de gebruiker 45 heeft
ingevoerd en dat betekent dat u overuren moet berekenen.
Wat uiteindelijk 45 uur zal gebeuren, ik denk dat het loon ruwweg zal zijn,
laten we zeggen, 12 dollar per uur maal
40 is 480.
En dan krijg je voor die
5 extra uren 18 dollar per uur betaald,
dat is 90 dollar. Dus 480 plus 90 is 570.
Dus je moet voor het brutoloon 570 weergeven, dat zou een
voorbeeldrun zijn, 570 dollar
voor brutoloon. Nu worden
de belastingen voor die hele 570 anders berekend.
Dus voor de eerste 300 die
je verdient, heb je een belastingtarief van 15%. U wilt dus 15% van 300 belasten.
En dan van 300 naar 450, dat is 150 dollar, daar wordt 20%
belasting op geheven, alleen de 150.
En als u meer verdient, gaat u het tarief
van 25% belasten.
Verwar deze belastingtarieven dus niet.
De belastingtarieven zijn verschillend voor elk bedrag dat u verdient, niet voor
het totaal.
Dus als je 800 dollar hebt verdiend, wil dat nog niet zeggen dat je 25% belasting hebt betaald.
Het betekent dat je 300 van die 800 als
15% hebt betaald, 150 van die
800 als 20% en dan is 350 dollar van de resterende 25%.
En dat zal je dwingen om anders verklaringen te schrijven.
Dus ik wilde dat duidelijk maken wat betreft de output en wat we zoeken.
Dus ga hier eens over. De vereisten zijn vrij eenvoudig.
Je zult een aantal uur iets via het toetsenbord moeten invoeren.
Het eerste dat u wilt doen, is uw programma organiseren.
Je wilt constant testen, je wilt betekenisvolle namen gebruiken.
En voor de if-statements wilt u inspringen. U wilt al uw blokken laten inspringen, zodat het gemakkelijker te lezen is.
Je had moeten opmerken dat ik in al mijn lezingen, al mijn voorbeelden, code aan het inspringen was.
Maak er een gewoonte van om blokken in te laten springen en nieuwe regels toe te voegen voor de leesbaarheid.
Maar u kunt dit programma groeperen in het probleemoplossende aspect.
Het eerste wat ik zou doen, is dat ik de gebruiker
het nummer zou laten invoeren en het zou testen en controleren of het werkt.
Het volgende dat ik zou doen, is het brutoloon berekenen.
Dus het brutoloon omvat eigenlijk alleen het berekenen van het overwerk als het meer dan 40 is.
Als ik klaar ben met brutoloon, zou ik het als een gek testen om er zeker van te zijn dat het werkt. Dan zou ik verder gaan met belastingen en
ik zou de belastingen testen.
En als ik dan eenmaal klaar ben met de
belastingen, zou ik het nettoloon berekenen. Het nettoloon zal het gemakkelijkste
deel zijn, omdat het gewoon het brutoloon minus de belastingen zal zijn.
Maar ik hoop dat je aan het einde van deze oefening behoorlijk
bedreven zult worden in if-statements. U zult op zijn minst de
basis begrijpen, de rest begrijpen, begrijpen wanneer u haakjes moet toevoegen en
begrijpen hoe u uw code leesbaarder kunt maken door goede namen van variabelen te laten inspringen
en te gebruiken. Veel geluk. Dank u.