online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code    Language
#include <iostream> #include <unordered_map> #include <string> class PrivateMarket { public: int64_t m_troops_cost{ 0 }; int64_t m_jets_cost{ 0 }; int64_t m_turrets_cost{ 0 }; int64_t m_tanks_cost{ 0 }; int64_t m_troops_available{ 0 }; int64_t m_jets_available{ 0 }; int64_t m_turrets_available{ 0 }; int64_t m_tanks_available{ 0 }; PrivateMarket(std::unordered_map<std::string, int64_t>&); void convertOilToUnits(int64_t); int64_t bushelsNeededForAvailableUnits(); int64_t calculateNetworth(); }; PrivateMarket::PrivateMarket(std::unordered_map<std::string, int64_t>& units) : m_troops_cost{ units["troops_cost"] } , m_jets_cost{ units["jets_cost"] } , m_turrets_cost{ units["turrets_cost"] } , m_tanks_cost{ units["tanks_cost"] } {} void PrivateMarket::convertOilToUnits(int64_t oil) { m_troops_available = (oil/40)*30; m_jets_available = (oil/40)*25; m_turrets_available = (oil/40)*25; m_tanks_available = (oil/40)*10; } int64_t PrivateMarket::bushelsNeededForAvailableUnits() { int64_t troops_cost{ m_troops_available*m_troops_cost }; int64_t jets_cost{ m_jets_available*m_jets_cost }; int64_t turrets_cost{ m_turrets_available*m_turrets_cost }; int64_t tanks_cost{ m_tanks_available*m_tanks_cost }; return (troops_cost + jets_cost + turrets_cost + tanks_cost) / 35; } int64_t PrivateMarket::calculateNetworth() { return (m_troops_available*0.5) + (m_jets_available*0.6) + (m_turrets_available*0.6) + (m_tanks_available*2); } int main(int argc, char *argv[]) { if (argc < 6) { std::cout << "Error - Provide amount of oil stocked.\n"; std::cout << "Lowest Possible: Troops -> 77 Jets -> 103 Turrets -> 112 Tanks -> 315\n\n"; std::cout << "ie. calculate [STOCKED_OIL] [TROOP_COST] [JET_COST] [TURRET_COST] [TANK_COST]\n"; std::exit(1); } int64_t oil_stocked{ std::stoi(argv[1]) }; int64_t troop_cost{ std::stoi(argv[2]) }; int64_t jet_cost{ std::stoi(argv[3]) }; int64_t turret_cost{ std::stoi(argv[4]) }; int64_t tank_cost{ std::stoi(argv[5]) }; // private market prices std::unordered_map<std::string, int64_t> pm_prices{ { "troops_cost", troop_cost }, { "jets_cost", jet_cost }, { "turrets_cost", turret_cost }, { "tanks_cost", tank_cost }, }; PrivateMarket pm{ pm_prices }; pm.convertOilToUnits(oil_stocked); // bushels needed for available units int64_t bnfau = pm.bushelsNeededForAvailableUnits(); std::cout << "\n------------------------------------\n"; std::cout << "Private Market Generated" << '\n'; std::cout << "Oil stocked: " << oil_stocked << '\n'; std::cout << "------------------------------------\n"; std::cout << "Units Generated" << '\n'; std::cout << "Troops: " << pm.m_troops_available << '\n'; std::cout << "Jets: " << pm.m_jets_available << '\n'; std::cout << "Turrets: " << pm.m_turrets_available << '\n'; std::cout << "Tanks: " << pm.m_tanks_available << '\n'; std::cout << "Bushels required to buy out PM: " << bnfau << '\n'; std::cout << "Increase in Networth: " << pm.calculateNetworth() << '\n'; std::cout << "\n"; }

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