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

Lekcja 15 - dwa kody

Ostatnio zmodyfikowano 2011-12-01 15:11
Autor Wiadomość
Mioka
Temat założony przez niniejszego użytkownika
Lekcja 15 - dwa kody
» 2011-11-30 21:50:31
Napisałem kalkulator do lekcji piętnastej jednak mam pytanie czym się różni ten kod
C/C++
#include <iostream>
#include <limits>
using namespace std;
int main()
{
    char a, b;
    int dzialanie;
    do
    {
        cout << "wybierz dzialanie: \n[1]dodawanie \n[2] odejmowanie \n[3] mnożenie \n[4] dzilenie \n[5] opuść program" << endl;
        cin >> dzialanie;
        if( dzialanie == 5 )
        {
            cout << "Dziękuje za skorzystanie z programu." << endl;
            return 0;
        }
        if( dzialanie > 5 )
        do
        {
            {
                cout << "wybierz dzialanie poprawnie! \n wybierz dzialanie:" << endl;
                cin >> dzialanie;
            }
        } while( dzialanie <= 5 );
       
        cout << "Podaj pierwszą liczbę" << endl;
        cin >> a;
        do
        {
           
            if( a == 0 )
            {
                cout << "Podaj liczbę różną od zera" << endl;
                cin >> a;
            }
        } while( a == 0 );
       
        cout << "Podaj drugą liczbę" << endl;
        cin >> b;
        do
        {
           
            if( b == 0 )
            {
                cout << "Podaj liczbę różną od zera" << endl;
                cin >> b;
            }
        } while( b == 0 );
       
        if( dzialanie <= 4 )
        {
           
            switch( dzialanie )
            {
            case 1:
                if( dzialanie == 1 )
                     cout << "wynik =" <<( a + b ) << endl;
               
                break;
            case 2:
                if( dzialanie == 2 )
                     cout << "wynik =" <<( a - b ) << endl;
               
                break;
            case 3:
                if( dzialanie == 3 )
                     cout << "wynik =" <<( a * b ) << endl;
               
                break;
            case 4:
                if( dzialanie == 4 )
                     cout << "wynik =" <<( a / b ) << endl;
               
                break;
            }
        }
    } while( dzialanie != 5 );
   
    return 0;
   
}
Od tego:
C/C++
#include <iostream>
#include <limits>
using namespace std;
int main()
{
    int a, b;
    int dzialanie;
    do
    {
        cout << "wybierz dzialanie: \n[1]dodawanie \n[2] odejmowanie \n[3] mnożenie \n[4] dzilenie \n[5] opuść program" << endl;
        cin >> dzialanie;
        if( dzialanie == 5 )
        {
            cout << "Dziękuje za skorzystanie z programu." << endl;
           
        }
        if( dzialanie > 5 )
        do
        {
            {
                cout << "Czytaj!! \n wybierz dzialanie poprawnie:" << endl;
                cin >> dzialanie;
            }
        } while( dzialanie >= 5 );
       
        if( dzialanie <= 4 )
        {
           
            switch( dzialanie )
            {
            case 1:
                if( dzialanie == 1 )
                     cout << "Podaj pierwszą liczbę";
               
                cin >> a;
               
                if( a == 0 )
                {
                    do
                    {
                        cout << "podaj liczbę różną od zera" << endl;
                        cin >> a;
                       
                    } while( a == 0 );
                   
                }
                cout << "Podaj druga liczbę";
                cin >> b;
                if( b == 0 )
                {
                    do
                    {
                        cout << "podaj liczbę różną od zera" << endl;
                        cin >> b;
                       
                    } while( b == 0 );
                   
                }
                cout << "wynik =" <<( a + b ) << endl;
                break;
            case 2:
                if( dzialanie == 2 )
                     cout << "Podaj pierwszą liczbę";
               
                cin >> a;
                if( a == 0 )
                {
                    do
                    {
                        cout << "podaj liczbę różną od zera" << endl;
                        cin >> a;
                       
                    } while( a == 0 );
                   
                }
                cout << "Podaj druga liczbę";
                cin >> b;
                if( b == 0 )
                {
                    do
                    {
                        cout << "podaj liczbę różną od zera" << endl;
                        cin >> b;
                       
                    } while( b == 0 );
                   
                }
                cout << "wynik =" <<( a - b ) << endl;
                break;
            case 3:
                if( dzialanie == 3 )
                     cout << "Podaj pierwszą liczbę";
               
                cin >> a;
                if( a == 0 )
                {
                    do
                    {
                        cout << "podaj liczbę różną od zera" << endl;
                        cin >> a;
                       
                    } while( a == 0 );
                   
                }
                cout << "Podaj druga liczbę";
                cin >> b;
                if( b == 0 )
                {
                    do
                    {
                        cout << "podaj liczbę różną od zera" << endl;
                        cin >> b;
                       
                    } while( b == 0 );
                   
                }
                cout << "wynik =" <<( a * b ) << endl;
                break;
            case 4:
                if( dzialanie == 4 )
                     cout << "Podaj pierwszą liczbę";
               
                cin >> a;
                if( a == 0 )
                {
                    do
                    {
                        cout << "podaj liczbę różną od zera" << endl;
                        cin >> a;
                       
                    } while( a == 0 );
                   
                }
                cout << "Podaj druga liczbę";
                cin >> b;
                if( b == 0 )
                {
                    do
                    {
                        cout << "podaj liczbę różną od zera" << endl;
                        cin >> b;
                       
                    } while( b == 0 );
                   
                }
                cout << "wynik =" <<( a / b ) << endl;
                break;
            }
        }
    } while( dzialanie != 5 );
   
    return 0;
   
}
Dodam, że ten pierwszy jest błędny, nie pojawia się napis gdy wpisze się zero, gdzie tam popełniłem błąd?
P-45001
OSA_PL
» 2011-11-30 22:38:52
Tutaj:
char a, b;

Zerknij sobie na tablicę znaków ASCII '0'= 48
P-45007
Mioka
Temat założony przez niniejszego użytkownika
» 2011-12-01 15:11:37
Dzięki już działa :).
P-45026
« 1 »
  Strona 1 z 1