online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code    Language
#include <iostream> #include <stdio.h> using namespace std; // Uneti velikim slovima BFR, SOYUZ ili FALCON_9 // Moguce je napraviti i svoju konfiguraciju #define SOYUZ // FALCON_9 BFR #ifdef BFR // Potisak motora 1 u Njutnima // Ako raketa ima vise tipova motora ovo su busteri npr kod Sojuza (RD-107A) ako ne ovde upisati potisak motora double dEngine1Thrust = 1971429; // Broj motora 1 (bustera) na prvom stepenu int nNumOfEngines1 = 35; // Potisak motora 2 u Njutnima // Ako raketa ima vise tipova motora ovo je prvi (ili drugi kako ko zove) stepen npr kod Sojuza (RD-108A) ako ne, ne koristiti double dEngine2Thrust = 0; // Broj motora 2 na prvom stepenu int nNumOfEngines2 = 0; // Ukupan potisak u Njutnima double dTotalThrust; // Specifican impuls motora 1 u sekundama double dIsp1 = 330; // Specifican impuls motora 2 u sekundama (ako nema motora 2 upisati istu cifru kao za motor 1) double dIsp2 = 330; // Masa kompletne rakete u kg double dStartMass = 4655000; #endif // BFR #ifdef SOYUZ // Potisak motora 1 u Njutnima // Ako raketa ima vise tipova motora ovo su busteri npr kod Sojuza (RD-107A) ako ne ovde upisati potisak motora double dEngine1Thrust = 839480; // Broj motora 1 (bustera) na prvom stepenu int nNumOfEngines1 = 4; // Potisak motora 2 u Njutnima // Ako raketa ima vise tipova motora ovo je prvi (ili drugi kako ko zove) stepen npr kod Sojuza (RD-108A) ako ne, ne koristiti double dEngine2Thrust = 792410; // Broj motora 2 na prvom stepenu int nNumOfEngines2 = 1; // Ukupan potisak u Njutnima double dTotalThrust; // Specifican impuls motora 1 u sekundama double dIsp1 = 263.3; // Specifican impuls motora 2 u sekundama (ako nema motora 2 upisati istu cifru kao za motor 1) double dIsp2 = 257.7; // Masa kompletne rakete u kg double dStartMass = 307500; #endif // SOYUZ #ifdef FALCON_9 // Potisak motora 1 u Njutnima // Ako raketa ima vise tipova motora ovo su busteri npr kod Sojuza (RD-107A) ako ne ovde upisati potisak motora double dEngine1Thrust = 800000;//845222; // Broj motora 1 (bustera) na prvom stepenu int nNumOfEngines1 = 9; // Potisak motora 2 u Njutnima // Ako raketa ima vise tipova motora ovo je prvi (ili drugi kako ko zove) stepen npr kod Sojuza (RD-108A) ako ne, ne koristiti double dEngine2Thrust = 0; // Broj motora 2 na prvom stepenu int nNumOfEngines2 = 0; // Ukupan potisak u Njutnima double dTotalThrust; // Specifican impuls motora 1 u sekundama double dIsp1 = 282; // Specifican impuls motora 2 u sekundama (ako nema motora 2 upisati istu cifru kao za motor 1) double dIsp2 = 330; // Masa kompletne rakete u kg double dStartMass = 549054; #endif // FALCON_9 // Gravitaciona konstanta 9.81 N/kg const double cdg = 9.81; // Inkrement vremena u sekundama const double dt = 0.01; // Trenunta masa rakete double dCurrentMass; // Protok goriva svih motora 1 u kg/sec double dFuelFlow1; // Protok goriva svih motora 1 u kg/sec double dFuelFlow2; // Brzina rakete u m/sec double dVelocity = 0; // Prethodna brzina double dOldVelocity; // Finalna brzina u m/sec const double cdFinalVelocity = 100; // Visina rakete u m double dHeight = 0; // Simulacija u odsustvu gravitacije Da/Ne (true/false) bool bSimNoGravity = false; // Potroseno goriva motora 1 u tonama double dFuelSpent1 = 0; // Potroseno goriva motora 2 u tonama double dFuelSpent2 = 0; int main() { int dIt = 0; dCurrentMass = dStartMass; dTotalThrust = dEngine1Thrust*nNumOfEngines1 + dEngine2Thrust*nNumOfEngines2; dFuelFlow1 = dEngine1Thrust*nNumOfEngines1/(dIsp1*cdg); dFuelFlow2 = dEngine2Thrust*nNumOfEngines2/(dIsp2*cdg); while(dVelocity < cdFinalVelocity) { dIt++; dOldVelocity = dVelocity; dCurrentMass = dCurrentMass - dt * (dFuelFlow1 + dFuelFlow2); dFuelSpent1 = dFuelSpent1 + dt*dFuelFlow1; dFuelSpent2 = dFuelSpent2 + dt*dFuelFlow2; if (bSimNoGravity) { dVelocity = dVelocity + dTotalThrust/dCurrentMass*dt; } else { dVelocity = dVelocity + (dTotalThrust/dCurrentMass - cdg)*dt; } dHeight = dHeight + (dOldVelocity + dVelocity)*dt/2; } double dCurrentMassT = dCurrentMass/1000.0; double dTime = dIt*dt; dFuelSpent1 = dFuelSpent1/1000; dFuelSpent2 = dFuelSpent2/1000; printf("Krajnja masa : %10.2f t\n", dCurrentMassT); printf("Potroseno gorivo 1 : %10.2f t\n", dFuelSpent1); printf("Potroseno gorivo 2 : %10.2f t\n", dFuelSpent2); printf("Visina : %10.2f m\n", dHeight); printf("Vreme : %10.2f sec\n", dTime); return 0; }

Compiling Program...

Command line arguments:
Standard Input: Interactive Console Text
×

                

                

Program is not being debugged. Click "Debug" button to start program in debug mode.

#FunctionFile:Line
VariableValue
RegisterValue
ExpressionValue