int main(int argc, char const* argv[]) { money a = money(5); money b = money(6); a.show(a.max(b)); return 0; }
int rob(vector<int>& nums) { if(nums.size() <= 0) { return 0; } if(nums.size() == 1) { return nums[0]; } if(nums.size() == 2) { return max(nums[0], nums[1]); } vector<int> money(nums.size(), 0); // rob from the first house money[0] = nums[0]; money[1] = nums[0]; for(int i = 2; i < nums.size() - 1; i++) { money[i] = max(money[i-1], money[i-2] + nums[i]); } int rob1 = money[nums.size() - 2]; // rob from the second house money[0] = 0; money[1] = nums[1]; for(int i = 2; i < nums.size(); i++) { money[i] = max(money[i-1], money[i-2] + nums[i]); } int rob2 = money[nums.size() - 1]; return max(rob1, rob2); }
MyMoneyMoney kMyMoneyEdit::value() const { QString txt = m_edit->text(); ensureFractionalPart(txt); MyMoneyMoney money(txt); if (m_prec != -1) money = money.convert(MyMoneyMoney::precToDenom(m_prec)); return money; }
void MoneyTest::testAddThrow() { // Set up const Money money123FF( 123, "FF" ); // Process Money money( 123, "USD" ); money += money123FF; // should throw an exception }
int main() { int money(int,int*,int*,int*); int n,x,y,z; printf("Enter the amount desired(a multiple of 10 dollars) :"); scanf("%d",&n); money(n,&x,&y,&z); printf("\n50s of bill to dispense : %d",x); printf("\n20s of bill to dispense : %d",y); printf("\n10s of bill to dispense : %d",z); }
void MoneyTest::testConstructor() { // Set up const std::string currencyFF( "FF" ); const double longNumber = 1234.5678; // Process Money money( longNumber, currencyFF ); // Check CPPUNIT_ASSERT_EQUAL( longNumber, money.getAmount() ); CPPUNIT_ASSERT_EQUAL( currencyFF, money.getCurrency() ); }
void TaxMan(void) { double tax; int i; char c; JOUST(PLAYER.Level); d *= 1000.; if(PLAYER.Gold + PLAYER.Bank > d) { NL; tax = PLAYER.Gold + PLAYER.Bank - d; sprintf(outbuf, "%s, the tax collector, looks at your bulging money purse", IRSREC->Handle); OUT(outbuf); NL; OUT("and says, \"Ah, it is time to pay your taxes!\" You check out the two burly"); NL; sprintf(outbuf, "guards who stand ready to enforce %s's will.", SYSREC->Handle); OUT(outbuf); NL; NL; Delay(100); sprintf(outbuf, "The tax will cost you %s.", money(tax,ANSI)); OUT(outbuf); NL; NL; Delay(100); sprintf(prompt, "%sWill you pay the tax (Y/N)? ", fore(CYN)); do { OUT(prompt); c = inkey('Y', 'Y'); NL; } while(c != 'Y' && c != 'N'); NL; if(c == 'N') { sound2("taxman", 0); OUT("The tax collector orders his guards, \"Run this outlaw through!\""); NL; NL; Delay(100); for(i = 0; i < 2; i++) { memset(RPC[1][i], 0, sizeof(struct RPC)); sprintf(RPC[1][i]->user.Handle, "City Guard #%d", i + 1); sprintf(RPC[1][i]->user.Class, "%s.%s", table->class[0]->Origin, table->class[0]->Character[dice(MAXCLASS(0))-1]->Name); RPC[1][i]->user.Level = PLAYER.Level / 2 + 1; RPC[1][i]->user.Sex = 'I'; sprintf(RPC[1][i]->user.Weapon, "NATURAL.%u", RPC[1][i]->user.Level/2 + dice(RPC[1][i]->user.Level/2)); sprintf(RPC[1][i]->user.Armor, "NATURAL.%u", RPC[1][i]->user.Level/4 + dice(RPC[1][i]->user.Level/4)); CreateRPC(RPC[1][i]); RPC[1][i]->user.Poison = (UWORD)~0; if(RPC[1][i]->SP) RPC[1][i]->user.Spell = HEAL_SPELL | BLAST_SPELL; } from = '\0'; Battle(); if(RPC[1][0]->HP > 0 || RPC[1][1]->HP > 0 || !ONLINE->HP) c = 'Y'; }
int main(){ int n,a,k,s=0; scanf("%d",&n); for(int i=1;i<=n;i++){ scanf("%d",&a); k=money(a); if(k<0){ printf("Can't transport!"); return 0; } s+=k; } printf("%d",s); return 0; }
void MoneyTest::testAdd() { // Set up const Money money12FF( 12, "FF" ); const Money expectedMoney( 135, "FF" ); // Process Money money( 123, "FF" ); money += money12FF; // Check CPPUNIT_ASSERT( expectedMoney == money ); // add works CPPUNIT_ASSERT( &money == &(money += money12FF) ); // add returns ref. on 'this'. }
// DP problem // money[i] = std::max(money[i-1], money[i-2]+nums[i]) int rob(std::vector<int>& nums) { if (nums.empty()) return 0; if (nums.size() == 1) return nums[0]; if (nums.size() == 2) return std::max(nums[0], nums[1]); std::vector<int> money(nums.size()); money[0] = nums[0]; money[1] = std::max(nums[0], nums[1]); for (int i = 2, iEnd = (int)money.size(); i < iEnd; ++i) { money[i] = std::max(money[i-2]+nums[i], money[i-1]); } return money.back(); }
void Cell::draw(sf::RenderTarget& target, sf::RenderStates states) const { // apply the transform states.transform *= getTransform(); sf::RectangleShape cell(sf::Vector2f(1.0, 1.0)); int turns_ago = now_turn - last_turn_visited; cell.setFillColor(sf::Color(0, std::max(0, 255 - turns_ago * 10), 0)); target.draw(cell, states); sf::VertexArray vertices; vertices.setPrimitiveType(sf::LinesStrip); vertices.append(sf::Vector2f(0, 0)); vertices.append(sf::Vector2f(0, 1)); vertices.append(sf::Vector2f(1, 1)); vertices.append(sf::Vector2f(1, 0)); vertices.append(sf::Vector2f(0, 0)); target.draw(vertices, states); int candies_left = last_seen_candies; for (int i = 0; i < 5 && candies_left; ++i) { for (int j = 0; j < 5 && candies_left; ++j) { sf::CircleShape money(0.1); money.setPosition(0.2 * j, 0.2 * i); if (candies_left == 1 && just_eating) { money.setFillColor(sf::Color(255, 0, 0)); } else { money.setFillColor(sf::Color(255, 255, 0)); } target.draw(money, states); --candies_left; } } if (vis_player) { sf::RectangleShape player(sf::Vector2f(0.2, 0.2)); player.setFillColor(sf::Color(50, 50, 255)); player.setPosition(0.4, 0.4); target.draw(player, states); } if (vis_future_player) { sf::RectangleShape player(sf::Vector2f(0.2, 0.2)); player.setFillColor(sf::Color(255, 0, 0)); player.setPosition(0.4, 0.4); target.draw(player, states); } }
void pawsExchangeWindow::HandleMoney( MsgEntry* me ) { psExchangeMoneyMsg money(me); if ( money.container == CONTAINER_OFFERING_MONEY ) { offeringMoneyWidget->Set(money.circles, money.octas, money.hexas, money.trias); csString triasOffered; triasOffered.Format("Tria Offered %d", money.circles*CIRCLES_VALUE_TRIAS + money.octas*OCTAS_VALUE_TRIAS + money.hexas*HEXAS_VALUE_TRIAS + money.trias); totalTriasOffered->SetText(triasOffered); } else if ( money.container == CONTAINER_RECEIVING_MONEY ) { receivingMoneyWidget->Set(money.circles, money.octas, money.hexas, money.trias); csString triasReceived; triasReceived.Format("Tria Received %d", money.circles*CIRCLES_VALUE_TRIAS + money.octas*OCTAS_VALUE_TRIAS + money.hexas*HEXAS_VALUE_TRIAS + money.trias); totalTriasReceived->SetText(triasReceived); } }
void psNPCLoader::ReadMoney() { csRef<iDocumentNode> xmlnode = npcRoot->GetNode("money"); if(!xmlnode) { CPrintf(CON_WARNING, "Warning: no <money> tag found\n"); return; } float circles, hexas, octas, trias; circles = xmlnode->GetAttributeValueAsFloat("circles"); hexas = xmlnode->GetAttributeValueAsFloat("hexas"); octas = xmlnode->GetAttributeValueAsFloat("octas"); trias = xmlnode->GetAttributeValueAsFloat("trias"); psMoney money((int)circles, (int)octas, (int)hexas, (int)trias); npc->SetMoney(money); }
/* * pick_up: * Add something to characters pack. */ void pick_up(char ch) { nochange = FALSE; switch(ch) { case GOLD: money(); when ARMOR: case POTION: case FOOD: case WEAPON: case SCROLL: case AMULET: case RING: case STICK: add_pack(NULL, FALSE); otherwise: msg("That item is ethereal !!!"); } }
//if force0Rob is true, I HAVE to rob 0-th house //if force0Rob is false, I HAVE to NOT rob 0th house int robPrime(vector<int>& nums, bool force0Rob) { //dynamic programming cache; money made by robbing *optimal choices* of houses until index i vector<int> money(nums.size(), 0); money[0] = force0Rob ? nums[0] : 0; money[1] = force0Rob ? nums[0] : nums[1]; //dynamic programming loop for (int i=2; i<nums.size()-1; i++) { int cand1 = nums[i] + money[i-2]; int cand2 = money[i-1]; money[i] = cand1 > cand2 ? cand1 : cand2; } //last place int last = nums.size() - 1; int lastbutone = nums.size() - 2; int lastbuttwo = nums.size() - 3; money[last] = force0Rob ? (max(money[lastbutone], money[lastbuttwo])) : (max(money[lastbutone], money[lastbuttwo] + nums[last])); return money[last]; }
/* * pick_up: * Add something to characters pack. */ void pick_up(int ch) { switch(ch) { case GOLD: money(); break; default: debug("Where did you pick that up???"); case ARMOR: case POTION: case FOOD: case WEAPON: case SCROLL: case AMULET: case RING: case STICK: add_pack(NULL, FALSE); break; } }
void pick_up(char ch) { THING *obj; if (on(player, ISLEVIT)) return; obj = find_obj(hero.y, hero.x); if (move_on) move_msg(obj); else switch (ch) { case GOLD: if (obj == NULL) return; money(obj->o_goldval); detach(lvl_obj, obj); discard(obj); proom->r_goldval = 0; break; default: #ifdef MASTER debug("Where did you pick a '%s' up???", unctrl(ch)); #endif case ARMOR: case POTION: case FOOD: case WEAPON: case SCROLL: case AMULET: case RING: case STICK: add_pack((THING *) NULL, FALSE); break; } }
void CoolGame::init(GLManager *glManager) { auto input = getEngine()->getWindow()->getInput(); input->registerKeyToAction(SDLK_SPACE, "fire"); input->registerKeyToAction(SDLK_c, "swapCamera"); input->bindAction("fire", IE_PRESSED, [this]() { MeshLoader cube("cube.obj"); cube.getEntity()->getTransform().setPosition(primary_camera->getParent()->getPosition()); cube.getEntity()->addComponent<BoxCollider>(glm::vec3(0.5, 0.5, 0.5), 50); addToScene(cube.getEntity()); auto dir = primary_camera->getParent()->getDirection(); cube.getEntity()->getComponent<BoxCollider>()->applyCentralImpulse(glm::vec3(dir.x * 500.0f, dir.y * 500.0f, dir.z * 500.0f)); }); input->bindAction("swapCamera", IE_PRESSED, [this]() { getEngine()->getGLManager()->setActiveCamera(primary_camera2); }); input->bindAction("swapCamera", IE_RELEASED, [this]() { getEngine()->getGLManager()->setActiveCamera(primary_camera); }); auto brickMat = std::make_shared<Material>(std::make_shared<Texture>(Asset("bricks2.jpg")), std::make_shared<Texture>(Asset("bricks2_normal.jpg")), std::make_shared<Texture>(Asset("bricks2_specular.png"))); auto planeMesh = Plane::getMesh(); // ground { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform().setPosition(glm::vec3(-5, -2, 0)).setScale(glm::vec3(10, 1, 10)); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform().setPosition(glm::vec3(5, -2, 0)).setScale(glm::vec3(10, 1, 10)); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform().setPosition(glm::vec3(-5, -2, 10)).setScale(glm::vec3(10, 1, 10)); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform().setPosition(glm::vec3(5, -2, 10)).setScale(glm::vec3(10, 1, 10)); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } // front wall { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform() .setPosition(glm::vec3(-5, 3, -5)) .setScale(glm::vec3(10, 1, 10)) .rotate(glm::vec3(1, 0, 0), glm::pi<float>() / 2.f); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform() .setPosition(glm::vec3(5, 3, -5)) .setScale(glm::vec3(10, 1, 10)) .rotate(glm::vec3(1, 0, 0), glm::pi<float>() / 2.f); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } // back wall { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform() .setPosition(glm::vec3(-5, 3, 15)) .setScale(glm::vec3(10, 1, 10)) .rotate(glm::vec3(1, 0, 0), -glm::pi<float>() / 2.f); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform() .setPosition(glm::vec3(5, 3, 15)) .setScale(glm::vec3(10, 1, 10)) .rotate(glm::vec3(1, 0, 0), -glm::pi<float>() / 2.f); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } // left wall { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform() .setPosition(glm::vec3(-10, 3, 0)) .setScale(glm::vec3(10, 1, 10)) .rotate(glm::vec3(0, 0, 1), -glm::pi<float>() / 2.f); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform() .setPosition(glm::vec3(-10, 3, 10)) .setScale(glm::vec3(10, 1, 10)) .rotate(glm::vec3(0, 0, 1), -glm::pi<float>() / 2.f); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } // right wall { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform() .setPosition(glm::vec3(10, 3, 0)) .setScale(glm::vec3(10, 1, 10)) .rotate(glm::vec3(0, 0, 1), glm::pi<float>() / 2.f); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } { auto plane = std::make_shared<Entity>(); plane->addComponent<MeshRenderer>(planeMesh, brickMat); plane->getTransform() .setPosition(glm::vec3(10, 3, 10)) .setScale(glm::vec3(10, 1, 10)) .rotate(glm::vec3(0, 0, 1), glm::pi<float>() / 2.f); plane->addComponent<BoxCollider>(glm::vec3(5, 0, 5), 0); addToScene(plane); } /*{ MeshLoader ml("Pregnant.obj"); ml.getEntity()->getTransform().setPosition(glm::vec3(0 + (i * 3), -2, -2.5)); ml.getEntity()->addComponent<Sphere>(1); addToScene(ml.getEntity()); }*/ for (int i = 0; i < 10; i++) { MeshLoader ml("AncientUgandan.obj"); ml.getEntity()->getTransform().setPosition(glm::vec3(0, i * 3, -2.5)); ml.getEntity()->addComponent<SphereCollider>(1, 1); addToScene(ml.getEntity()); } MeshLoader money("monkey3.obj"); money.getEntity()->getTransform().setPosition(glm::vec3(0, 0, 8)); money.getEntity()->addComponent<PerspectiveCamera>(glm::pi<float>() / 2.0f, getEngine()->getWindow()->getWidth() / (float)getEngine()->getWindow()->getHeight(), 0.05f, 100.0f); //money.getEntity()->addComponent<SpotLight>(glm::vec3(0.1f, 1.0f, 1.0f), 5.8f, 0.7f, std::make_shared<Attenuation>(0, 0, 0.2)); money.getEntity()->addComponent<SphereCollider>(1, 1); addToScene(money.getEntity()); MeshLoader money2("monkey3.obj"); money2.getEntity()->addComponent<PerspectiveCamera>(glm::pi<float>() / 2.0f, getEngine()->getWindow()->getWidth() / (float)getEngine()->getWindow()->getHeight(), 0.8f, 100.0f); money2.getEntity()->addComponent<FreeMove>(); #if defined(ANDROID) money2.getEntity()->addComponent<FreeLook>(0.1f); #else money2.getEntity()->addComponent<FreeLook>(); #endif money2.getEntity()->getTransform().setPosition(glm::vec3(0, 0, 5)).setScale(glm::vec3(0.8, 0.8, 0.8)); money2.getEntity()->addComponent<SpotLight>(glm::vec3(1.0f, 1.0f, 1.0f), 2.8f, 0.7f, std::make_shared<Attenuation>(0, 0, 0.2)); addToScene(money2.getEntity()); primary_camera = money2.getEntity()->getComponent<PerspectiveCamera>(); primary_camera2 = money.getEntity()->getComponent<PerspectiveCamera>(); getEngine()->getGLManager()->setActiveCamera(primary_camera); }
void inspect(void) { char a, i, j; char titre[32]; printTitle(8,4, A_BGRED, "INSPECTER QUEL HEROS ? ", 23); while(1) { a = get(); if (a<'1' || a>'6') ping(); // ping si pas correct else break; // correct : on sort } cls(); printFrame(23); i = a - '1'; // construction du nom/titre strcpy(titre, " < "); strcat(titre, characters[i].nom); if(characters[i].mp != 1) { strcat(titre, " "); strcat(titre, maisons[characters[i].mp-2]); } strcat(titre, " > "); j = strlen(titre); a = (31-j)/2 + 4; // affichage du titre printTitle(a,2, A_BGRED, titre, j); // affichage classe, niv, xp printAtXY(5, 4, "Carr :"); printAtXY(11, 4, classe[characters[i].cp-1]); printAtXY(22, 4, "Niv:"); printAtXY(27, 4, itoa(characters[i].ni)); printAtXY(29, 4, "EXP:"); printAtXY(33, 4, itoa(characters[i].xp)); // affichage santé, pv printAtXY(5, 6, "Sant{:"); printAtXY(11, 6, etat[characters[i].ok-1]); printAtXY(22, 6, "PV :"); printAtXY(27, 6, itoa(characters[i].et)); printAtXY(30, 6, "/"); printAtXY(32, 6, itoa(characters[i].pv)); // affichage bourse printAtXY(5, 8, "Bourse:"); printAtXY(13, 8, itoa(characters[i].ri*10)); printAtXY(21, 8, "Cerfs d'Argent"); // affichage de l'équipement porté printAtXY(5, 10, "Arme D:"); if (characters[i].wr != 0) printAtXY(13, 10, textesItems[characters[i].wr-1]); printAtXY(5, 11, "Arme G:"); if (characters[i].wl != 0) printAtXY(13, 11, textesItems[characters[i].wl-1]); printAtXY(5, 12, "Animal:"); if (characters[i].bt != 0) printAtXY(13, 12, textesItems[characters[i].bt-1]); printAtXY(5, 13, "Armure:"); if (characters[i].pt != 0) printAtXY(13, 13, textesItems[characters[i].pt-1]); printAtXY(29, 13, "CA:"); printAtXY(33, 13, itoa(characters[i].ca)); // affiche les caracs printTitle(4,15, A_BGRED, "CC CT Fo Ag In FM ", 23); printAtXY(7,16, itoa(characters[i].cc)); printAtXY(11,16, itoa(characters[i].ct)); printAtXY(15,16, itoa(characters[i].fo)); printAtXY(19,16, itoa(characters[i].ag)); printAtXY(23,16, itoa(characters[i].in)); printAtXY(27,16, itoa(characters[i].fm)); // affichage du sac à dos for(j=0;j<6;j++) { printAtXY(5,18+j, itoa(j+1)); if (characters[i].sad[j]!=0) { if (characters[i].sad[j]-1<nbTextes) printAtXY(8,18+j, textesItems[characters[i].sad[j]-1]); else printAtXY(8,18+j, "objet bugge"); } else { printAtXY(8,18+j, ".............."); } } // les morts et les paralysés ne peuvent pas lancer de sorts! if (characters[i].cp>3 && characters[i].ok<3) printTitle(10,25, A_BGRED, " <ESPACE> : SORTS ", 18); else printTitle(10,25, A_BGRED, " <ESPACE> : RETOUR", 18); printTitle(4,26, A_BGBLUE, " DONNER : ", 11); printTitle(16,26, A_BGRED, " A)rgent O)bjet ? ", 17); while(1) { a = get(); if (a=='A') { money(i); break; } else if (a=='O') { items(i); break; } else if (a==' ') { if (characters[i].cp>3 && characters[i].ok<3) spells(i); break; } else ping(); } }
static int run(connection_t connection, int op) { switch(op) { case MONEY: { if(!money(connection, client_money)) { log_send(LEVEL_ERROR, "Error getting the money."); return -1; }else{ log_send(LEVEL_INFO, "Succesfully got money."); } } break; case CUCCO_ADD: { if(!cucco_add(connection, database)) { log_send(LEVEL_ERROR, "Error adding the cucco."); return -1; }else{ log_send(LEVEL_INFO, "Succesfully added cucco."); } } break; case CUCCO_REMOVE: { if(!cucco_remove(connection, database)) { log_send(LEVEL_ERROR, "Error removing the cucco."); return -1; }else{ log_send(LEVEL_INFO, "Succesfully removed cucco."); } } break; case LIST: { if(!list(connection, database)) { log_send(LEVEL_ERROR, "Error getting the list of cuccos."); return -1; }else{ log_send(LEVEL_INFO, "Sucesfully returned list of cuccos"); } } break; case BET: { if(!bet(connection, &client_money, clients, bettors, winner, database)) { log_send(LEVEL_ERROR, "Error placing bet."); return -1; }else{ log_send(LEVEL_INFO, "Succesfully placed bet."); } } break; case RESET: { if(!reset(connection)) { log_send(LEVEL_ERROR, "Error reseting the amount of money"); return -1; } log_send(LEVEL_INFO, "Succesfully reseted the users amount of money"); client_money = MONEY_DEFAULT; } break; case EXIT: { log_send(LEVEL_INFO, "[CHILD SV] Exiting."); return 1; } break; default: { log_send(LEVEL_ERROR, "Invalid opcode."); return -1; } break; } return 0; }
void MainWindow::checkForSaveFile() { QFile file2("autosave.dat"); QString fileInput = "autosave.dat"; if (!file2.exists() && !QFile(QString(".autosave.dat")).exists()) QString fileInput = QFileDialog::getSaveFileName(this, tr("Autosave File"), "", tr("Data File (*.dat)")); else if (!file2.exists() && QFile(QString(".autosave.dat")).exists()) QFile(QString(".autosave.dat")).copy(fileInput); QList<QString> asList; if (fileInput != "") { /** Load the last save into memory. Allows us to extract the serials/class members. **/ QFile file(fileInput); if (!file.open(QIODevice::ReadOnly)) { QMessageBox::critical(this, tr("Error"), tr("Could not open file")); return; }//end if QTextStream in(&file); while (!in.atEnd()) { asList.push_back(in.readLine()); }//iterate through the file. All of it. Store. }//end if. for (int x = 0; x < asList.size(); x++) { /** Now, we segment the file. **/ QString current = asList.at(x); QString flipped = reverse(current); QList<QString> currentKid; int y = x; while (asList.at(y) != flipped) { y++; } for (int z = x; z < y; z++) { currentKid.push_back(asList.at(z)); x++; }//end for z. if (true) { QString last = currentKid.at(0); QString email = currentKid.at(1); int index = email.indexOf(":") + 1; email.remove(0, index); QString period = currentKid.at(2); index = period.indexOf(":") + 1; period.remove(0, index); QString balance = currentKid.at(3); KedighKid toPush(last, period, email); for (int i = 4; i < currentKid.size(); i++) { QString line = currentKid.at(i); QString tabLength = "\t\t"; line.remove(0, tabLength.length()); int index = line.indexOf(":"); QString serial = line; serial.remove(index, line.size()); QString denom = line; denom.remove(0, serial.size()); QString toSize = " $"; denom.remove(0, 3); int _denomination = denom.toInt(); KedighCash money(serial, "Today", _denomination); toPush.addMoney(money); } kids.push_back(toPush); x++; } } qSort(kids.begin(), kids.end()); for (int i = 0; i < kids.size(); i++) { ui->studentSelect->addItem(kids.at(i).name); } for (int y = 0; y < kids.size(); y++) { ui->fileDisplay->addItem(kids.at(y).name); } countCash(); displayInfo(); }//open last save.