Programowanie. Teoria i praktyka z wykorzystaniem C++
Programowanie. Teoria i praktyka z wykorzystaniem C++
Programowanie. Teoria i praktyka z wykorzystaniem C++
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
WICZENIA 213<br />
3. Zmie znak polecenia drukowania na =.<br />
4. Dodaj do funkcji main() komunikat powitalny:<br />
„Witaj w naszym prostym kalkulatorze.<br />
W wyraeniach stosuj liczby zmiennoprzecinkowe.”<br />
5. Dodaj do komunikatu powitalnego informacj o tym, jakie operatory s obsugiwane oraz<br />
jak drukowa wynik i zakoczy dziaanie programu.<br />
6. Znajd trzy bdy logiczne w programie, które zostay tam przemylnie ukryte, i popraw<br />
je, aby kalkulator zwraca prawidowe wyniki.<br />
Powtórzenie<br />
1. Co rozumiemy pod pojciem „Programowa to zrozumie”? Wymie trzy gówne fazy<br />
produkcji oprogramowania.<br />
2. W rozdziale tym zosta szczegóowo opisany proces tworzenia kalkulatora. Napisz krótk<br />
specyfikacj wymaga dla takiego programu.<br />
3. W jaki sposób dzieli si problem na mniejsze, atwiejsze do ogarnicia czci?<br />
4. Dlaczego utworzenie ograniczonej wersji programu jest dobrym pomysem?<br />
5. Co jest zego w mnoeniu wymaga dotyczcych funkcjonalnoci na pocztku pracy nad<br />
programem?<br />
6. Co to jest „przypadek uycia”?<br />
7. Jaki jest cel przeprowadzania testów?<br />
8. Posikujc si informacjami zawartymi w rozdziale, opisz rónic midzy skadnikiem<br />
(Term), wyraeniem (Expression), liczb (Number) i czynnikiem (Primary).<br />
9. Dane wejciowe kalkulatora rozkadalimy na nastpujce elementy: skadnik, wyraenie,<br />
czynnik i liczba. Rozó w ten sposób wyraenie (17+4)/(5–1).<br />
10. Dlaczego w programie nie ma funkcji o nazwie number()?<br />
11. Co to jest token?<br />
12. Co to jest gramatyka? Co to jest regua gramatyki?<br />
13. Co to jest klasa? Do czego su klasy?<br />
14. Co to jest konstruktor?<br />
15. Dlaczego w funkcji expression() klauzula default instrukcji switch wstawia token z powrotem<br />
do strumienia?<br />
16. Co to znaczy „wczyta z wyprzedzeniem”?<br />
17. Co robi funkcja putback() i dlaczego jest przydatna?<br />
18. Co nastrcza trudnoci w implementacji operatora % (modulo) w funkcji term()?<br />
19. Do czego su dwie zmienne skadowe klasy Token?<br />
20. Dlaczego czasami skadowe klasy dzieli si na publiczne i prywatne?<br />
21. Co dzieje si w klasie Token_stream, gdy w buforze jest token i zostanie wywoana funkcja<br />
get()?<br />
22. Po co zostay dodane znaki ';' i 'k' do instrukcji switch w funkcji get() w klasie Token_<br />
stream?