Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdlib>
- #include <fstream>
- #include <string>
- using namespace std;
- //Prototypy
- void WyborZadania();
- void Zad1(string fileName, string target, string replace);
- void Zad2(string fileName);
- char * Zad3(char * tab, int rozmiar);
- int main() {
- WyborZadania();
- return EXIT_SUCCESS;
- }
- void Zad1(string fileName, string target, string replace){
- fstream plik; fstream zapis;
- string linia;
- string wynik;
- zapis.open("wyniki.txt", ios::app | ios::out);
- plik.open(fileName.c_str());
- while(!plik.eof()){
- getline(plik, linia);
- size_t pos = linia.find( target );
- if(pos < linia.length()){
- linia.replace(pos,pos+replace.length(),replace);
- //cout << pos << " | " << linia << endl;
- }
- zapis << linia << endl;
- }
- plik.close();
- zapis.close();
- }
- void Zad2(string fileName){
- fstream input;
- string line;
- int zlicz[123];
- input.open(fileName.c_str());
- for(int i = 0; i < sizeof(zlicz)/sizeof(zlicz[0]); i++){
- zlicz[i] = 0;
- }
- while(!input.eof()){
- getline(input, line);
- for(int i = 0; i < line.length(); i++){
- cout << (int)line[i] << ", ";
- zlicz[(int)line[i]] += 1;
- }
- }
- cout << endl;
- for(int i=97;i<123;i++) if(zlicz[i]>0) cout<<(char)i<<" - "<<zlicz[i]<<endl;
- for(int i=65;i<91;i++) if(zlicz[i]>0) cout<<(char)i<<" - "<<zlicz[i]<<endl;
- }
- char * Zad3(char * tab, int rozmiar){
- string uwaga = "UWAGA:";
- string zdanie = tab;
- string wynik = uwaga + zdanie;
- int licznik = 0;
- if(wynik.length() > rozmiar){
- tab[rozmiar-2] = '.';
- tab[rozmiar-1] = '.';
- tab[rozmiar] = '.';
- }
- else{
- for(int i = 0; i < rozmiar; i++){
- tab[i] = wynik[i];
- }
- }
- return tab;
- }
- void Zad4(int rok){
- int A, B;
- if(rok < 1582) { A = 15; B = 6; }
- else if(rok >= 1583 && rok <=1699) { A = 22; B = 2;}
- else if(rok >= 1700 && rok <=1799) { A = 23; B = 3;}
- else if(rok >= 1800 && rok <=1899) { A = 23; B = 4;}
- else if(rok >= 1900 && rok <=2099) { A = 24; B = 5;}
- else if(rok >= 2100 && rok <=2199) { A = 24; B = 6;}
- else if(rok >= 2200 && rok <=2299) { A = 25; B = 0;}
- else if(rok >= 2300 && rok <=2399) { A = 26; B = 1;}
- else if(rok >= 2400 && rok <=2499) { A = 25; B = 1;}
- int a = rok % 19;
- int b = rok % 4;
- int c = rok % 7;
- int d = (a*19 + A) % 30;
- int e = (2*b + 4*c + 6*d + B) % 7;
- int wielkanoc = 22 + d + e;
- string mc;
- if(wielkanoc > 31) { wielkanoc -= 31; mc = "kwiecien"; }
- else { mc = "marzec"; }
- if(d == 29 && e == 6) { wielkanoc -= 7; }
- if(d == 28 && e == 6) { wielkanoc -=7; }
- cout << wielkanoc << " " << mc;
- }
- void WyborZadania(){
- int zad;
- cout << "Wybierz zadanie: ";
- cin >> zad;
- switch(zad){
- case 1:
- {
- string filename;
- string target;
- string replace;
- cout << "Wprowadz nazwe pliku: "; cin >> filename;
- cout << "Zamieniamy: "; cin >> target;
- cout << "Na ciag: "; cin >> replace;
- Zad1(filename, target, replace);
- break;
- }
- case 2:
- {
- string fileName;
- cout << "Wprowadz nazwe pliku: "; cin >> fileName;
- Zad2(fileName);
- break;
- }
- case 3:
- {
- int n = 15;
- char zdanie[n];
- cout << "Wprowadz zdanie: "; cin >> zdanie;
- //char zdanie[ 12 ] = { 'x', 'D', 'D', '\0', '\0', '\0',
- //'\0', '\0', '\0', '\0', '\0', '\0' };
- //char zdanie2[ 12 ] = { 'x', 'D', 'D', 'D', 'D', 'D',
- //'d', 'd', 'd', 'd', 'd', '\0' };
- char * wsk;
- wsk = &zdanie[0];
- cout << Zad3(wsk, 12);
- break;
- }
- case 4:
- {
- int rok;
- cout << "Podaj rok: "; cin >> rok;
- Zad4(rok);
- break;
- }
- default:
- {
- WyborZadania();
- break;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement