Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ///////////////////////zad1
- #include <iostream>
- #include <exception>
- #include <cmath>
- using namespace std;
- class funkcjaKwadratowa {
- private:
- int a,b,c;
- public:
- int delta() {
- return b*b-4*a*c;
- }
- void podajDane() {
- cout<<"Podaj a: ";
- cin>>a;
- cout<<"Podaj b: ";
- cin>>b;
- cout<<"Podaj c: ";
- cin>>c;
- }
- void wyswietlPierwiastki() {
- try {
- if(delta()<0) throw "Delta ujemna. Brak rozwiazania (Pierwiastek z liczby ujemnej)\n";
- if(a==0) throw "a=0 - Dzielenie przez zero\n";
- double x1, x2;
- x1=(-b-sqrt(delta()))/(2*a);
- x2=(-b+sqrt(delta()))/(2*a);
- if(x1==x2) cout<<"Funkcja ma jedno rozwiazanie: x1="<<x1<<endl;
- else cout<<"Funkcja ma dwa rozwiazania: " <<"x1=" <<x1<<", x2=" <<x2<<endl;
- }
- catch (const char *s) {
- cout<<"Wyjatek!" <<s<<endl;
- }
- }
- };
- int main() {
- funkcjaKwadratowa funkcja;
- funkcja.podajDane();
- funkcja.wyswietlPierwiastki();
- return 0;
- }
- //////////////////////////////////zad2
- #include <iostream>
- #include <exception>
- #include <cmath>
- using namespace std;
- class DzielZero:public exception {
- virtual const char* what() const throw() {
- return "Nie dziel przez zero - w mianowniku jest 0";
- }
- };
- class Pierwiastek:public exception {
- virtual const char* what() const throw() {
- return "Liczba ujemna pod pierwiastkiem";
- }
- };
- int main() {
- int a,b;
- Pierwiastek pierwiastek;
- DzielZero dzielenie;
- cout<<"Podaj A: ";
- cin>>a;
- cout<<"Podaj B: ";
- cin>>b;
- try {
- if(a<0) throw pierwiastek;
- if(b==0) throw dzielenie;
- cout<<"Wynik to: "<<sqrt(a)/b<<endl;
- }
- catch (exception &e) {
- cout<<"Wyjatek - "<<e.what()<<endl;
- }
- return 0;
- }
- ///////////////////////////////////////////zad3
- #include <iostream>
- #include <list>
- using namespace std;
- class pustyStos: public exception {
- virtual const char* what() const throw() {
- return "Stos jest pusty!!!!\n";
- }
- };
- class usunElement: public exception {
- virtual const char* what() const throw() {
- return "Stos pusty - nie ma czego usunac\n";
- }
- };
- class numerOperacji: public exception {
- virtual const char* what() const throw() {
- return "Wybrales zly numer operacji\n";
- }
- };
- class Stos {
- private:
- list<int> lista;
- int element;
- public:
- void dodaj() {
- try {
- cout << "Podaj nowy element ";
- cin >> element;
- lista.push_back(element);
- }
- catch(exception &e) {
- cout<<"\nWyjatek - " <<e.what();
- }
- }
- void usun() {
- usunElement usun;
- try {
- if(lista.empty()) throw usun;
- lista.pop_back();
- cout << "Pomyslnie usunieto element ze szczytu stosu! " << endl;
- }
- catch(exception &e) {
- cout<<"\nWyjatek - " <<e.what();
- }
- }
- void wyswietl() {
- pustyStos pusty;
- try{
- if(lista.empty()) throw pusty;
- list<int>::reverse_iterator it;
- for(it = lista.rbegin(); it!=lista.rend(); ++it) {
- cout << *it << endl;
- }
- }
- catch(exception &e) {
- cout<<"\nWyjatek - " <<e.what();
- }
- }
- };
- int main()
- {
- Stos obiekt;
- numerOperacji operacja;
- bool petla = true;
- int wybor;
- while(petla) {
- try {
- cout << endl<<"Wybierz jedna z ponizszych opcji "<<endl;
- cout << "1. Dodaj element na stos " << endl;
- cout << "2. Usun element ze stosu " << endl;
- cout << "3. Wyswietl elementy stosu " << endl;
- cout << "4. Zakoncz program " << endl;
- cout<<"Numer operacji: ";
- cin>>wybor;
- switch(wybor) {
- case 1:
- obiekt.dodaj();
- break;
- case 2:
- obiekt.usun();
- break;
- case 3:
- obiekt.wyswietl();
- break;
- case 4:
- petla = false;
- break;
- default:
- throw operacja;
- break;
- }
- }
- catch(exception &e) {
- cout<<"\nWyjatek - " <<e.what();
- }
- }
- return 0;
- }
- ///////////////////////////////////////////////////zad4
- #include <iostream>
- #include <set>
- #include <string>
- #include <conio.h>
- using namespace std;
- class pustaLista: public exception {
- virtual const char* what() const throw() {
- return "Nie ma zadnych uczniow na liscie\n";
- }
- };
- class usunUcznia: public exception {
- virtual const char* what() const throw() {
- return "Nie dodano zadnego ucznia wczesniej!\n";
- }
- };
- class numerOperacji: public exception {
- virtual const char* what() const throw() {
- return "Wybrales zly numer operacji\n";
- }
- };
- class Uczniowie {
- private:
- set<string> uczen;
- set<string>::reverse_iterator it;
- string nowy_uczen;
- public:
- void dodaj() {
- cout << "Wprowadz imie i nazwisko ucznia: ";
- getline(cin,nowy_uczen);
- uczen.insert(nowy_uczen);
- }
- void usun() {
- usunUcznia wyjatek_usun;
- try {
- if(uczen.empty()) {
- throw wyjatek_usun;
- }
- else{
- cout << "Wprowadz imie i nazwisko ucznia do usuniecia: ";
- getline(cin,nowy_uczen);
- int pomoc;
- for(it = uczen.rbegin(); it!=uczen.rend(); ++it) {
- int znaleziono = (*it).compare(nowy_uczen);
- if(znaleziono==0) pomoc = 1;
- }
- if(pomoc==1) uczen.erase(nowy_uczen);
- return;
- }
- }
- catch(exception &e) {
- cout<<"\nWyjatek: " <<e.what()<<endl;
- }
- }
- void wyswietl() {
- pustaLista pusto;
- try {
- if(uczen.empty()) throw pusto;
- cout << "Lista uczniow: " << endl;
- for(it = uczen.rbegin(); it!=uczen.rend(); ++it) {
- cout << *it << endl;
- }
- }
- catch(exception &e) {
- cout<<"\nWyjatek: " <<e.what()<<endl;
- }
- }
- };
- int main() {
- Uczniowie obiekt;
- numerOperacji operacja;
- char wybor;
- bool petla = true;
- while(petla) {
- try {
- cout << endl<<"Wybierz jedna z ponizszych opcji "<<endl;
- cout << "1. Dodaj ucznia " << endl;
- cout << "2. Usun wybranego ucznia " << endl;
- cout << "3. Wyswietl liste uczniow " << endl;
- cout << "4. Zakoncz program " << endl;
- wybor = getch();
- switch(wybor) {
- case '1':
- obiekt.dodaj();
- break;
- case '2':
- obiekt.usun();
- break;
- case '3':
- obiekt.wyswietl();
- break;
- case '4':
- petla = false;
- break;
- default:
- throw operacja;
- break;
- }
- }
- catch(exception &e) {
- cout<<"\nWyjatek: " <<e.what()<<endl;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement