#include #include #include #include #include #include #include #include #include #include #include #include"bass.h" #pragma comment(lib, "bass.lib") #pragma comment(lib, "urlmon.lib") enum TEST_MODE { NORMAL, BLACKLIST, RANGE }; std::vector WordsEng; std::vector WordsPol; std::deque isSound; std::deque blackList; unsigned nAmount; #ifndef __DEBUG inline std::wstring s2ws(const std::string& s) { int len; int slength = (int)s.length() + 1; len = MultiByteToWideChar(CP_ACP, 0, s.c_str(), slength, 0, 0); std::wstring r(len, L'\0'); MultiByteToWideChar(CP_ACP, 0, s.c_str(), slength, &r[0], len); return r; } #endif void FuckS(std::string& sWord) { for (unsigned i = 0; i < sWord.length(); ++i) { if (sWord[i] == ' ') { sWord.replace(i, 1, "_"); } } } void RemoveW(unsigned nIndex) { if (nIndex < nAmount) { WordsEng.erase(WordsEng.begin() + nIndex); WordsPol.erase(WordsPol.begin() + nIndex); isSound.erase(isSound.begin() + nIndex); blackList.erase(blackList.begin() + nIndex); --nAmount; } else std::cout<<">>Nie ma slowka z takim numerem!"< vuIndex; if (nAmountOfWords == 0 ) nCount = nAmount; else nCount = nAmountOfWords; nCountT = nCount; for (unsigned i = nRangeFrom; i>Co oznacza: "<>Test przerwany!"<>Bardzo dobrze!"<>Zle! To slowko oznacza: "<>Podaj angielskie slowko oznaczajace: "<>Test przerwany!"<>Bardzo dobrze!"<>Zle! Chodzilo mi o slowko: "<>Jakie slowko slyszysz?"<>Test przerwany!"<>Bardzo dobrze!"<>Zle!"<>Jakie slowko slyszysz?"<>Test przerwany!"<>Bardzo dobrze!"<>Zle!"<>A co oznacza to slowko po polsku?"<>Test przerwany!"<>Bardzo dobrze!"<>Zle!"<>Jakie slowko slyszysz?"<>Test przerwany!"<>Bardzo dobrze!"<>Zle!"<>Nie ma takiego trybu!"<>Wynik testu: "<(time(NULL))); BASS_Init(-1, 44100, 0, GetConsoleWindow(), NULL); CoInitializeEx(0, NULL); WordsEng.clear(); WordsPol.clear(); isSound.clear(); nAmount = 0; LoadW(); char cChoice; int nAmountOfWords; std::string sWordEng = "", sWordPol = "", sIndex = ""; TEST_MODE eType; unsigned nRangeFrom, nRangeTo; for (;;) { std::cout <<"=============================="<>cChoice; std::cin.ignore(); switch (cChoice) { case '1': std::cout<<">>Wpisz x aby przerwac!"<>Wpisz slowko: "; std::getline(std::cin, sWordEng); DownloadS(sWordEng, __FUNCTION__); PlayS(sWordEng); break; case '3': std::cout <<">>Wybierz zrodlo slownictwa:"<>cChoice; switch(cChoice) { case '1': std::cout<<">>Ilosc slowek: "; std::cin>>nAmountOfWords; nRangeFrom = 0; nRangeTo = nAmount; if (nAmountOfWords > nAmount) { std::cout<<">>Blad! Nie ma tylu slowek w bazie!"<>Zakres..."<>nRangeFrom; std::cout<<"do: "; std::cin>>nRangeTo; nRangeFrom -= 1; nAmountOfWords = (nRangeTo - nRangeFrom); if (nAmountOfWords <= 0) { std::cout<<">>Blad! Ujemna ilosc slowek!"< nAmount || nRangeTo > nAmount) { std::cout<<">>Blad! Nie ma slowek o takich indeksach!"<>Blad!"<>Wybierz forme testu:"< pol"< ang"< ang"< ang -> pol"< pol"<>cChoice; std::cin.ignore(); std::cout<>cChoice; std::cin.ignore(); switch (cChoice) { case '1': std::cout<<">>Ktore slowko chcesz usunac? "; std::getline(std::cin, sIndex); RemoveW(std::stoi(sIndex)-1); break; case '2': break; default: std::cout<<">>Nie ma takiej opcji!"<