Kalkulator/ uzycie petli
Ostatnio zmodyfikowano 2014-11-28 22:48
nvkk Temat założony przez niniejszego użytkownika |
Kalkulator/ uzycie petli » 2014-11-28 19:53:03 Witam. Jestem początkującym programista( jezeli moge tak sie nazwac :D ) pisze banalny kalkulator za pomocą switch i case.. Chciałbym aby po każdym wykonaniu działanie program "działał od początku" czyli żeby wyświetlilo się menu z wyborem możliwych działań.. Wiem że to trzeba zrobić za pomocą pętli. Myślałem aby zrobić to za pomocą do..while. Zresztą sami zobaczcie kod, niestety to nie działa i nie wiem co musze naprawić :( #include <iostream>
using namespace std;
int main()
{ int wyjsc; do { cout << "Witaj w Kalkulatorze !\n"; cout << " Co chcesz obliczyc?\n[1].Dodawanie\n[2].Odejmowanie\n[3].Mnozenie\n[4].Dzielenie\n[5].Potegowanie\n[6]Wyjdz z programu"; int obl; cin >> obl; switch( obl ) { case 1: cout << "\nPodaj liczby ktore chcesz dodac :\n"; int pier; int wyndod; int drug; cin >> pier; cout << "Teraz podaj 2 liczbe\n"; cin >> drug; wyndod = pier + drug; cout << "Wynik tego dodawania to " << wyndod << " .\n"; break; case 2: int pierod; int druod; int wynod; cout << "\nPodaj liczbe od ktorej chcesz cos odjac :\n"; cin >> pierod; cout << "Teraz podaj licze ktora chcesz odjac od liczby pierwszej\n"; cin >> druod; wynod = pierod - druod; cout << "Roznica wynosi : " << wynod << " .\n"; break; case 3: int piermno; int drumno; int wynmno; cout << "Podaj pierwsza liczbe do mnozenia ! \n"; cin >> piermno; cout << "Podaj druga liczbe do mnozenia : !\n"; cin >> drumno; wynmno = piermno * drumno; cout << "Wynik tego mnożenia wynosi " << wynmno << " ."; break; case 4: int pierdzi; int drudzi; int wyndzi; cout << "Podaj pierwsza liczbe do dzielenia :\n"; cin >> pierdzi; cout << "Podaj druga liczbe do dzielenia : \n"; cin >> drudzi; wyndzi = pierdzi / drudzi; cout << "Wynik z tego dzielenia wynosi " << wyndzi << "."; break; case 5: int pierpot; int drupot; int wynpot; cout << "Podaj liczbe ktora mam podniesc do potegi : \n"; cin >> pierpot; wynpot = pierpot * pierpot; cout << "wynik potegowania to " << wynpot << "."; break; } while( obl == 6 ); cout << "."; } } |
|
wilkoo13 |
» 2014-11-28 19:59:45 do while używa się tak do { costam }while(warunek)
a ty dałeś while, hmm zaraz po zamnieciu switcha |
|
nvkk Temat założony przez niniejszego użytkownika |
czyli jak? » 2014-11-28 20:02:54 Czyli jak mam to zmienić? zamieścić while jeszcze pod case bez używania } ???
|
|
NopeDotAvi |
» 2014-11-28 20:07:36 Jak tam masz cin >> obj zrób tak: |
|
nvkk Temat założony przez niniejszego użytkownika |
Kurde.. Nie wiem czy aż tak dzisiaj nie ogarniam :D » 2014-11-28 20:13:29 Albo dzisiaj mam jakiś gorszy dzień albo w ogóle jakiś nie udany jestem :D teraz nie działa mi switch i case. Mimo wpisywania np. 4 i nacisniecie entera nic sie nie dzieje. Dawalem while na samym początku (wczesniej napisalem int obl) nie działa. dałem zaraz przed switch. tam gdzie miałem właśnie cin>>obl; a tak samo w switch i nic nie działa :/ #include <iostream>
using namespace std;
int main()
{ int obl; int wyjsc; cout << "Witaj w Kalkulatorze !\n"; cout << " Co chcesz obliczyc?\n[1].Dodawanie\n[2].Odejmowanie\n[3].Mnozenie\n[4].Dzielenie\n[5].Potegowanie\n[6]Wyjdz z programu"; while( cin >> obl ); switch( obl ) { case 1: cout << "\nPodaj liczby ktore chcesz dodac :\n"; int pier; int wyndod; int drug; cin >> pier; cout << "Teraz podaj 2 liczbe\n"; cin >> drug; wyndod = pier + drug; cout << "Wynik tego dodawania to " << wyndod << " .\n"; break; case 2: int pierod; int druod; int wynod; cout << "\nPodaj liczbe od ktorej chcesz cos odjac :\n"; cin >> pierod; cout << "Teraz podaj licze ktora chcesz odjac od liczby pierwszej\n"; cin >> druod; wynod = pierod - druod; cout << "Roznica wynosi : " << wynod << " .\n"; break; case 3: int piermno; int drumno; int wynmno; cout << "Podaj pierwsza liczbe do mnozenia ! \n"; cin >> piermno; cout << "Podaj druga liczbe do mnozenia : !\n"; cin >> drumno; wynmno = piermno * drumno; cout << "Wynik tego mnożenia wynosi " << wynmno << " ."; break; case 4: int pierdzi; int drudzi; int wyndzi; cout << "Podaj pierwsza liczbe do dzielenia :\n"; cin >> pierdzi; cout << "Podaj druga liczbe do dzielenia : \n"; cin >> drudzi; wyndzi = pierdzi / drudzi; cout << "Wynik z tego dzielenia wynosi " << wyndzi << "."; break; case 5: int pierpot; int drupot; int wynpot; cout << "Podaj liczbe ktora mam podniesc do potegi : \n"; cin >> pierpot; wynpot = pierpot * pierpot; cout << "wynik potegowania to " << wynpot << "."; break; } cout << "."; }[ \c pp ] |
|
NopeDotAvi |
» 2014-11-28 20:19:49 po while dałeś średnik, a miałeś klamerki dać |
|
nvkk Temat założony przez niniejszego użytkownika |
» 2014-11-28 20:22:44 Dzięki wielkie :) Nie no dałem po prostu ; bo mi wyskakiwał błąd i myślałem że ty po prostu nie napisałeś :) Tylko chce się upewnić. zeby użyć system("cls") - bo to z tego co pamiętam to była komenda na wyczyszczenie konsoli- chyba ze źle pamiętam :) Musze jeszcze dopisać #include<iostream> #include < windows.h>....... |
|
NopeDotAvi |
» 2014-11-28 20:26:09 Tak, musisz dodać #include <windows.h> . Tylko nie zapominaj, że wszystkie funkcje system( "" ); działają jedynie na windowsie. |
|
« 1 » 2 |