it is supposed to find all the words that you can make with the letters that you input, and it uses dict.txt as a reference. but all it ends up doing is loading every word in dict.txt into vector "Words" and then printing to the screen. why wont it work?Code:#include <iostream> #include <fstream> #include <conio2.h> #include <vector> #include <string> #include <cstring> using namespace std; int main() { vector <string> Words; char letterlist[256]; char wordlist[256]; int wordcount = 0; int x = 0, y = 0; int inputlength; int wordlength; bool Positive = false, quit = false; char exit; while (quit == false) { cout << "Letter list: \n(All lowercase)"; gotoxy(14,1); cin >> letterlist; inputlength = strlen (letterlist); ifstream OpenFile("dict.txt"); while(! OpenFile.eof()) { x = 0; y = 0; wordcount++; OpenFile.getline(wordlist, 256); wordlength = strlen (wordlist); while (x <= wordlength) { if (wordlist[x] != wordlist[y]) { y += 1; if (y == inputlength + 1) { Positive = false; break; } } else { ++x; Positive = true; }//close else statement }//close inner while loop if (Positive == true) { Words.push_back(wordlist); } }//close outer while loop clrscr(); cout << "Finished!\nWords Returned Positive:\n"; for (int x = 0; x < Words.size(); ++x) { cout << '\t' << Words[x] << '\n'; } system("pause"); clrscr(); cout << "Quit Y/N?:"; cin >> exit; if (exit == 'y' || exit == 'Y') quit = true; if (exit == 'n' || exit == 'N') quit = false; }//close biggest wile loop }//close main()