Czy linijki znakow w pliku sa takie same

0

Czesc,

Chciałbym napisać sobie program, który wypisze czy linijka A = "alamakota" jest taka sama jak linijka B = "alamakota". Jeśli jest taka sama to wypisze true, jesli nie to false. Linię z pliku zapisujemy do stringa a1, druga linię do porownania do stringa a2 i tak dalej, az wszystkie linijki zostaną porównane.
Ilość linijek w pliku nie jest znana.

Jak na razie napisałem program, który tylko wypisuje wszystkie linie na ekran, a dalej... no niestety nie mam pomysłu jak to zrobić.

Jakieś pomocne sugestie, proszę?

0
  1. Dopoki getline z pliku != plik.eof()
  2. bierzemy getline z pliku i zapisujemy do stringa oneLine
bool wordsAreTheSame(string s1, string s2){
if(s1 == s2)
return true;
else
return false;
}
stringstream ss;
ss.str(oneLine);
string slowo1;
string slowo2;
while(ss << slowo1){
ss << slowo2;
wordsAreTheSame(slowo1,slowo2);
}
0

Gałąź else jest niepotrzebna w funkcji wordsAreTheSame

bool wordsAreTheSame(string s1, string s2) {
	if (s1 == s2)
		return true;
	return false;
} 
1

A ten if to koniecznie musi być? Przecież samo porównanie ciągów zwraca bool-a. :|

bool wordsAreTheSame(string s1, string s2) {
  return s1 == s2;
}

Zresztą, do porównywania ciągów jest już funkcja compare.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.