Ласло Краус |
ПЈМП Интегрални испит 1. 3. 2003. |
---|
Пројектовати на језику C++ систем класа са следећим описом (све класе опремити потребним конструкторима, деструктором и оператором =
):
!pr
). Предвидети стварањење копије (са новим идентификационим бројем) у динамичкој зони меморије и исписивање (dаt<<pr
).
+zb
), додавање копије предмета (zb+=pr
), дохватање предмета са датим редним бројeм у збирци (~zb
). Апстрактна збирка остварује исписивање свог садржаја (dat<<zb
). Недозвољени индекс се пријављује изузетком помоћу објекта типа специјалне једноставне класе. Испис збирке садржи назив врсте збирке и вредности појединих предмета унутар пара средњих заграда, међусобно раздвојене зарезима.
"Niz"
. Ствара се празан са задатим капацитетом (подразумевано 10). Нови предмети се додају иза последњег попуњеног места. Капацитет низа се, по потреби аутоматски повећава за 10% тренутног капацитета низа, али најмање за 10 места.
Саставити на језику C++ главни програм који од целих бројева које прочита преко главног улаза направи један низ. Унос бројева се звршава са 9999. По завршетку читања програм испише садржај низа. На крају, читајући индексе исписује идентификационе бројеве и вредности одабраних елемената низа све док се за индекс не уноси 9999.
Одговорити концизно на следећа питња везана за језик C++:
а) Да ли се у статичкој функцији класе може користити показивач this
? Образложити.
б) У којим се ситуацијама позива конструктор копије?
в) Зашто је флексибилније користити низове показивача на објекте него низове објеката?
Симболи A, B, C и D кодирају се са по два бита 00, 01, 10 и 11. Извршити компресију низа симбола ABCCDABAA применом динамичког Хафмановог поступка.
Пројектовати на језику Java пакет класа који садржи све класе из задатка 1.1. Уместо операторских функција правити обичне методе. Уместо операција за исписивање правити методе за претварање у тип String
. Саставити на језику Java класу са главним програмом као у задатку 1.1. На располагању стоји класа Citaj
у безименом пакету која садржи заједничке методе за читање свих стандардних типова података.
Саставити на симболичком машинском језику за IBM-PC потпрограм, који може да се позива из програма писаног на језику C, за одрећивање колико елемената низа 16-битних целих бројева који приликом дељења са 8-битним целим бројем k дају остатке 0, 1, ..., k-1 (резултат је низ од k 8-битних целих бројева). Користити компактни меморијски модел (блиски позиви и далеки показивачи, сегмент за код је _text
).
Саставити на језику C++ главни програм примењује горњи потпрограм на један прочитани низ целих бројева и исписује добијене резултате.
Copyright © 2003, Laslo Kraus
Последња ревизија: 10.7.2003.