Pomoc oko zadatka C++

Pomoc oko zadatka C++

offline
  • Pridružio: 08 Jul 2011
  • Poruke: 1

Ljudi imam sad ovaj problem. Treba da iz odredjenog text fajla na osnovu unetog broja iz tog reda ispise neki broj u tom redu koji je uvek na istom mestu.

U Text fajlu imam sledeci text:

  1. insert into deonica (iddeonica,duzina,Vn,tip_voda,presek,Rd,Ri,Ro,Xd,Xi,Xo,Bd,Bi,Bo,Gd,Gi,Go,pocetak,kraj)
  2. values (4001,1,20,2,null,0.209,0.209,0.75,0.117,0.117,0.112,0.116,0.116,0.695,0,0,0,2001,5001)
  3. insert into deonica (iddeonica,duzina,Vn,tip_voda,presek,Rd,Ri,Ro,Xd,Xi,Xo,Bd,Bi,Bo,Gd,Gi,Go,pocetak,kraj)
  4. values (4002,2,20,2,null,0.209,0.209,0.75,0.117,0.117,0.112,0.116,0.116,0.695,0,0,0,5001,5002)
  5. insert into deonica (iddeonica,duzina,Vn,tip_voda,presek,Rd,Ri,Ro,Xd,Xi,Xo,Bd,Bi,Bo,Gd,Gi,Go,pocetak,kraj)
  6. values (4003,2.5,20,2,null,0.209,0.209,0.75,0.117,0.117,0.112,0.116,0.116,0.695,0,0,0,5002,5007)



Ja na osnovu unete deonice koja ima iddeonica=4001 (znaci unosom broja 4001) treba da ispisem pocetak koji ima vrednost u redu 2001.
Uz pomoc drugara sam uspeo da odradim sledeci kod, mislio sam da znam c++ dok nisam poceo da se bavim malo. Ovde pojedine naredbe ni ne razumem :/

  1. #include <iostream>
  2. #include <fstream>
  3. #include <map>
  4. #include <sstream>
  5.  
  6. int main(int argc, char* argv[]) {
  7. if (argc != 2) {
  8. std::cerr << "Usage: test [inputfile]" << std::endl;
  9. return 1;
  10. }
  11. std::fstream stream(argv[1]);
  12. if (!stream.good()) {
  13. std::cerr << "Error: could not open file: " << argv[1] << std::endl;
  14. return 2;
  15. }
  16. std::string line;
  17. std::map<int, std::string> map;
  18. while (std::getline(stream, line)) {
  19. std::string::size_type pos = line.find(',');
  20. std::stringstream sstream(line.substr(0, pos));
  21. int index;
  22. sstream >> index;
  23. map[index] = line.substr(pos+2);
  24. }
  25. int in;
  26. while (std::cin >> in) {
  27. std::map<int, std::string>::iterator i = map.find(in);
  28. if (i == map.end())
  29. std::cerr << "index not found" << std::endl;
  30. else
  31. std::cout << i->second << std::endl;
  32. }
  33. return 0;
  34. }



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
Ko je trenutno na forumu
 

Ukupno su 1274 korisnika na forumu :: 29 registrovanih, 3 sakrivenih i 1242 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., Aleksej, bobomicek, BOXRR, BUDDAR70, cojapop, debeli, dejno, eagle.rs, Jose, Jozo74, karjatid, kolle.the.kid, Lazarus, Manjane, mir, N.e.m.a.nj.a., N95, novator, Outis, ozzy, PrincipL, redstar72, ruma, shajone, sokars, The Boss, Vladko, zeka013