Beräkna växel
Hej
Har precis börjat med programmering 1 och har det på distans. Min första uppgift är att skriva ett program som beräknar växeln man får tillbaka när man har betalat för sina varor. Denna del har jag typ koll på men det är just att jag ska skriva in decimaltal och kunna avrunda. Kopierar in beskrivningen för att det ska bli tydligare
"Skriv ett program som beräknar växeln man får tillbaka när man har betalat för sina varor. Vid utskriften anges vilka sedlar och mynt köparen får tillbaka. Inmatningen ska vara priset som ska betalas och beloppet köparen har betalat. Programmet ska skriva ut antal 1000-, 500-, 100-, 50- och 20- sedlar och antal 10-, 5-, 1- kronorsmynt man får som växel.
Vi utgår från att 50 öre fortfarande används. Växeln avrundas till närmsta 50 öre. Om antalet öre är < 25 avrundas växeln neråt till 0, om det ligger mellan 25 och 75 avrundas växeln till 50 öre och om det är >75 avrundas växeln upp till en krona."
Vet inte riktigt hur jag ska gå till väga med den sista delen och tar emot all hjälp som finns, tack på förhand!!
Man kan göra detta på flera olika sätt, här är några sätt
Om du läser in det som ett double (men normalt skall man aldrig använda double för pengar pga det är oexakt) så kan du använda cmath funktioner för att plocka ut heltals- och decimaldelen från talet t.ex. med fmod, se
Du kan även istället läsa in värdet som en sträng och sedan leta efter decimal punkten, för att sedan plocka ut heltalsdelen och decimaldelen med find/substr/stoi