Witam,mam problem z zadaniem Słowa ,matura 2015,PP
oto tresć:
W pliku slowa.txt znajduje się 1000 słów, a w pliku nowe.txt znajduje się 25 słów.
W obu plikach wszystkie słowa składają się z małych liter alfabetu łacińskiego. Żadne z tych
słów nie ma więcej niż 12 znaków, a każde jest zapisane w osobnym wierszu.
Napisz program, który da odpowiedzi do poniższych zadań. Każdą odpowiedź zapisz
w pliku wynik5.txt i poprzedź ją numerem oznaczającym zadanie.
Zadanie 5.2. (6 pkt)
Dla każdego słowa z pliku nowe.txt wypisz to słowo oraz dwie liczby rozdzielone spacją
oznaczające:
• liczbę wystąpień danego słowa w pliku slowa.txt
oto kod:
#include <iostream> #include<fstream> using namespace std; int porownaj(string s,string z) { if(s.size()!=z.size())return 0; else { for(int i=0;i<s.size();i++) { if(s[i]!=z[i])return 0; } } return 1; } int main() { string s; string z; int ile=0; ifstream we1("nowe.txt"); ifstream we("slowa.txt"); for(int j=0;j<1000;j++) { we>>s; for(int i=0;i<25;i++) { we1>>z; if(porownaj(s,z))ile++; } } for(int i=0;i<25;i++) { cout<<z<<""<<ile<<""<<endl; } return 0; }
Wypisuje błędne wyniki,nie mogę znaleźć błędu>>>