Projekt- Kalkulator
Ostatnio zmodyfikowano 2009-11-28 22:18
Elaine |
» 2009-11-20 00:01:29 Skoro nie widzi definicji stringstreama, to dopisz |
|
naiL Temat założony przez niniejszego użytkownika |
» 2009-11-20 00:11:59 *upokorzony* dzięki, eh Macie Wasz Mości Wiele Cierpliwości. 135|error: no match for 'operator>>' in 'LiczbaA >> Liczba_A'| ||=== Build finished: 1 errors, 0 warnings ===| znaczy sie działać działa tylko taką uwagę mi wyświetla. Może to ustawienia kompilatora?
|
|
Elaine |
» 2009-11-20 11:13:29 ISO/IEC 14882:2003, 5.8.1(...)The operands shall be of integral or enumeration type and integral promotions are performed.(...) |
Innymi słowy, nie możesz przesunąć bitowo double o double. Czy przypadkiem nie miałeś na myśli backup >> Liczba_A; ? |
|
naiL Temat założony przez niniejszego użytkownika |
» 2009-11-21 19:49:34 hmm zawiłość przedstawionego rozwiązania sprawiła pewnie że nawet nie potrafiłem jej ze zrozumieniem przepisać na własne potrzeby. Faktycznie. :)
|
|
naiL Temat założony przez niniejszego użytkownika |
» 2009-11-22 00:17:16 Próbuje i próbuje. Przygotowuję sobie klocki do tego kalkulatora ale.. Główna funkcja programu ma za zadanie wyłapać który klawisz został naciśnięty. 0-9 cyfry lub enter lub =/+-* 4xstrzałki c-clear wpisu ostatniego. Na próbę ostateczną bo już nie wiem na ile takich samych sposobów to samo napisałem :) wciskam klawisz0-9->to cyfra. ok. kazdy wybor cyfry wywola zamiast cout << to cyfra... ten fragment kodu o którym mowa była wyżej (jako funkcja zwróci wartość Liczba_A(typu double) do funkcji mam przekazać klawisz. ale.... nie działa :) wciskam cyfre.. ok. wciskam litere-> to cyfra? wciskam strzałke->to cyfra\n w lewo. No dobrze że nie w bok... dzień świra. Czy to urok getch()?? Jest to pewnikiem znowu jakiś trywiał. Proszę o podpowiedz. Niżej fragment kodu na próbę. (planuję by każdy if opisywał jakąś zmienną dla switcha. if( klawisz >= 48 || klawisz <= 57 ) wybor = 1;
swich( wybor ) case 1 : liczba_A = wczytywanie_liczbyA( klawisz );
dalej na próbę wczytujący klawisze kod. int main() { using namespace std; int klawisz; do { klawisz = getch(); if( klawisz == 13 || klawisz == 61 ) cout << "\n enter lub = \n"; if( klawisz >= 48 || klawisz <= 57 ) cout << "\n to cyfry\n "; if( klawisz == 43 ) cout << "\nplus \n"; if( klawisz == 45 ) cout << "\nminus \n"; if( klawisz == 47 ) cout << "\ndzielenie\n "; if( klawisz == 42 ) cout << "\nmnozeninne\n "; if( klawisz == 44 ) cout << "\nprzecinek\n"; if( klawisz == 224 || klawisz == 0 ) { klawisz = getch(); if( klawisz == 80 ) cout << "\ndo dolu\n "; if( klawisz == 75 ) cout << "\nw lewo\n "; if( klawisz == 72 ) cout << "\ndo gory\n "; if( klawisz == 77 ) cout << "\n w prawo\n "; } } while( klawisz != 27 ); cout << "wylazl\n"; return( 0 ); }
dlaczego wcisniecie czegokolwiek poza ifami daje wynik inny niż poza klawisz=getch()?? i tak sie wydaje że trzeba go wciskać dwa razy... wstyT |
|
DejaVu |
» 2009-11-22 06:05:32 Strzałki należą do klawiszy funkcyjnych i ich kod ASCII składa się z dwóch bajtów. Wydaje mi się, że opisałem to w kursie. |
|
naiL Temat założony przez niniejszego użytkownika |
» 2009-11-22 09:57:22 tak. strzałki akurat sciagnąłem z obsługi_kasjera. if(klawisz=224||...){;) problem raczej mam z kodami zakresu 48-57. if( klawisz >= 48 || klawisz <= 57 ) cout << "to cyfra ";
jeżeli nacisnę literę, program pokazuje, że to cyfra. i nic. Jeżeli nacisnę +(który też ma swój if) to cyfra dodawanie. Cały kalkulator będzie sterowany kilkoma ifami i switchem. 0-9-wywołają funkcję w której kod opracowany jest pi razy oko wyżej. Funkcja zwraca wartość double do obliczeń. Zaznaczona jest flaga że cyfra została pomyślnie wprowadzona. Potem +/-/* itp np strzałkami wybieram jak _kasjer cos/sin/x^n. bo trudno to przypisać znakom. Ale jak w tym fragmencie jak i w kodzie string->double kilka postów wcześniej coś się mimo dobrych chęci kiełbasi(nawet kaszani). tak jakby nie było warunku 48<=klawisz<=57<-taki skrót myślowy. eH...... sory. teraz wchodzi.pewnie uczniowski b ł ą d. if( klawisz >= 48->AND <- klawisz <= 57 ) cout << "to cyfra ";
po and&& działa poprawnie.. w sumie dlaczego miałby nie wczytywać innych wartości tym ifem :]sory. |
|
naiL Temat założony przez niniejszego użytkownika |
» 2009-11-28 21:42:47 |
|
1 2 « 3 » 4 |