36979

Дослідження процесу розробки класів програмними засобами для різних задач

Лабораторная работа

Информатика, кибернетика и программирование

Розробіть класи для задачі про філософів що обідають. Розробіть класи для підписки на журнали. Розробіть класи для редактора графічних документів що підтримують групування обєктів.

Украинкский

2013-09-23

14.3 KB

1 чел.

Лабораторна робота №4

Дослідження процесу розробки класів програмними засобами для різних задач

Мета роботи: навчитися створювати класи програмними засобами С++ або С# для різних задач

Завдання:

  1.  Розробіть класи для комп’ютерної системи верстки газет. Система призначена для роботи з газетними сторінками, на яких можуть розміщуватися колонки тексту. Користувач може змінювати ширину та довжину колонки, переміщувати її по сторінці або переносити з однієї сторінки на іншу. Колонка може розміщуватися одночасно на декількох сторінках. Якщо користувач змінює текст на одній сторінці, зміни повинні з’являтися автоматично і на інших сторінках.
  2.  Розробіть класи для задачі про філософів, що обідають. П’ять філософів сидять за круглим столом, на якому лежать п’ять вилок. Кожен філософ може дотягнутися до двох вилок (по одній з кожного боку). Кожна вилка може бути взята одним з двох філософів. Вилка може лежати або на столі, або знаходитися у руці філософа. Філософ може взяти тільки дві вилки.
  3.  Розробіть класи для підписки на журнали. Одна людина може бути підписана на декілька журналів. На один журнал може бути підписано декілька чоловік. Для кожної підписки необхідно відслідковувати дату та розмір кожного платежу, а також поточний строк закінчення підписки.
  4.  Розробіть класи для редактора графічних документів, що підтримують групування об’єктів. Нехай, документ складається з декількох листів. На кожному листі можуть розміщуватися об’єкти малюнка, включаючи текст, геометричні об’єкти та групи. Групи – це множина об’єктів малюнка, у яку можуть входити інші групи. Група повинна містити щонайменше два об’єкти. Обєкт може бути безпосереднім членом тільки однієї групи. До геометричних об’єктів відносяться кола, еліпси, прямокутники, відрізки та квадрати.
  5.  Розробіть класи для системи продажу товарів у Інтернет-магазині. Клієнти магазину мають доступ до каталогу товарів, підтримку якого здійснює Інтернет-магазин. У каталозі усі товари розподілені по розділам. Менеджер магазину може додавати товари до каталогу та видаляти їх. Про кожен товар доступна наступна інформація: назва, кількість, ціна, дата випуску. При відборі клієнтами товарів підтримується віртуальний кошик. Будь-який товар може бути доданий або вилучений із кошика. Після закінчення вибору товарів здійснюється оформлення замовлення та реєстрація користувача. При оформленні замовлення вказується: номер, вартість, дата, форма оплати. При реєстрації клієнт вказує ім'я, прізвище, адресу доставки.

 

А также другие работы, которые могут Вас заинтересовать

22937. СТРУКТУРИ 74 KB
  struct імя_типу { cписок_полів} список_змінних ; struct date { int day; int month; int year; char mon_name[4]; } d d1; змінніструктури dd1 типу date typedef struct { double real; double imag; } complex;...
22938. Синтаксичний аналіз виразів 31 KB
  Мова в певному алфавіті основному символів це слова записані за певними синтаксичними правилами. Синтаксичні правила подаються формулами БекусаНаура БНФ вигляду : ::= де позначає синтаксичне поняття а послідовність символів розширеного алфавіту. Вираз [] означає що послідовність символів входить або не входить в конструкцію. Синтаксичний аналізатор це програма що для заданої послідовності символів основного алфавіту розпізнає чи побудована вона у відповідності з синтаксичними правилами для даного поняття.
22939. ВВЕДЕННЯ / ВИВЕДЕННЯ 48 KB
  Перед тим як розпочати роботу з потоком його необхідно відкрити за допомогою функції FILE fopenchar filename char mode. Функція формує потік з даним файлом і повертає результат у вигляді покажчика на обєкт типу FILE який містить всю інформацію необхідну для роботи з потоком адресу та розмір буфера індексзсув поточної позиції в буфері режим оборобки інформації і т. FILE fp; fp=fopen€œfile1.txt€ €œa€; відкриття файлу file1.
22940. Адресация в IP-сетях 120 KB
  В терминологии TCP/IP под локальным адресом понимается такой тип адреса, который используется средствами базовой технологии для доставки данных в пределах подсети, являющейся элементом составной интерсети. В разных подсетях допустимы разные сетевые технологии, разные стеки протоколов
22941. Конструктивні обєкти. Індуктивні визначення. Рекурсивні функціїї 854 KB
  Рекурсивні функціїї. При такому підході конструктивність того чи іншого обєкту у тому числі і функції вже не є абсолютною субстанцією а тільки відносною і залежить від вибору системи подання. Загальне індуктивне визначення унарної функції ІВФ спирається на ІВ множини і має вигляд: БФ База індукції. Для кожного конструктора елементів з існує конструктор значень функції такий що для будьяких .
22942. ПРЕПРОЦЕСОРНІ ЗАСОБИ 34.5 KB
  імя_директиви лексемиоперанди { лексемиоперанди } Макропідстановки: define ідентифікатор послідовність_символів Сем. define begin { define end } main begin if begin end else return 0; end На виході препроцесора цей фрагмент матиме вигляд: main { if { }else return 0; } Допускаються ланцюжки макропідстановок. ...
22943. ФУНКЦІЇ ЯК ТИП ДАНИХ 49 KB
  Кожен з таких покажчиків має тип який відповідає типам параметрів та типу значення функції. З ними можна працювати як зі звичайними даними: присвоювати організовувати у вигляді масивів передавати у якості параметрів повертати як значення функції і т. ПОКАЖЧИКИ ФУНКЦІЙ ПОВИННІ БУТИ ЯВНО ОПИСАНІ В ПРОГРАМІ Імя та тип покажчика функції задаються її прототипом або описом.
22944. Загальна структура Сі-програми 217.5 KB
  oператор ::= безлейбовий_ оператор лейба : безлейбовий_ оператор безлейбовий_ оператор ::= базовий оператор структурований опeрaтор лейба ::= ідентифікатор базовий_оператор ::= порожній_oператор oперато_переходу присвоєння виклик_функції oператор_вираз порожній_oператор ::= ; Сем. вихід_ з_функції ::= return[ значення_функції ] ; значення_функції ::= вираз Сем. присвоєння ::= Lvalue_вираз [ операція ]= вираз ; вираз ::= терм Lvalue_вираз ::= ідентифікатор індексація_покажчика розіменування_покажчика ...