2017-06-20 8 views
0

Also wurde ich gebeten, dieses Problem zu lösen, das ich nicht vollständig verstehe, deshalb habe ich Schwierigkeiten damit zu beginnen, da ich noch ein Anfänger bin. hier ist sie:Wachstumsrate Berechnung mit einer Schleife

Es gibt etwa 2,5 Milliarden Menschen im Internet ab Januar 2013 Facebook erreichten eine Milliarde Benutzer im Oktober 2012. In dieser Übung werden Sie ein Programm schreiben zu bestimmen, wann Facebook erreichen 2,5 Milliarden Menschen, wenn es um feste monatliche Prozentsätze von 2%, 3%, 4% oder 5% wachsen würde.

Wie Sie sehen, ich sollte 4 mal mit unterschiedlicher Rate berechnen und ich sollte jedes Mal eine for-Schleife verwenden, Monat und Jahr erhalten, wenn es 2,5 Milliarden Benutzer erreichen. Ich erhielt diesen Hinweis von einer anderen Übung innerhalb der for-Schleife zu verwenden, aber ich habe nicht verstanden, wie man es benutzt.

amount = pow (1.0 * rate , year) 

lassen jetzt sagen, u die Grenze der Schleife ihre for (int i = 1000000000 ; i <= 2500000000 ; here if I put ++i its not logical !) festen

dann in der Schleife einfacher Ich denke, ich werde Monat let zählen sagen, dass wir bei 10 beginnen (das ist der Oktober 2012), wenn wir 25 erreichen, das bedeutet 10 + 15, was bedeutet, dass das Datum Januar 2014 sein wird, aber das Problem ist, wie man eine Cout-Aussage an den Benutzer dieser Informationen macht, die du siehst? Kannst du mir helfen, die richtige Struktur zu bekommen?

dank
+0

Sie können Dinge tun wie 'i + = some_number' an der Stelle, wo Sie normalerweise' i ++ 'tun. – NathanOliver

+0

was meinst du mit etwas_number ?? es sollte eine bestimmte Aufgabe tun ist drin ?? –

+0

Sind Sie sicher, dass Sie eine for-Schleife benötigen? Eine while-Schleife scheint hier angebracht zu sein. –

Antwort

0

Dies kann wie so über mit einem während Schleife (statt einer for-Schleife), gelöst werden:

#include <iostream> 


double GrowthRatio = 1.05d; // Using 5% growth in this example. 
double nUsers = 1000000000; 
int MonthsElapsed = 0; 

while((nUsers *= GrowthRatio) < 2500000000) 
    MonthsElapsed++; 

std::cout << MonthsElapsed; 

Ausgang:
18

Was bedeutet, dass es Facebook 18 Monate dauerte (ab Oktober 2012) um 2,5 Milliarden Nutzer zu erreichen.

Verwandte Themen