Mam problem z poleceniem
1. Program w C++, który na podstawie pliku dane2.txt z każdego wiersza wyszukuje największą wartość i zapisuje ją do pliku wyniki2.txt.
Ponadto program wyszukuje i wypisuje na ekran największą wartość w pliku dane2.txt
Liczby:
5 41 1
7 4 22
11 3 8
Mój kod
#include <iostream>
#include <fstream>
#include <string>
#include <cstdlib>
using namespace std;
int main(){
int maksimum=1000;
fstream odczyt;
odczyt.open("dane2.txt");
ofstream zapis;
zapis.open("wyniki2.txt");
string linia;
string s;
int liczba;
while(!odczyt.eof()) {
getline(odczyt, linia);
int max1=0;
int max2=0;
for(int i=0; i<linia.size(); i++){
s=linia[i];
if(s==" "){
continue;
}
liczba=atoi(s.c_str());
if(liczba>maksimum) {
maksimum=liczba;
}
if(liczba>max1) {
max2=max1;
max1=liczba;
}
else if(liczba>max2) {
max2=liczba;
}
}
zapis<<max1<<" "<< max2<<endl;
}
cout <<"Najwieksza wartosc "<<maksimum<<endl;
odczyt.close();
zapis.close();
return 0;
}
Wypisuje poprawnie wartości w linijce 2 i 3, ale niepoprawne w pliku "wyniki2". Gdzie błąd?