Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Kalkulator w c++


Rekomendowane odpowiedzi

Opublikowano

Witam. Mam z problem z mianowicie:

Mam stworzyć prosty kalkulator który będzie wykonywał obliczenia na dwóch liczbach : +, - , \ , * -- to ma wykonywać.

Mam go stworzyć w oparciu o ten temat: http://cpp0x.pl/kursy/Kurs-C++/Poziom-1/Warunek-wielokrotnego-wyboru-switch-case/17

 

I tu problem. Wszystkie polecenia rozumiem jak sie ich używa itp, kurs przerabiałem solidnie i wszystko ogarniam ale nie mam pomysłu jak się za niego zabrać. Jakby ktoś mógł mi pomóc albo wytłumaczyć jak mam to zrobić , albo zrobić go i w komentarzach wytlum aczyć jak go zrobił ( nie do czego sluzy jakas formułka ,ale dlaczego została ona tu uzyta) Z góry dzięki. Pozdrawiam

Kocham mpcforum.pl!!!

18706.png

Opublikowano

#include <iostream>

using std::cin;

using std::cout;

int main()

{

int a, b;

char t;

cout << "Podaj liczbę a: ";

cin >> a;

cout << "Podaj liczbę b: ";

cin >> b;

cout << "Podaj typ działania ( +, -, *, / ): ";

cin >> t;

switch(t)

{

case '+':

cout << a << " + " << b << " = " << a + b;

break;

case '-':

cout << a << " - " << b << " = " << a - b;

break;

case '*':

cout << a << " * " << b << " = " << a * b;

break;

case '/':

if(a == 0 || b == 0)

cout << "Nie można dzielić przez 0";

else

cout << a << " / " << b << " = " << a / b;

break;

}

return 0;

}

Nie rozumiem tylko co mam ci tu opisać skoro wszystko rozumiesz? Przeanalizuj kod i się ucz.
Opublikowano

Z czasem będziesz miał wprawę i będziesz pisał całkiem skomplikowane programy bez niczyjej pomocy i nie martw się, jeżeli ci coś nie wychodzi, sam tak zaczynałem.

  • 2 tygodnie później...
Opublikowano

Lekko poza tematem, słowo w słowo musiałem napisać na moim ostatnim kolokwium na ćwiczeniach z informatyki :D

 

ps. W pierwszym terminie poległem ;)

414636.gif


Opublikowano

zrób na tej zasadzie
cout<" podaj pierwszą liczbę ">n;

cin>>a;

cout<" podaj drugą liczbę ">n;

cin>>b;

cout<"wynik">n;

cin>>a+b;

Opublikowano

zrób na tej zasadzie

cout<" podaj pierwszą liczbę ">n;

cin>>a;

cout<" podaj drugą liczbę ">n;

cin>>b;

cout<"wynik">n;

cin>>a+b;

 

cout<" podaj pierwszą liczbę ">n;

Powiedz mi co to za twór? Bo chyba nie użycie szablonu.


Pomagam w projektach dotyczących programowania (C++/C/Java/C#/inne). Jak masz jakiś problem, napisz do mnie, wspólnie poszukamy rozwiązania ;).

Opublikowano

Co za idiota wprowadza polskie znaki do instrukcji?

Nigdy nie wprowadzaj polskich znaków do cout<<"text";

ponieważ może Ci program rozsadzić.

 

Raz na lekcji u mnie Programowania tak miałem, za drugim razem profesor wstawił mi szmatę do dziennika za wprowadzanie polskich znaków do programów.

 

//Edit

 

Na początku tak samo

nie żadne std::

 

tylko po include

 

 

using namespace std;
 

 

 

I tyle starczy

Opublikowano

//Edit

 

Na początku tak samo

nie żadne std::

 

tylko po include

 

 

using namespace std;
 

 

 

I tyle starczy

 

Jak wie że będzie używać tylko cout i cin to po co ma cały namespace używać? Zresztą jak używa Visual Studio 2010 to lepiej bez using, przynajmniej intellisense jakoś działa :)

Nie pomagam na PW, od tego macie forum!!!

 

#PHP-things

 

 

08FMpDu.png

 

Opublikowano

Co za idiota wprowadza polskie znaki do instrukcji?

Nigdy nie wprowadzaj polskich znaków do cout<<"text";

ponieważ może Ci program rozsadzić.

 

Raz na lekcji u mnie Programowania tak miałem, za drugim razem profesor wstawił mi szmatę do dziennika za wprowadzanie polskich znaków do programów.

 

//Edit

 

Na początku tak samo

nie żadne std::

 

tylko po include

 

 

using namespace std;
 

 

 

I tyle starczy

 

 

U mnie w pliku na c::b wystarczy dodać na początku kodu instrukcje:

 

    setlocale(LC_ALL,"");

 

I znaki polskie w konsoli działały bez problemu.

Co do std::, to już zależy od wygody i preferencji programisty, i od tego, czy jest konieczność używania w kodzie źródłowym całej biblioteki standardowej, czy też jest tych instrukcji wykorzystywane bardzo mało. Wystrzegamy się jej oczywiście w plikach nagłówkowych.


Pomagam w projektach dotyczących programowania (C++/C/Java/C#/inne). Jak masz jakiś problem, napisz do mnie, wspólnie poszukamy rozwiązania ;).

  • 1 rok później...
Opublikowano

@KAMIKADZEKKS

 

Ciekawe co to za profesor?

Zamiast gadać innym głupoty że jest to źle, powinni pokazywać jak rozwiązać taki problem.

W Polsce dają pały za coś za co w Angli na egzamin każą się uczyć :)

Linux pozwoli wycisnąć ostatnią łzę z twojego procesora.

Opublikowano

Co za idiota wprowadza polskie znaki do instrukcji?

Nigdy nie wprowadzaj polskich znaków do cout<<"text";

ponieważ może Ci program rozsadzić.

 

Raz na lekcji u mnie Programowania tak miałem, za drugim razem profesor wstawił mi szmatę do dziennika za wprowadzanie polskich znaków do programów.

 

//Edit

 

Na początku tak samo

nie żadne std::

 

tylko po include

using namespace std;
 

I tyle starczy

Programu polskie znaki w cout nie powinny ci wysadzić. Tylko będą krzaczki, bo kodowanie w konsoli, a w code::blocks się różni.

TuByłaSygnatura.png

Opublikowano

Ludzie co za głupoty czasami pierdolicie przy takim gadaniu to obiektówka godna magistra.

#include <iostream> //biblioteka wejścia i wyjścia - musisz jakoś podać te dane i je napisać

int main()
{
std::cout << "Podaj liczbe";
int a, b, c; //zmienna
std::cin >> a;
std::cout << "Podaj druga liczbe" << std::endl;
std::cin >> b;
std::cout << "Wybierz dzialanie."; //tak naprawdę endl służy do robienia entera, taki /n
std::cin >> c;
switch(c)
{
case 1:
std::cout << a+b;
break;
case 2:
std::cout << a-b;
break;
//dalej już z pewnością wiesz jak
}
}

Nie wiem czego nie rozumiesz - piszesz cout, które wyświetla informacje, cin za pomocą którego użytkownik wprowadza dane i wykonujesz operacje - a o wypisanie ich nie musisz się martwić.

pyhvh7E.png


 


Opublikowano

Ludzie co za głupoty czasami pierdolicie przy takim gadaniu to obiektówka godna magistra.

#include <iostream> //biblioteka wejścia i wyjścia - musisz jakoś podać te dane i je napisać

int main()
{
std::cout << "Podaj liczbe";
int a, b; //zmienna
std::cin >> a;
std::cout << "Podaj druga liczbe" << std::endl;
std::cin >> b;
std::cout << "Wybierz dzialanie."; //tak naprawdę endl służy do robienia entera, taki /n
switch(c)
{
case 1:
std::cout << a+b;
break;
case 2:
std::cout << a-b;
break;
//dalej już z pewnością wiesz jak
}
}

Nie wiem czego nie rozumiesz - piszesz cout, które wyświetla informacje, cin za pomocą którego użytkownik wprowadza dane i wykonujesz operacje - a o wypisanie ich nie musisz się martwić.

1. Kod nie zadziała, bo nie ma zmiennej c.

2. Gdzie jest przypisanie wartości do zmiennej c? No chyba, że switch potrafi czytać w myślach.

3. Fajnie, że użytkownik wie, kiedy 1 = dodawanie, 2 = odejmowanie., to już lepiej ustawić typ danych dla zmiennej c char i zrobić

case '+':

4. Dobre umiejscowienie zmiennych.

5. Powinno się również w takim switchu użyć default, aby program powiedział użytkownikowi co zrobił źle.

TuByłaSygnatura.png

Opublikowano

Co za idiota wprowadza polskie znaki do instrukcji?

Nigdy nie wprowadzaj polskich znaków do cout<<"text";

ponieważ może Ci program rozsadzić.

 

Raz na lekcji u mnie Programowania tak miałem, za drugim razem profesor wstawił mi szmatę do dziennika za wprowadzanie polskich znaków do programów.

 

//Edit

 

Na początku tak samo

nie żadne std::

 

tylko po include

using namespace std;
 

I tyle starczy

Jakim prawem polskie znaki mają Ci program "rozsadzić"? Przecież to tylko ta różnica że w konsoli będą inaczej wyświetlane, bo jest inne kodowanie. Po za tym pan Mirosław Zelent pokazywał kiedyś w jaki sposób można używać polskich znaków w C++. Pewnie miałeś na myśli, że w nazwach zmiennych nie można używać polskich znaków :)

 

"nie żadne std::" oczywiście, że można użyć using namespace, ale po co, skoro używa tylko cin i cout. Po za tym, stwierdzenie "żadne", podkreślam "ŻADNE" tu nie pasuje, bo przecież można używać std:: :>

jw19e8.png

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...