Ласло Краус |
ПЈМП Интегрални испит 10. 10. 2003. |
---|
У једној 2D игри учествују играч, препреке, храна и непријатељи. Играч се храни и бежи од непријатеља. Пројектовати на језику C++ следећи систем класа за реализацију дате игре.
Саставити на језику C++ главни програм који демонстрира игру тако што креира сцену, играча, неколико непријатеља, препрека и хране. При креирању свим објектима задаје неки положај, а покретним објектима и почетну енергију и закон кретања. Све објекте смешта у сцену, а затим их периодично активира. Игра се завршава када играч остане без енергије или сви непријатељи остану без енергије.
Реализовати на језику C++ генератор псеудослучајних бројева нормалне (гаусове) расподеле са задатим параметрима средњом вредношћу и стандардном девијацијом.
Пројектовати на језику Java пакет класа који садржи све класе из задатка 1.1. Уместо операторских функција правити обичне методе. Уместо операција за исписивање правити методе за претварање у тип String
. Саставити на језику Java класу са главним програмом као у задатку 1.1. На располагању стоји класа Citaj
у безименом пакету која садржи заједничке методе за читање свих стандардних типова података.
Концизно одговорити на следећа питања:
а) Да ли се у програму могу појавити проблеми "висећих показивача" и "цурења меморије" и зашто?
б) Које акције и којим редоследом се извршавају при конструкцији неког објекта изведене класе?
в) Када има смисла да се за неки интерфејс ослушкивача дефинише адаптер?
Саставити потпрограм на симболичком машинском језику за IBM-PC, који може да се позива из програма писаног на језику C, за пермутацију битова 16-битног податка на основу пермутационог низа p
чији су елементи величине 8 битова. Вредност p[i]
означава редни број бита у почетном податку који треба сместити на позицију i
у резултату (i
=0, 1, ..., 15 -- битови се нумеришу здесна улево). Користити велики меморијски модел (далеки позиви и далеки показивачи).
Саставити на језику C++ главни програм који прочита један пермутациони низ и после чита чита појединачне целе бројеве, позива горњи потпрограм и исписује добијене резултате све док не прочита вредност 9999.
Copyright © 2004, Laslo Kraus
Последња ревизија: 23.2.2004.