←
↑
⇑
↓
→

Ласло Краус |
Објектно програмирање - испити
Практични испит
25. 11. 2000
|
Задатак
| Напомене
Поставка задатка
(садржај)
Пројектовати на језику C++ апстрактну класу за податке. Предвидети:
- формирање копије податка у динамичкој меморији,
- писање вредности податка у неки излазни ток (
dat<<pod
), и
- уништавање податка.
Скаларни подаци су подаци који садрже неку реалну вредност. Пројектовати на језику C++ класу за скаларне податке као изведену класу из класе за апстрактне податке. Поред могућности које постоје у основној класи, предвидети:
- иницијализацију скаларног податка обичном реалном вредношћу, и
- дохватање вредности скаларног податка (
+skal
).
Нзови су подаци који могу да садрже известан број апстрактних података. Пројектовати на језику C++ класу за низове као изведену класу из класе за апстрактне податке. Поред могућности које постоје у основној класи, предвидети:
- стварање празног низа задатог опсега индекса,
- иницијализацију низа сдржајем другог низа,
- додељивање вредности једног низа другом (
niz1=niz2
),
- дохватање капацитета низа (
+niz
),
- испитивање да ли је неко место у низу попуњено (
niz%ind
),
- дохватање податка који се налази на датом месту низа (
niz[ind]
),
- стављање податка на одређено место у низу (
niz(ind,pod)
),
- избацивање податка са задатог места у низу (
niz-=ind
), и
- пражњење низа (
~niz
).
Конфликтне ситуације (недозвољен опсег индекса, индекс изван дозвољеног опсега, дохватање податка са празног места) пријављивати изузецима.
Саставити на језику C++ функцију којa кроз дијалог прочита један података (скаларни или низ) преко главног улаза. У случају низа, елементи могу да буду и низови који опет могу да садрже и низове до произвољне дубине. Вредност функције треба да је показивач на прочитани податак (нула означава "празан" податак).
Саставити на језику C++ главни програм који прочита један податак преко главног улаза, испише прочитани податак преко главног излаза и понавља претходне кораке све док не прочита "празан" податак. Грешке у току обраде (пријављивање изузетака) не смеју да прекидају програм.
- Испит траје 3 сата.
- Решење задатка предаје се у облику три датотеке: дефиницје свих
класа, дефиниције метода уз све класе и главни програм. Не
стављати целокупно решење у једну датотеку.
- Пожељно је да програм проради до краја испита.
(садржај)
←
↑
⇑
↓
→
Аутор: Ласло Краус
Е-пошта: kraus@etf.rs
Copyright © 2010, Laslo Kraus
Последња ревизија: 4.10.2010.