Musimy znaleźć linię w której jest najwięcej różnych liter.
Napisałem więc poniższy kod. Moje pytanie brzmi dlaczego w linijce z błędem ( zaznaczona komentarzem) nie jestem w stanie porównać 2 obiektów typu string ( czy są identyczne). Jest to oczywiście błąd tylko ja nie wiem na czym polega :D
#include <iostream>
#include <string>
#include <fstream>
int main()
{
using namespace std;
string linijka;
int points = 0;
int rekord = 0;
bool znaleziono;
string zwyciezca;
string tablica[] = {"q","w","e","r","t","y","u","i","o","p","a","s","d","f","g","h","j","k","l","z","m","x","c","v","b","n","m"};
fstream plik("przyklad.txt");
while(getline(plik,linijka))
{
points = 0;
for(int i = 0; i < sizeof(tablica)/sizeof(*tablica); i++)
{
znaleziono = false;
for(int x = 0; x < linijka.length(); x++)
{
if(tablica[i] == linijka[x] ) // BŁĄD BŁĄD BŁĄD BŁĄD
{
if(!znaleziono)
{
points++;
}
}
}
}
if(points > rekord)
{
rekord = points;
zwyciezca = linijka;
}
}
return 0;
}