Hej mam program który liczy mi znak po znaku z pliku i wyswietla mi ile jest danych znakow w tym pliku. I musze go przerobic aby.. liczyl mi normalnie znak po znaku wszystkie a nie jakis konkretny ktory ja chce, jak to robi teraz tylko, ze gdy napotka pierwsza cyfre ma mi od razu wyswietlic cala zawartosc pliku. O to program ! potrzebuje pilnie. !! [code] #include<iostream> #include<fstream> using namespace std; ifstream wp; // Odpowiada za operacje IO (zapis, odczyt itd.. ) char z; void sciezkadopliku(char[]); // funkcja otwiera plik wybrany przez użytkownika i sprawdza czy ten plik istnieje void znak(void); //funkcja wczytuje znaki z klawiatury void ile(char,ifstream&);// funkcja oblicza ilość znaków int main(void){ char plik[500]; cout<<"Podaj plik: "<<endl;//Pyta o plik cin>>plik;//wczytuje nazwe pliku sciezkadopliku(plik);//wywolanie funkcji otwierajacej plik znak();//wywolanie funkcji wczytujacej znak ile(z,wp);//wywolanie funkcji liczacej znaki system("PAUSE"); return 0; } void znak() { cout<<"Wpisz znak: "<<endl;//pyta o znak cin>>z;//wczytuje znak z klawiatury } void sciezkadopliku(char plik[]) { wp.open(plik);//otwiera plik if(!wp){//sprawdza czy plik istnieje cout<<"Blad otwarcia pliku!"<<endl;//wyswietla komunikat o bledzie system("PAUSE"); exit(0) ; //zamkniecie programu } } void ile(char z, ifstream &wp) { char a; int i=0; while(wp.get(a)&&!wp.eof()){//funkcja while odczytuje kolejne znaki z klawiatury dopóki nie osiagnie konca pliku if(a==z){//jesli funkcja osiaga znak wczytany z klawiatury, to wartosc i zwieksza sie o 1 i++; } } cout<<"Ilosc znakow: "<<z<<" w pliku, to "<<i<<endl;//wyswietla komunikat o ilosci znakow w pliku } [\code]
Answer

Life Enjoy

" Life is not a problem to be solved but a reality to be experienced! "

Get in touch

Social

© Copyright 2013 - 2024 KUDO.TIPS - All rights reserved.