4 svar
296 visningar
Plugghingsten 321
Postad: 26 feb 2020 11:15

Loopar (2)

Tänk dig att du får frågan om ett arbete där summan du tjänar är 1 kr dag 1. Därefter, dag 2 blir summan x2, alltså 2, dag 3 blir 6 o.s.v.. Tror du att en person som skulle få detta villkoret på sin arbetsplats skulle tycka den var bra? Tips1: Användning av en while-loop blir smidigast då vi inte vet hur många varv loopen ska köra.

Tips2: Antal dagar (svaret) ska returneras med return.

InputResult1143315326

Var börjar jag?

Plugghingsten 321
Postad: 26 feb 2020 14:58

TILLÄGG: Tips3: Glöm ej att summan för en dag inte är samma sak som den totala summan för alla jobbdagar.

Min första tanke är om det inte står fel i koden, "wantedMoney" och "wantedSum"? Men det har väl med Tips3 att göra. Och om så är fallet, vilken är vilken..?

Tegelhus 227
Postad: 26 feb 2020 15:19
Plugghingsten skrev:

TILLÄGG: Tips3: Glöm ej att summan för en dag inte är samma sak som den totala summan för alla jobbdagar.

Min första tanke är om det inte står fel i koden, "wantedMoney" och "wantedSum"? Men det har väl med Tips3 att göra. Och om så är fallet, vilken är vilken..?

Att variabeln heter olika saker är ok rent tekniskt i och med att det är i olika "scopes". Variabeln kallas wantedBuy i main, medan motsvarande variabel kallas wantedSum i metoden calcNbrDays. Det är inte samma variabel, men de kommer att ha samma värde. För att vara konsekvent tycker jag dock ändå att man borde använt samma namn på båda ställena, det blir lite tydligare då eftersom de representerar samma sak.

Både wantedSum och wantedMoney motsvarar totala summan för alla jobbdagar så som jag tolkar det.


Hursomhelst, det första du bör göra (gärna innan du börjar skriva kod) är att bryta ned problemet. Vad måste göras?

Vad är det som ska loopas? Hur räknar du ut mängden pengar för en viss dag? Vilka värden måste du hålla koll på?

Plugghingsten 321
Postad: 26 feb 2020 21:04

Alright, bara till att acceptera det för nu men som du skriver, Tegelhus, först bryter vi ner programmet. Jag antar att vi ska skriva ett program som håller koll på hur många dagar man har jobbat/ska jobba för att räkna ut summan pengar. Summan ska fördubblas för var dag. Det som ska beskrivas i while-loopen är uträkningen för antal dagar då inputen är summan som väntas och output antal dagar som vi måste ha arbetat oss igenom. Hur stor mängden pengar per dag som tjänas ska endast multipliceras med 2 men om det är. Detta kan ses som n dagar, 2n-1. Är det rätt tänkt?

Tegelhus 227
Postad: 26 feb 2020 22:40
Plugghingsten skrev:

Alright, bara till att acceptera det för nu men som du skriver, Tegelhus, först bryter vi ner programmet. Jag antar att vi ska skriva ett program som håller koll på hur många dagar man har jobbat/ska jobba för att räkna ut summan pengar. Summan ska fördubblas för var dag. Det som ska beskrivas i while-loopen är uträkningen för antal dagar då inputen är summan som väntas och output antal dagar som vi måste ha arbetat oss igenom. Hur stor mängden pengar per dag som tjänas ska endast multipliceras med 2 men om det är. Detta kan ses som n dagar, 2n-1. Är det rätt tänkt?

Det känns som om du är på rätt väg. En bra idé kan vara att tänka på vad en iteration av loopen innebär, och vad som ska göras varje gång.

Det mest logiska i det här fallet är att låta en iteration av loopen motsvara en dag på jobbet.

Vad behöver man göra varje dag? Jo, bland annat att räkna ut hur mycket pengar man tjänar just den dagen, och addera det till den totala summan pengar man har tjänat.

Du kan se om du kan börja där, sen kommer du nog upptäcka att det finns fler saker att göra. Försök gärna fundera och se om du kan komma fram till hur du ska göra själv först, man lär sig som mest när man löser problem.

Svara
Close