Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cmath>
- #include <string>
- using namespace std;
- int silnia(int liczba);
- void rowkw(int a, int b, int c);
- void fib(int f);
- void odwroc(string wyraz);
- void podwoj(string wyraz1);
- int w_znak(string napis, char znak);
- double sortowanie(double tab[],int ilosc);
- void main() {
- int a = 0;
- char z;
- cout << "co chcesz zrobic?:"<<endl;
- cout << "a - oblicz silnie" << endl << "b - oblicz pierwiastki rownania kwadratowego"<<endl<<"c - oblicz n-ty wyraz ciagu Fibonacciego"<<endl<<"d - podwajanie liter wyrazu "<<endl<<"e - ilosc wystapien znaku w napisie"<<endl<<"f - odwaracanie wyrazu"<<endl<<"g- sortowanie"<<endl;
- cin >> z;
- switch (z) {
- case 'a':
- {
- cout << "podaj liczbe silnii: ";
- cin >> a;
- cout << "wynik to: " << silnia(a);
- break;
- }
- case 'b':
- {
- int a1, b1, c1;
- cout << "podaj a: ";
- cin >> a1;
- cout << "podaj b: ";
- cin >> b1;
- cout << "podaj c: ";
- cin >> c1;
- rowkw(a1, b1, c1);
- break;
- }
- case 'c':
- {
- int f;
- cout << "podaj liczbê ktorej szukasz: ";
- cin >> f;
- fib(f);
- break;
- }
- case 'd': {
- string wyraz1;
- cout << "podaj wyraz: ";
- cin >> wyraz1;
- podwoj(wyraz1);
- break;
- }
- case 'e': {
- string wyraz2;
- char znak;
- cout << "podaj wyraz:";
- cin >> wyraz2;
- cout << "podaj znak";
- cin >> znak;
- cout << "ilosc wystapienia znaku: " << w_znak(wyraz2, znak);
- break;
- }
- case 'f': {
- string wyraz;
- cout << "podaj wyraz do odwrocenia: " << endl;
- cin >> wyraz;
- odwroc(wyraz);
- break;
- }
- case 'g': {
- double *tab;
- int ilosc;
- cout << "podaj ilosc liczb do posortowania";
- cin >> ilosc;
- tab = new double[ilosc];
- for (int i = 0; i < ilosc; i++) {
- cin >> tab[i];
- }
- *tab = sortowanie(tab, ilosc);
- for (int i = 0; i < ilosc; i++) {
- cout << endl << i + 1 << ". " << tab[i] << endl;
- }
- break;
- }
- }
- system("pause");
- }
- int silnia(int liczba) {
- int wynik = 1;
- for (int i = 1; i <= liczba; i++) {
- wynik = wynik*i;
- }
- return wynik;
- }
- void rowkw(int a, int b, int c) {
- double x1, x2, delta, x0;
- delta = (b*b) - (4 * a*c);
- if (delta > 0) {
- x1 = (-b - sqrt(delta)) / (2 * a);
- x2 = (-b + sqrt(delta)) / (2 * a);
- cout << "pierwiastek 1:" << x1 << "pierwiastek 2:" << x2;
- }
- if (delta == 0) {
- x0 = (-b) / (2 * a);
- cout << "pierwiastek podwojny:" << x0;
- }
- if (delta < 0) {
- cout << "nie ma miejsc zerowych";
- }
- }
- void fib(int f) {
- long long a = 1, b = 1;
- for (int i = 3; i<=f; i++) {
- b += a;
- a = b - a;
- }
- cout << "szukana liczba fibonacciego to:" <<b;
- }
- void odwroc(string wyraz) {
- const int rozmiar = wyraz.size();
- string nowy;
- for (int i = 0; i < rozmiar; i++) {
- nowy = nowy + wyraz[rozmiar - i - 1];
- }
- cout << "wyraz odwrocony:"<<nowy<<endl;
- }
- void podwoj(string wyraz1) {
- string podwojony;
- int rozmiar = wyraz1.size();
- for (int i = 0; i < rozmiar; i++) {
- podwojony += wyraz1[i];
- podwojony += wyraz1[i];
- }
- cout << "podwojony wyraz:" << podwojony << endl;
- }
- int w_znak(string napis, char znak) {
- int rozmiar = napis.size();
- int ilosc = 0;
- for (int i = 0; i < rozmiar; i++) {
- if (napis[i] == znak) {
- ilosc++;
- }
- }
- return ilosc;
- }
- double sortowanie(double tab[],int ilosc) {
- double pomoc;
- for (int i = 0; i<ilosc; i++)
- for (int j = 1; j<ilosc - i; j++)
- if (tab[j - 1] < tab[j]) {
- pomoc = tab[j - 1];
- tab[j - 1] = tab[j];
- tab[j] = pomoc;
- }
- return *tab;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement