Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Lekcja 17 - kalkulator

Ostatnio zmodyfikowano 2014-02-24 21:08
Autor Wiadomość
Całkowalny
Temat założony przez niniejszego użytkownika
Lekcja 17 - kalkulator
» 2014-02-23 15:31:41
Zrobiłem kalkulator przy użyciu funkcji, tak jak w poleceniu w lekcji 17, prosiłbym o sprawdzenie i może o podpowiedzi jak można go skrócić albo lepiej zapisać cały kod, bo uczę się dopiero, a chciałbym już znać po rozwiązaniu zadania najoptymalniejszy sposób, wiem, że mój jest zagmatwany, ale udało mi się samemu zrobić, więc nie jest źle, chciałem wszystko uwzględnić, czyli zabezpieczenie przed wpisaniem tekstu zamiast liczb czy jakiegoś znaku, który nie odpowiada żadnemu działaniu:
C/C++
#include <iostream>
int wczytajLiczbe()
{
    do
    {
        int liczba, liczba1, x;
        std::cin.clear();
        std::cin.sync();
        std::cin >> liczba >> liczba1 >> x;
        if( std::cin.good() )
        {
            do
            {
                if( x == 1 || x == 2 || x == 3 || x == 4 )
                {
                    if( x == 1 )
                         return( liczba + liczba1 );
                   
                    if( x == 2 )
                         return( liczba - liczba1 );
                   
                    if( x == 3 )
                         return( liczba * liczba1 );
                   
                    if( x == 4 )
                         return( liczba / liczba1 );
                   
                }
                else
                {
                    do
                    {
                        std::cout << "Wprowadz jeszcze raz dzialanie";
                        std::cin >> x;
                    } while( !( x == 1 || x == 2 || x == 3 || x == 4 ) ); }
               
            } while( x == 1 || x == 2 || x == 3 || x == 4 );
           
        }
       
        else
        {
            std::cout << "Nie podales liczby, powtorz ";
        }
    } while( std::cin.fail() );
   
}

int main()
{
    std::cout << "Podaj dwie liczby i dzialanie, gdzie:\n [1] - dodawanie\n [2] - odejmowanie\n [3] - mnozenie\n [4] - dzielenie\n";
    float a = wczytajLiczbe();
    std::cout << "Wynik to: " << a << std::endl;
    return 0;
}
[ \c pp ]
P-105145
Tebex
» 2014-02-24 21:08:33
Napisać programu niestety nie napiszę ale mogę poradzić:
a) dodaj pętlę główną czyli gdy wykona działanie niech rozpocznie się wszystko od początku lub po wpisaniu odpowiedniego znaku zakończy działanie
b) zrobiłbym to w ten sposób (schemat):
 wybór działania -> wpisanie liczby nr.1 -> wpisanie liczby nr.2 -> wyświetlanie wyniku -> wybór czy wyłączyć program czy wybrać działanie(jeśli wybierze wyłączenie to return a jeśli wybór to pętla wraca do początku programu

P-105228
« 1 »
  Strona 1 z 1