Nazwa forum

Niestety, nikt nie powie Ci czym jest FluxBB - musisz go poznać sam!

Nie jesteś zalogowany na forum.

#1 2017-10-23 09:15:49

lllllllllll
Gość
Windows 7Chrome 61.0.3163.100

jc++

#include <iostream>
#include <math.h>
#include <string>
using namespace std;
int silnia(int n);
void rownanie(double a, double b, double c);
int fibo(int i);
void podwojenie(string tekst);
int szukaj(string tekst, char szukana);
string odwroc(string tekst);
void sortuj(double tab[], int rozmiar);
int main()
{
    char znak,w;
    int liczba,wynik,numer;
    double a, b, c;
    string lan,napis;
    double *tablica;
    cout << "Co chcesz zrobic?\n";
    cout << "s - oblicz silnie\n";
    cout << "r - oblicz pierwiastki rownania kwadratowego\n";
    cout << "f - oblicz liczbe Fibonacciego o zadanym numerze\n";
    cout << "l - zwroc napis, w ktorym wszystkie litery sa podwojone\n";
    cout << "w - podaj ilosc wystapien podanego znaku w podanym tekscie\n";
    cout << "o - odwroc ciag znakow podanego napisu\n";
    cout << "p - posortuj tablice liczb typu double\n";
   
    cin >> znak;
    switch ( znak )
    {
    case 's':
        cout << "Podaj liczbe: ";
        cin >> liczba;
        wynik=silnia(liczba);
        cout << "Silnia liczby " << liczba << " wynosi " << wynik << "\n";
        break;

    case 'r':
        cout << "Podaj a: ";
        cin >> a;
        cout << "Podaj b: ";
        cin >> b;
        cout << "Podaj c: ";
        cin >> c;
        rownanie(a, b, c);
        break;

    case 'f':
        cout << "Podaj numer ciagu Fibonacciego: ";
            cin >> numer;
            if(numer<0) cout << "Numer musi byc liczba nieujemna!";
            else {

        wynik = fibo(numer);
        cout << "Liczba Fibonacciego dla numeru " << numer << " wynosi: " << wynik << "\n";
                    }
        break;
       
    case 'l':
        cout << "Podaj napis: ";
        cin.sync();
        getline(cin,lan);
        podwojenie(lan);
        break;
       
    case 'w':
        cout << "Podaj tekst: ";
        cin.sync();
        getline(cin,lan);
        cout << "Podaj szukany znak: ";
        cin.sync();
        cin >> w;
        wynik = szukaj(lan,w);
        cout << "Znak '" << w << "' w podanym napisie wystapil " << wynik << " razy\n";
        break;
                   
    case 'o':
        cout << "Podaj tekst: ";
        cin.sync();
        getline(cin,lan);
        napis = odwroc(lan);
        cout << napis;
        break;
       
    case 'p':
        cout << "Podaj ilosc elementow tablicy: ";
        cin >> liczba;
        tablica=new double[liczba];
        for(int i=0;i<liczba;i++)
        {
            cout << "Podaj " << i+1 << " element tablicy: ";
            cin >> tablica(i];
        }
        sortuj(tablica,liczba);
        break;

       
    default:
        cout << "Podales niepoprawny znak!";
        break;
       
       
        }

}
int silnia(int n)
{
    int x;
    if (n <= 1) return 1;
    else
    {
        x = n*silnia(n - 1);
        return x;
    }
}
void rownanie(double a, double b, double c)
{
    double delta,x1,x2;
    delta = b*b - 4 * a*c;
    if (delta < 0) cout << "Rownanie nie ma pierwiastkow\n";
    else if (delta == 0)
    {
        x1 = (-b) / (2 * a);
         cout << "Rownanie ma jedno rozwiazanie i wynosi ono: " << x1 << "\n";
    }
    else if (delta > 0)
    {
        x1 = (-b - pow(delta, 1 / 2)) / 2 * a;
        x2 = (-b + pow(delta, 1 / 2)) / 2 * a;
        cout << "Rownanie ma dwa rozwiazania i wynosza one: " << x1 << " oraz " << x2 << "\n";
    }
}
int fibo(int i)
{
    int wynik;
    if (i == 0) return 0;
    else if (i == 1) return 1;
    else if (i > 1) wynik = fibo(i - 1) + fibo(i - 2);
    return wynik;

}
void podwojenie(string tekst)
{
    string pomoc;
    for(int i=0; i<tekst.length(); i++)
    {
        if((tekst.at(i)>='A' && tekst.at(i)<='Z') || (tekst.at(i)>='a' && tekst.at(i)<='z'))
        pomoc=pomoc+tekst.at(i)+tekst.at(i);
        else pomoc=pomoc+tekst.at(i);  //zgodnie z trescia zadania podwojane sa jedynie litery, inne znaki sa tylko przepisane pojedynczo.
    }
        cout << pomoc;
}
int szukaj(string tekst, char szukana)
{
    int wynik=0;
    for(int i=0; i<tekst.length(); i++)
    {
        if(tekst.at(i)==szukana) wynik++;
       
    }
    return wynik;
}
string odwroc(string tekst)
{
    string wynik;
    for(int i=tekst.length()-1; i>=0; i--)
    {
        wynik=wynik+tekst.at(i);
    }
    return wynik;
}
void sortuj(double tab[],int rozmiar)
{
    for(int j = 0; j < rozmiar - 1; j++)
        for(int i = 0; i < rozmiar - 1; i++)
               if(tab(i] > tab[i + 1]) swap(tab(i], tab[i + 1]);
       cout << "Oto posortowana tablica: ";
       for(int i=0;i<rozmiar;i++)
       cout << tab(i] <<", ";

   
}

Użytkowników czytających ten temat: 0, gości: 1
[Bot] ClaudeBot

Stopka

Forum oparte na FluxBB

Darmowe Forum
orderofillumination - voltrpg - nasypowa1 - vtmpbp - floru