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

Lekcja 2.15 nr 2

Ostatnio zmodyfikowano 2016-07-14 23:16
Autor Wiadomość
CCbolt
Temat założony przez niniejszego użytkownika
Lekcja 2.15 nr 2
» 2016-07-14 18:53:57
Czuję że często tutaj będę gościł, wasze wypowiedzi dużo mi dają i pozwalają spojrzeć na problemy z różnych stron.
W pierw potrzebuję opinii o moim kalkulatorze z zadania nr 2 lekcja 15 (kod nr 1) co mogę w nim zmienić, co poprawić, jak jego czytelnośc wygląda dla innych.

Druga sprawa to cel który sobie postawiłem, chcę zrobić kalkulator który będzie zachowywał się tak jak wypunktowane polecenia w zadaniu nr 2 czyli:
1 Wynik ( niewciśnięcie jedynki na sucho wywieli "Nic tu nie ma " opcja ta  ma za zadanie wyświetlić zapisany w pamięci wynik z operacji)
2 Wprowadź liczbę ( miejsce wprowadzanie liczb, poza wprowadzaniem chcę wprowadzić pozycje "zapisz i dalej", bez zapisu liczby przejście do następnej akcji wykasuje liczby.
3 Wybierz działanie ( wybranie opcji +-*/ , tutaj ma nastąpić wczytanie liczb zapisanych i dodanie określonego działania ( tylko gdy wszystko będzie zapisane )
4 wykonaj obliczenie ( 4 wykonuje wszystkie działania, wczytuje zapisane liczby i określone działanie, sumuje wszystko ale nie wyświela wyniku ( wynik ma być dostępny po wybraniu pozycji nr 1 "Wynik"
5 wróć do 1 ( heheszek czyi albo wyświetli wynik albo nic nie wyświetli )
6 liczba 0 kończy program ( 0 zamyka konsole )

Dla mnie dużo roboty ale przy określonym celu lepiej się pracuje, na razie się gubię  w pętlach ( chociaż im więcej piszę tym lepiej to rozumiem ( tragiczny kod nr 2, który jest zarysem )

Szukam teraz informacji na temat przechowywania wyniku w pamięci oraz  wczytywaniu danych z określonej pętli, nie wiem czy to jest możliwe, najprościej chyba byłoby gdyby jeden  program wczytywał drugi ale może ktoś z doświadczeniem powie mi jak się za to zabrać najlepiej.


C/C++
#include <iostream>

using namespace std;
int main()
{
    int A;
    float a, b;
    bool B;
    cout << "================================Kalkulator=================================" << endl;
   
   
   
    cout << "Podaj licze a: ";
    cin >> a;
    cout << "Podaj liczbe b: ";
    cin >> b;
    B = cin.good();
    cin.clear();
    cin.sync();
   
    if( B == false || a == 0 || b == 0 )
    {
        do
        {
            cout << "Podaj poprawne dane: " << endl;
            cout << "Podaj licze a: ";
            cin >> a;
            cout << "Podaj liczbe b: ";
            cin >> b;
            B = cin.good();
            cin.clear();
            cin.sync();
           
        } while( B == false || a == 0 || b == 0 );
       
    } cout << "a: " << a << " b: " << b << endl;
   
    cout << "===========================================================================" << endl;
    cout << "[1] Dodawanie \n[2] Odejmowanie \n[3] Mnozenie \n[4] Dzielenie\n[5] Koniec \n";
    cin >> A;
    B = cin.good();
    cin.clear();
    cin.sync();
    if( B == false || A <= 0 || A >= 6 )
    {
        do
        {
            cout << "Zla opcja, popraw: ";
            cin >> A;
            B = cin.good();
            cin.clear();
            cin.sync();
        } while( B == false || A <= 0 || A >= 6 );
       
    }
    switch( A )
    {
    case 1:
       
        cout << "a+b= " << a + b;
        break;
       
    case 2:
        cout << "a-b= " << a - b;
        break;
       
    case 3:
        cout << "a*b= " << a * b;
        break;
       
    case 4:
        cout << "a/b= " << a / b;
        break;
       
    case 5:
        cout << "Rezygnujesz";
        break;
    } while( a <= 0 || a >= 6 )
   
   
   
   
   
   
         return 0;
   
}


C/C++
#include <iostream>

using namespace std;
int main()
{
    int A;
    float a, b;
    bool B;
    cout << "================================Kalkulator=================================" << endl;
    cout << "[1] Wynik \n[2] Wprowadz liczbe \n[3] Dzialanie \n[4] Wykonaj\n[5] Wroc do 1 \n[6] 0 konczy program \n";
   
    cout << "wybierz operacje: ";
    cin >> A;
    B = cin.good();
    cin.clear();
    cin.sync();
    if( B == false || A <= 0 || A >= 7 )
    {
        do
        {
            cout << "Error, wprowadz dane ponownie: ";
            cin >> A;
            B = cin.good();
            cin.clear();
            cin.sync();
        } while( B == false || A >= 0 || A > 7 );
       
    }
   
    switch( A )
    {
    case 1:
        cout << "Wynik:";
        break;
       
    case 2:
        cout << "wprowadz liczbe :";
        break;
       
    case 3:
        {
            cout << "===========================================================================" << endl;
            cout << "[1] Dodawanie \n[2] Odejmowanie \n[3] Mnozenie \n[4] Dzielenie\n[5] Koniec \n";
            cin >> A;
            B = cin.good();
            cin.clear();
            cin.sync();
            switch( A )
            if( B == false || A <= 0 || A >= 6 )
            {
                do
                {
                    cout << "Error, wybierz ponownie opcje: ";
                    cin >> A;
                    B = cin.good();
                    cin.clear();
                    cin.sync();
                } while( B == false || A >= 0 || A > 6 );
               
            case 1:
               
                cout << "a+b= " << a + b;
                break;
               
            case 2:
                cout << "a-b= " << a - b;
                break;
               
            case 3:
                cout << "a*b= " << a * b;
                break;
               
            case 4:
                cout << "a/b= " << a / b;
                break;
               
            case 5:
                cout << "Rezygnujesz";
                break;
               
            } while( A <= 0 || a >= 6 );
           
        }
       
       
    case 4:
        cout << "Wykonaj obliczenie";
        break;
       
       
    case 5:
        cout << "Wroc do 1";
        break;
       
    case 6:
        cout << "Zakoncz";
        break;
       
    default:
        break;
    }
    return 0;
}

 
P-149956
carlosmay
» 2016-07-14 19:41:20
Proponuję ruszyć z kursem dalej i powrócić do kalkulatora po zdobyciu nowych umiejętności.
Przyda się umiejętność dzielenia programu na funkcje.
Poznanie pozostałych pętli.

Szukam teraz informacji na temat przechowywania wyniku w pamięci
W zwykłej zmiennej można przechowywać dane póki program działa.
Jeśli dane mają być przechowywane do następnego uruchomienia programu, przyda się zapis danych do pliku (kurs).

wczytywaniu danych z określonej pętli
Nie wiem co masz na myśli, ale opis wskazuje, że potrzebujesz użyć tablicy (kurs).

jak jego czytelnośc wygląda dla innych
Używaj sensownych nazw zmiennych. Literki i magiczne liczby nic nie mówią bez dogłębnej analizy.
C++ Programming Style Guidelines
P-149962
CCbolt
Temat założony przez niniejszego użytkownika
» 2016-07-14 23:16:56
Dzięki za kolejną pomocną podpowiedź. w założeniu miałem wrzucać każdą kolejną lekcję która się nada do programu.
P-149975
« 1 »
  Strona 1 z 1