Arni Temat założony przez niniejszego użytkownika |
zadanie z rozdziału 15 » 2012-06-27 01:08:46 nie rozumiem w czym robię błąd bo nie wychodzi to co ma wyjścposób może byc #include <iostream>
using namespace std; int main() { float a, b; do { cout << "Podaj liczbe a" << endl; cin >> a; cout << "Podales " << a << endl; } while( a < 0 ); do { cout << "Podaj liczbe b" << endl; cin >> b; cout << "Podales " << b << endl; } while( b < 0 ); int dzialanie; cout << "Działania do wyboru : \n [1] dodawanie \n [2] odejmowanie \n [3] mnozenie \n [4] dzielnie \n [5] rezygnacja" << endl; cout << "Wybrane dzialnie"; cin >> dzialanie; switch( dzialanie ) { case 1: cout << " dodawanie " << a + b << endl; break; case 2: cout << "odejmowanie " << a - b << endl; break; case 3: cout << " mnozenie" << a * b << endl; break; case 4: cout << " dzieleni" << a / b << endl; break; default: cout << " rezygnuj" << endl; } getchar(); getchar(); return 0; } Napisz prosty kalkulator, który będzie potrafił dodawać, odejmować, mnożyć i dzielić. Program ten ma działać następująco: 1. Wypisuje obecny wynik 2. Wprowadź liczbę 3. Wybierz działanie (jeżeli liczba różna od 0) 4. Wykonaj obliczenia (jeżeli liczba różna od 0) 5. Wróć do kroku 1. 6. Jeżeli wprowadzoną liczbą jest 0, zakończ program. Przykładowe menu wyboru działania: [1] Dodawanie [2] Odejmowanie [3] Mnożenie [4] Dzielenie [5] Rezygnuj Zabezpiecz wcześniej napisany kalkulator przed podawaniem niepoprawnych liczb i operacji. Wykorzystaj wiedzę zdobytą z pierwszego zadania pracy domowej niniejszego rozdziału. Zabezpiecz również w analogiczny sposób przed możliwością wyboru nieprawidłowego działania. |
|
Benu1 |
» 2012-06-27 01:46:11 Podaj tresc zadania to moze pomoge |
|
xevuel |
» 2012-06-27 09:03:55 @Arni: Wedle treści zadania, user ma podać tylko jedną liczbę, a nie dwie :) Może zapodam pseudokod: otwarcie programu; tworzysz nową zmienną, np. wynik i przypisujesz jej 0; while(true) { prosisz po podanie liczby; if(liczba == 0) break;
prosisz o wybór działania; if(dzialanie == 5) break; wykonujesz działanie; wypisujesz wynik; }
<offtop> @Benu: No cholera. Jakbyś nie mógł sam poszukać treści. Kij z tym, wyedytował, podał treść zadania, i co? Zero reakcji. Po twoich postach i przynagleniach co 10 minut wnioskuję, że zbyt dużego pojęcia o programowaniu to ty nie masz. Co z tego że nie potrafię pomóc? Nabiję sobie posta, a jakby ktoś miał pretensje, to przecież napisałem "moze"... @down down: czekalem 2h az edytuje posta |
Bardzo ciekawe. Widocznie mnie w szkole uczyli innej matematyki niż ciebie. Ostatnio zmodyfikowano wczoraj o 02:16:43 |
Napisano 2012-06-27 01:46:11 |
Jak dla mnie to jest pół godziny, nie dwie. No ale cóż, "smieszne". Widocznie masz bana na google, że takiego zadania znaleźć nie potrafiłeś, przykre. Po uplywie tego czasu juz nawet tu nie zagladalem |
Kultura wymaga, że po zaproponowaniu komuś pomocy należy ją jak najszybciej spełnić, o ile to potrafimy. Napisałeś, że "bez problemu". Poza tym, w ciągu dnia kilkakrotnie odwiedzałeś ten serwis. wiec sie ogarnij "pro skrypterze" |
I jak ja mam to skomentować? Nawet nie wiesz, czym jest skrypt -_- Jeszcze takie małe pytanko: Gdzie ja napisałem, choćby raz na tym forum, że jestem "pro"...? </offtop> |
|
Netro |
» 2012-06-27 14:25:48 @Arni poniżej masz jak powinien wyglądać kod mam nadzieję że zrozumiałeś to jak opisałem , jak coś to pytaj. #include <iostream> using namespace std;
int main() { float wynik = 0, a; int b; bool x; do { do { if( x == 1 || wynik == 0 ) cout << "Wynik: " << wynik << endl; cout << "Podaj liczbe: "; cin >> a; x = cin.good(); cin.clear(); cin.sync(); } while( x != 1 ); if( a != 0 ) { cout << "Działania do wyboru : \n [1] dodawanie \n [2] odejmowanie \n [3] mnozenie \n [4] dzielnie \n [5] rezygnacja" << endl; cout << "Wprowadz dzialanie: "; cin >> b; switch( b ) { case 1: wynik += a; break; case 2: wynik -= a; break; case 3: wynik *= a; break; case 4: wynik /= a; break; case 5: cout << "\n\nZrezygnowales z wyboru dzialania!\n\n" << endl; break; default: cout << "\n\nWprowadz liczbe od 1 do 5\n\n" << endl; }; }; } while( a != 0 ); cout << "\n\nKoniec programu!\n\n"; return 0; } |
|
Benu1 |
» 2012-06-27 23:41:07 @xevuel
Pojecia duzego o programowaniu nie mam ale ta prace domowa bym zrobil bez problemu to po 1 po 2 nabilem sobie posta? smieszne czekalem 2h az edytuje posta i poda tresc zadania. Po uplywie tego czasu juz nawet tu nie zagladalem wiec sie ogarnij "pro skrypterze" |
|
DejaVu |
» 2012-06-28 00:01:29 @Benu1: dostosuj się do kultury panującej na forum albo organizm będzie zmuszony Ciebie wydalić. Jak chcesz walić takimi tekstami w stosunku do innych użytkowników to odbimbruj na inne forum. |
|
ziom10 |
» 2012-06-28 11:45:06 do { if( x == 1 || wynik == 0 ) cout << "Wynik: " << wynik << endl; cout << "Podaj liczbe: "; cin >> a; x = cin.good(); cin.clear(); cin.sync(); } while( x != 1 );
Nie rozumiem jaka tu jest zależność pomiędzy 'a' i 'x', jak x może sprawdzić czy a jest dobre? PS. proszę o wyrozumiałość a nie odsyłanie mnie do google ;p |
|
SeaMonster131 |
» 2012-06-28 11:54:39 Najpierw wpisujesz a (cin >> a). Powiedzmy że jest to typ int. No więc w następnej linijce sprawdzasz czy użytkownik wpisał właśnie te int (liczby) czy może coś innego (x = cin.good()). Jeżeli wszystko się zgadza, to x wynosi true, jeżeli użytkownik wpisał np ciąg znaków to x wynosi false. |
|
« 1 » |