Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // DaLiJeSimetricna.cpp : This file contains the 'main' function. Program execution begins and ends there.
- #include <iostream>
- #include <string>
- #include <vector>
- #include <iterator>
- std::vector<std::string> IzdvojiPodstringove(std::string recenica) {
- auto it(recenica.begin());
- while (!(*it >= 'A' && *it <= 'Z' || *it >= 'a' && *it <= 'z')) ++it;
- std::vector<std::string> Kontejner;
- auto pocetak(it);
- while (it != recenica.end()) {
- if (!(*it >= 'A' && *it <= 'Z' || *it >= 'a' && *it <= 'z') && it != recenica.end()-1 || (it+1) == recenica.end()) {
- std::string temp;
- while (pocetak != it && (*pocetak >= 'A' && *pocetak <= 'Z' || *pocetak >= 'a' && *pocetak <= 'z')) {
- temp.push_back(*pocetak);
- ++pocetak;
- }
- if ((it + 1) == recenica.end()) temp.push_back(recenica.at(recenica.length() - 1));
- if(!temp.empty())Kontejner.push_back(temp);
- temp.clear(); it = pocetak;
- ++pocetak;
- }
- ++it;
- }
- return Kontejner;
- }
- std::vector<std::string> NadjiSimetricneRijeci(std::string recenica) {
- auto Podstringovi(IzdvojiPodstringove(recenica));
- bool ubaci(true);
- std::vector<std::string> SimetricneRijeci;
- for (int i(0); i < Podstringovi.size(); ++i) {
- for (int j(0); j < Podstringovi.at(i).size()/2; ++j) {
- ubaci = true;
- if (Podstringovi.at(i).at(j) != Podstringovi[i][Podstringovi[i].size() -1 - j]) {
- ubaci = false; break;
- }
- }
- if (ubaci) {
- SimetricneRijeci.push_back(Podstringovi.at(i));
- }
- }
- return SimetricneRijeci;
- }
- int main()
- {
- std::cout << "Unesite recenicu: ";
- std::string recenica;
- std::getline(std::cin, recenica);
- std::cout << "Simetricne rijeci unutar recenice su: ";
- std::vector<std::string> VektorRijeci(NadjiSimetricneRijeci(recenica));
- if (VektorRijeci.empty()) std::cout << "Recenica ne sadrzi simetricne rijeci!";
- else {
- for (int i(0); i < VektorRijeci.size(); ++i) std::cout << VektorRijeci.at(i) << std::endl;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement