←
↑
⇑
↓
→
Ласло Краус |
ИР2ОО1/СИ2ОО1
Испит
26. 9. 2007.
|
Аутори: Игор Тартаља, Ђорђе Ђурђевић и Ласло Краус
Задаци: 1
2
| Напоменe
Поставка задатка 1 (30 поена)
(⇒ почетак)
Одговорити концизно (једна или две реченице) и прецизно на следећа питaња из језика C++:
а) Навести сличности и разлике референци (упућивача) и показивача.
б) Да ли се препоручује да атрибути класе буду јавни и зашто?
в) Да ли класа може имати више конструктора и више деструктора и зашто?
г) Колико пута се позива конструктор основне класе код виртуелног извођења у "дијамант структури"?
д) Да ли шаблонска класа може бити апстрактна и да ли функција може бити аргумент шаблона?
Поставка задатка 2 (укупно 70 поена)
(⇒ почетак)
Написати на језику C++ следеће класе (класе опремити оним конструкторима, деструктором и оператором за доделу вредности, који су потребни за безбедно коришћење класа; грешке пријављивати изузецима типа једноставних класа које су опремљене писањем текста поруке):
- (35 поена) Позиција у једнодимензионалном (линијском) простору се дефинише реалним бројем x који означава растојање од координатног почетка. Може да се дохвати вредност x и одреди растојање од друге позиције. Позиција може да се упише у излазни ток (
it<<pozicija
) у облику (
x)
.
- Апстрактна честица поседује јединствен аутоматски генерисан идентификациони број. Задаје се позицијом у линијском простору. Може да се дохвати једнословна ознака врсте честице и позиција честице. Честици могу да се одреде маса и наелектрисање као и да се израчуна сила привлачења са задатом честицом (негативна вредност означава одбијање). Честица може да се упише у излазни ток (
it<<cestica
) у облику врста:
ид[
маса,
наелектрисање,
позиција]
.
- Е-честица има задато наелектрисање, док је њена маса 0. Сила привлачења се израчунава по Кулоновом закону: FE = −kc⋅q1⋅q2/r2, kc ≈ 8,99⋅109. Једнословна ознака врсте је '
Е
'.
- М-честица има задату масу, док је њено наелектрисање 0. Сила привлачења се израчунава по закону гравитације: FG = γ⋅m1⋅m2/r2, γ ≈ 6,67⋅10−11. Једнословна ознака врсте је '
M
'.
- О-честица има задату масу и наелектрисање. Сила привлачења је збир сила по Кулоновом закону и закону гравитације. Једнословна ознака врсте је '
О
'.
- (15 поена) Генеричка листа може да садржи произвољан број елемената одређеног типа. Може да се дохвати број елемената листе, да се дода елемент на крај листе (
lista+=elem
), да се дохвати елемент са задатим редним бројем од почетка листе (lista[ind]
) и да се садржај листе упише у излазни ток (it<<lista
) почев од првог елемента у облику елемент|…|
елемент. Грешка је ако не постоји елемент који одговара задатом индексу приликом дохватања.
- (15 поена) Експериментална соба садржи листу честица и задату експерименталну честицу. Након стварања, честице се додају једна по једна. Грешка је ако се покуша додавање честице на истој позицији као и експериментална честица. У излазни ток се уписује експериментална честица и садржај листе у облику експ_честица
{
листа}
. Резултат експеримента је интензитет силе којом додате честице делују на експерименталну (позитивна вредност означава силу у правцу x осе). Интензитет силе се израчунава као збир интензитета сила којом делују честице из листе.
(5 поена) Написати на језику C++ програм који направи једну експерименталну собу у коју дода неколико честица а затим испише резултат експеримента на главном излазу. Користити константне параметре (не треба ништа учитавати).
- Испит траје 180 минута.
- Рад се предаје искључиво у вежбанци за испите. Није дозвољено имати поред себе друге листове папира.
- Водити рачуна о уредности. Решења задатака навести по горњем редоследу. Препоручује се рад обичном графитном оловком.
(⇒ почетак)
←
↑
⇑
↓
→
Аутор: Ласло Краус
Е-пошта: kraus@etf.rs
Copyright © 2010, Laslo Kraus
Последња ревизија: 30.8.2010.