#ifndef NALOGA0702_SABLONE_H #define NALOGA0702_SABLONE_H #include "PrintUtility.h" #include #include template void print(const std::vector vector) { for (int i = 0; i < vector.size(); ++i) { PrintUtility::print(C, vector[i].toString()); } std::cout << "\n"; } template void print(const std::vector vector) { for (int i = 0; i < vector.size(); ++i) { PrintUtility::print(C, std::to_string(vector[i])); std::cout << " "; } std::cout << "\n"; } template std::vector> slice(std::vector vector) { std::vector> retVec; std::vector ret; int count = 0; for (int i = 0; i < vector.size(); ++i) { if (count < N) { ret.push_back(vector[i]); count++; } if (count == N) { retVec.push_back(ret); ret.clear(); count = 0; } } retVec.push_back(ret); return retVec; } template std::string toSafeString(std::vector vector, std::vector prepovedano) { std::string ret; bool prepoved = false; for (int i = 0; i < vector.size(); ++i) { for (int j = 0; j < prepovedano.size(); ++j) { if (vector[i] == prepovedano[j]) { prepoved = true; } } if (prepoved) { for (int k = 0; k < vector[i].length(); k++) ret += "*"; } else { ret += vector[i]; } ret += " "; prepoved = false; } ret += "\n"; return ret; } template std::vector reverse(std::vector vector) { std::vector ret; for (int i = vector.size() - 1; i >= 0; i--) ret.push_back(vector[i]); return ret; } template double sum(std::vector num) { double ret = 0; for (int i = 1; i < num.size(); ++i) ret += num[i]; return ret; } template void printSelectedWordInColor(std::vector vector, std::string printColor) { for (int i = 0; i < vector.size(); ++i) { std::string str = vector[i].toString(); std::string word; std::stringstream iss(str); while (iss >> word) { if (word == printColor) { PrintUtility::print(ColorCode::Blue, word + " "); } else { std::cout << word << " "; } } std::cout << "\n"; } } #endif //NALOGA0702_SABLONE_H /* * std::size_t pos = word.find(printColor); std::string str1 = word.substr (0,pos); std::string str2 = word.substr(pos,printColor.length()); std::cout << str1 << "||||" << str2 << "\n"; */