• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Kalkulator oparty na stosie

0 głosów
71 wizyt
pytanie zadane 12 października w C i C++ przez Ichilnia Początkujący (260 p.)
https://pastebin.com/NNuc2Uin

Wybaczcie nazwy funkcji i lekkie pomieszanie w nazwach zmiennych.

Program działa. Zastosowałam stos aby przyswoić sobie w praktyce wiedzę o strukturach danych.

Zależy mi na ocenie przejrzystości oraz wydajności kodu. Kod jest napisany w podejściu proceduralnym.

Pozdrawiam!

1 odpowiedź

0 głosów
odpowiedź 12 października przez PanRik Gaduła (3,170 p.)

Korzystasz z STL`a , metode:
 

void wyczysc() ...

Możesz zamienić na to, aby Twój globalny stos , zamieniał elementy z jakimś pustym lokalnym stosem np.
 

void wyczysc()
{
    std::stack<double> emptyStack;
    emptyStack.push(0);
    wyniki.swap( emptyStack );
}

Taka luźna propozycja :). emptyStack przestaje istnieć po wyjściu z funkcji.

Edit: W Twoim programie można dzielić przez zero. W funkcji podziel nie masz sprawdzenia.

komentarz 12 października przez Ichilnia Początkujący (260 p.)
Dziękuje ;) tak poza tym wszystko ok z kodem ?
komentarz 12 października przez PanRik Gaduła (3,170 p.)
Zawsze może być lepiej :D,

np. możesz się pokusić o zrobienie z tych funkcji jednej klasy, zamiana zwykłych funkcji na szablony, zrobić aby funkcje przyjmowały stałe referencje, a nie jak masz teraz przyjmowania zmiennej przez wartość. Można by wymieniać, a jak już pisałem "zawsze może być lepiej" :)

Podobne pytania

+3 głosów
4 odpowiedzi 670 wizyt
pytanie zadane 14 kwietnia 2015 w C i C++ przez timati Obywatel (1,830 p.)
0 głosów
0 odpowiedzi 275 wizyt
0 głosów
2 odpowiedzi 133 wizyt
pytanie zadane 11 grudnia 2017 w C# i .NET przez garris Użytkownik (610 p.)
Porady nie od parady
Wynikowy wygląd pytania, odpowiedzi czy komentarza, różni się od tego zaprezentowanego w edytorze postów. Stosuj więc funkcję Podgląd posta znajdującą się pod edytorem, aby upewnić się, czy na pewno ostateczny rezultat ci odpowiada.Podgląd posta

56,369 zapytań

101,067 odpowiedzi

208,200 komentarzy

28,039 pasjonatów

Przeglądających: 326
Pasjonatów: 10 Gości: 316

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...