Hjälp med att räkna ut hur ett tal fördubblas var tionde minut! C#

Permalänk
Medlem

Hjälp med att räkna ut hur ett tal fördubblas var tionde minut! C#

Jag har en uppgift där jag försöker skriva en kod som fördubblar antalet bakterier i en bakteriehärd var tionde minut.

Användaren får mata in start antalet samt tiden i tiominuters intevaller så ska man se svara hur många bakterier det är efter den angiva tiden. Men jag får det verkligen inte att fungera. Någon vänlig själv som kan hjälpa till ? Måste få i gång rätt tänk

Permalänk
Medlem

Här kanske är en bättre bild =)

Permalänk
Medlem

Ska den öka till det dubbla i loppet av 10 minuter eller ska den bara dubblas efter 10 min?

Permalänk
Medlem

Kan inte C#, men det borde bara vara att ta: startvärde*2^antal-tiominutersintervall

dvs, startvärde 4 efter 50 min blir 4*2^5 =128

Visa signatur

Your COMMODORE 64 computer is equipped with one of the most sophisticated electronic music synthesizers available on any computer.
This chapter is an introduction to using your computer's sound chip, the SID chip.

Permalänk
Medlem

Först får du räkna ut antalet fördubblingar. Varje fördubbling är en multiplicering med två, dvs du kommer få att efter x fördubblingar är det startvärdet*2^antal fördubblingar bakterier.

Exempel:
3 bakterier från början. På fyrtio minuter fördubblas bakterierna fyra gånger, så antalet bakterier är 3*2^4=3*16=48 bakterier.

Tips: funktionen du söker heter nog pow eller likn.

Visa signatur

Jag är en optimist; det är aldrig så dåligt så att det inte kan bli sämre.

Permalänk
Inaktiv

Detta är inte ett programmeringsproblem utan snarare ett matteproblem.
Använd dig av en exponentialfunktion. Här verkar finnas ett exempel: http://www.matteguiden.se/matte-a/funktioner/exponentialfunkt...

Permalänk
Medlem

Samt denna C# klass är värd att inspektera och bra att lära sig alla metoder som exponeras här http://msdn.microsoft.com/en-us/library/system.math.aspx

Visa signatur

Speldator: Ryzen 7800X3D, 64GB DDR5, RTX 3070
Server: i7-8700k, 32GB DDR4, RTX2080
Steam deck + de fiesta konsoller.

Permalänk
Medlem

Borde inte göra dina uppgifter åt dig Men det är ju så skoj med programmering!

public int CalculateBacteria(int numberOfIntervals, int initialCount)
{
int result = initialCount;
for (int i = 1; i <= numberOfIntervals; i++)
{
result += result;
}
return result;
}

Permalänk
Medlem
Skrivet av BlasteRs:

Borde inte göra dina uppgifter åt dig Men det är ju så skoj med programmering!

public int CalculateBacteria(int numberOfIntervals, int initialCount)
{
int result = initialCount;
for (int i = 1; i <= numberOfIntervals; i++)
{
result += result;
}
return result;
}

Som jag skrev i mitt föra inlägg kolla upp Math klassen.

Math.Pow

10 * Math.Pow(2, 10) T.ex.

Visa signatur

Speldator: Ryzen 7800X3D, 64GB DDR5, RTX 3070
Server: i7-8700k, 32GB DDR4, RTX2080
Steam deck + de fiesta konsoller.

Permalänk
Medlem
Skrivet av MugiMugi:

Som jag skrev i mitt föra inlägg kolla upp Math klassen.

Math.Pow

10 * Math.Pow(2, 10) T.ex.

Mycket roligare med en For loop juh!
Kanske inte hade rekommenderat det i vanliga fall, men bra att öva lite på For loops.