Advertisement
aed1oN

T3Z8

Mar 27th, 2019
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.26 KB | None | 0 0
  1. //TP 2018/2019: Tutorijal 3, Zadatak 8
  2. #include <iostream>
  3. #include <stdexcept>
  4. #include <string>
  5. #include <vector>
  6.  
  7. std::string IzdvojiRijec(std::string s, int redniBroj) {
  8.     std::vector<std::string> nizRijeci;
  9.     bool razmak = true;
  10.     for (int i = 0; i < s.length(); i++) {
  11.         if (s.at(i) == ' ')
  12.             razmak = true;
  13.         else if (razmak) {
  14.             razmak = false;
  15.             std::string tmp;
  16.             for (int j = i; j < s.length() && s.at(j) != ' '; j++)
  17.                 tmp.push_back(s.at(j));
  18.             nizRijeci.push_back(tmp);
  19.         }
  20.     }
  21.     if (redniBroj < 1 || redniBroj > nizRijeci.size())
  22.         throw std::range_error("IZUZETAK: Pogresan redni broj rijeci!");
  23.     return nizRijeci.at(redniBroj - 1);
  24.    
  25. }
  26.  
  27. int main () {
  28.     int redniBroj;
  29.     std::cout << "Unesite redni broj rijeci: ";
  30.     std::cin >> redniBroj;
  31.     std::cin.ignore(10000, '\n');
  32.     std::string rijec;
  33.     std::cout << "Unesite recenicu: ";
  34.     std::getline(std::cin, rijec);
  35.     try {
  36.         rijec = IzdvojiRijec(rijec, redniBroj);
  37.         std::cout << "Rijec na poziciji " << redniBroj << " je " << rijec << std::endl;
  38.     } catch (std::range_error exc) {
  39.         std::cout << exc.what() << std::endl;
  40.     }
  41.     return 0;
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement