Розрахунково-графічна робота



Скачати 176.7 Kb.
Дата конвертації15.08.2018
Розмір176.7 Kb.
ТипМетодичні рекомендації


Міністерство освіти і науки україни

Національний технічний університет України

«Київський політехнічний інститут»

Факультет електроніки
Кафедра промислової електроніки


О. О. Абакумова
МЕТОДИЧНІ РЕКОМЕНДАЦІЇ

ДО ВИКОНАННЯ ІНДИВІДУАЛЬНОГО СЕМЕСТРОВОГО ЗАВДАННЯ

З КРЕДИТНОГО МОДУЛЯ «ПРОГРАМУВАННЯ»

Київ 2017



Гриф надано Вченою радою факультету електроніки НТУУ «КПІ»

(Протокол № 01/15 від 26 січня 2015 р.)

Рецензент: І. В. Кандрачук, канд. техн. наук,

Національний технічний університет України

«Київський політехнічний інститут»

Відповідальний

редактор: Т. А. Хижняк, канд. техн. наук, доц.,

Національний технічний університет України

«Київський політехнічний інститут»



Абакумова О. О.

Методичні рекомендації до виконання індивідуального семестрового завдання з кредитного модуля «Програмування» / О. О. Абакумова. – К.: НТУУ «КПІ», 2017. – 17 с.



Методичні рекомендації містять роз’яснення щодо виконання індивідуального семестрового завдання у вигляді розрахунково-графічної роботи з дисципліни «Програмування». Наведено загальні вимоги щодо оформлення та структури роботи, необхідні теоретичні відомості, зразок виконання та оформлення завдання, критерії оцінювання та список рекомендованої літератури. Запропоновано індивідуальні завдання для групи з 20 студентів.

Для студентів напряму підготовки: 6.050802 «Електронні пристрої та системи» всіх форм навчання.

© О. О. Абакумова, 2017



ЗМІСТ
Зміст………………………………………………………………………………..3

Вступ……………………………………………………………………..….….….4

Загальні положення.……………………………………………………….…...…5

Вимоги до оформлення та структури роботи……………………….……....…..5

Індивідуальні завдання ………………………….…………………………….…6

Теоретичні відомості……………………………………………………………..8

Зразок виконання завдань…………………………………………………..…...13

Критерії оцінювання………………………………………………………….....15

Рекомендована література………………………………………………………15
ВСТУП
Індивідуальне семестрове завдання – форма організації навчання, яка має на меті поглиблення, узагальнення та закріплення теоретичних знань, що їх студенти отримують у процесі навчання, а також розвиток самостійного мислення та творчих здібностей студентів, підвищення їх пізнавальної активності, виховання наукового світогляду.

Основними видами індивідуальних семестрових завдань студентів є: реферат, розрахунково-графічна робота, домашня контрольна робота, курсова робота, курсовий проект, дипломна робот, магістерська дисертація.

Індивідуальне семестрове завдання є видом поза аудиторної самостійної роботи студента навчального чи навчально-дослідного характеру. Це завершена робота в межах навчальної програми дисципліни, яка виконується на основі знань, отриманих під час лекцій, семінарських, практичних та лабораторних занять, охоплює декілька тем або зміст навчальної дисципліни в цілому і завершується підготовкою відповідного письмового звіту.

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

Індивідуальні семестрові завдання виконуються студентами самостійно із забезпеченням необхідних консультацій з окремих питань з боку викладача. Як правило, індивідуальні завдання виконуються окремо кожним студентом. У тих випадках, коли завдання мають комплексний характер, до їх виконання можуть залучатися декілька студентів.

Наявність позитивної оцінки, отриманої студентом за індивідуальне завдання, є необхідною умовою допуску до семестрового контролю з дисципліни.

Ці методичні рекомендації призначені для якісної організації поза аудиторної індивідуальної роботи студента навчального та навчально-дослідного характеру.

ЗАГАЛЬНІ ПОЛОЖЕННЯ
Розрахунково-графічна робота (РГР) – індивідуальне завдання, яке передбачає вирішення конкретної практичної навчальної задачі з використанням відомого, а також (або) самостійно вивченого теоретичного матеріалу. Значну частину такої роботи складає графічний матеріал, який виконується відповідно до чинних нормативних вимог та з обов’язковим застосуванням комп’ютерної графіки, якщо це визначено завданням.

Виконання розрахунково-графічної роботи сприяє поглибленому вивченню студентом теоретичного матеріалу, систематизації отриманих теоретичних знань, формуванню вмінь використання теоретичних положень дисципліни для розв’язання конкретних практичних завдань.


ВИМОГИ ДО ОФОРМЛЕННЯ ТА СТРУКТУРИ РОБОТИ


  1. Загальні вимоги

Мова виконання роботи: українська.

  1. Оформлення роботи

Текст повинен бути набраний у текстовому редакторі Microsoft Word в одну колонку, вирівняний за шириною та не містити переносів.

Шрифт: Times New Roman, кегль 14.

Інтервал: полуторний.

Формат сторінки: А4 (210х297 мм).



  1. Структура роботи

Розрахунково-графічна робота має складатися з наступних структурних елементів:

  • титульна сторінка;

  • індивідуальне завдання;

  • графічна частина;

  • розрахункова частина;

  • сторінка скріншотів.

ІНДИВІДУАЛЬНІ ЗАВДАННЯ
Завдання:

1. Розробити блок-схему алгоритму роботи програми.

2. Написати програму, використавши структуру даних у відповідності з варіантом. У програмі передбачити всі необхідні функції для роботи зі структурою:

- функцію, яка розміщує структуру в пам'яті і повертає вказівник на неї;

- функцію, що видаляє структуру з пам'яті;

- функцію, що виконує запит (приклад запиту для кожного варіанта наведено в таблиці). Зберегти отриманий список у файлі.



Індивідуальні завдання:

Варіант

Структура

Поля структури

Приклад запиту

1

СТУДЕНТ

ім'я - char *

Імена студентів зазначеного курсу

курс - int

вік - bool

2

СЛУЖБОВЕЦЬ

ім'я - char *

Кількість службовців зі стажем не менше заданого

професія - char *

робочий стаж - int

3.

АВТОМОБІЛЬ

марка - char *

Марки автомобілів потужністю не більше заданої

потужність - int

вартість - float

4

КАДРИ

ім'я - char *

Імена робочих заданого розряду

номер цеху - int

розряд - int

5

ЦЕХ

ім'я - char *

Найменування продукції, кількість якої не менше заданого

начальник - char *

к-ть робітників - int



6

ВИРІБ

найменування - char *

Найменування виробів, кількість яких не більше заданого

шифр - char *




кількість - int




7

БІБЛІОТЕКА

ім'я - char *

Кількість книг зазначеного автора

автор - char *

вартість - float

8

ІСПИТ

ім'я студента - char *

Імена студентів, які здавали іспит в заданий день

дата - int

оцінка - int

9

АДРЕСА

ім'я - char *

Імена що живуть на парній стороні заданої вулиці

вулиця - char *

номер будинку - int

10

ТОВАР

ім'я - char *

Найменування товару, вартістю не вище заданої

кількість - int

вартість - float

11

КВИТАНЦІЯ

номер - int

Загальна сума всіх квитанцій вказаної дати

дата - int

сума - float

12

КРАЇНА

назва - char *

Назва країн, площею не менше заданої

грошова одиниця - char *

площа - float

13

ПОЇЗД

номер - char *

Номери всіх поїздів зазначеного типу

тип - char *

к-ть вагонів - int

14

ГРА

найменування - char *

Найменування гри зазначеного типу і з вартістю не вище заданої

тип - char *

вартість - float



15

ПЛАНЕТА

ім'я - char *

Ім'я планет з відстанню від Землі не більше заданої

розмір - float




відстань від Землі - float




16

ТВАРИНА

ім'я - char * 

Імена всіх тварин заданого класу

клас - char * 

середня вага - float

17

ФОТОАПАРАТ

модель - char *

Моделі фотоапаратів з розміром матриці не менше заданої

виробник - char *

розмір матриці - int

18

КОРАБЕЛЬ

ім'я - char *

Середнє водотоннажність кораблів заданого типу

тип - char *

водотоннажність - int

19

РІЧКА

ім'я - char *

Середню довжину річки на зазначеному континенті

континент - char *

довжина - float

20

СТРАВА

назва - char *

Загальну вартість замовлення

тип - char *

вартість - float


ТЕОРЕТИЧНІ ВІДОМОСТІ

Структура – це складений тип даних, побудований з використанням даних інших типів. Структура є об’єднанням декількох змінних. Ці змінні можуть мати різні типи: int, char, float тощо. Саме різнорідністю типів змінних структури відрізняються від масивів, в яких всі змінні повинні мати однаковий тип. Змінні, що входять до складу структури, називають полями структури.

Визначення структури


Структура створюється за допомогою ключового слова struct.

Загальний формат оголошення структури має наступний вигляд:



struct ім’я_структури

{

// поля структури

};

Оголошення полів структури укладають у фігурні дужки. Визначення структури закінчується крапкою з комою (;).

Наприклад,

struct student

{

char fio[30]; //прізвище, ім’я, по-батькові

int data; // рік народження

int rik; // рік вступу

char grupa[10]; // група

int kurs; // курс

};

Визначення структури не створює ніяких змінних. Воно задає внутрішню організацію структурних змінних. Структуру можна вважати новим типом даних. Тож, визначення структури необхідно для того, щоб на його основі створювати змінні складеного типу.



Визначення структурних змінних

Визначення структурної змінної за своїм синтаксисом ідентичне визначенню змінної стандартного типу. Адже ми можемо вважати структуру новим типом даних.

Наприклад,

student st1, st2; //визначення змінних st1 і st2 типу student

Інший спосіб визначення структурних змінних

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



struct

{

char fio[30];

int data;

int rik;

char grupa[10];

int kurs;

} st1, st2;

Доступ до полів структури

Коли структурна змінна визначена, доступ до її полів можливий за допомогою операції крапка (.). Операцію крапка називають операцією доступу до поля структури.

Поле структури ідентифікується за допомогою трьох складових: імені структурної змінної, операції крапки (.) та імені поля.

Наприклад,



st1.rik = 2006; // полю rik змінної st1 присвоюється значення 2006

st2.fio = “Ivanov”; // полю fio змінної st2 присвоюється значення Ivanov

Зверніть увагу! На першому місці у виразі стоїть не ім’я структури, а ім’я структурної змінної.

З полями структурної змінної можна поводитися так само, як із звичайними простими змінними.

Наприклад,

виведення значення поля на екран відбувається за допомогою оператора cout:

cout << “Rik= “ << st1.rik;

присвоювання – за допомогою оператора присвоювання (=):



st2.rik = st1.rik;

Також можливо присвоювати значення однієї структурної змінної інший структурній змінній:



st2 = st1;

В даному випадку значення кожного поля змінної st1 буде присвоєне відповідному полю змінної st2.

Зверніть увагу! Операція присвоювання може бути виконана лише над змінними, що мають один і той самий тип.

Структура – це складений тип даних, побудований з використанням даних інших типів. Структура є об’єднанням декількох змінних. Ці змінні можуть мати різні типи: int, char, float тощо. Саме різнорідністю типів змінних структури відрізняються від масивів, в яких всі змінні повинні мати однаковий тип. Змінні, що входять до складу структури, називають полями структури.

Визначення структури


Структура створюється за допомогою ключового слова struct.

Загальний формат оголошення структури має наступний вигляд:



struct ім’я_структури

{

// поля структури

};

Оголошення полів структури укладають у фігурні дужки. Визначення структури закінчується крапкою з комою (;).

Наприклад,

struct student

{

char fio[30]; //прізвище, ім’я, по-батькові

int data; // рік народження

int rik; // рік вступу

char grupa[10]; // група

int kurs; // курс

};

Визначення структури не створює ніяких змінних. Воно задає внутрішню організацію структурних змінних. Структуру можна вважати новим типом даних. Тож, визначення структури необхідно для того, щоб на його основі створювати змінні складеного типу.



Визначення структурних змінних

Визначення структурної змінної за своїм синтаксисом ідентичне визначенню змінної стандартного типу. Адже ми можемо вважати структуру новим типом даних.

Наприклад,

student st1, st2; //визначення змінних st1 і st2 типу student

Інший спосіб визначення структурних змінних

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



struct

{

char fio[30];

int data;

int rik;

char grupa[10];

int kurs;

} st1, st2;

Доступ до полів структури

Коли структурна змінна визначена, доступ до її полів можливий за допомогою операції крапка (.). Операцію крапка називають операцією доступу до поля структури.

Поле структури ідентифікується за допомогою трьох складових: імені структурної змінної, операції крапки (.) та імені поля.

Наприклад,



st1.rik = 2006; // полю rik змінної st1 присвоюється значення 2006

st2.fio = “Ivanov”; // полю fio змінної st2 присвоюється значення Ivanov

Зверніть увагу! На першому місці у виразі стоїть не ім’я структури, а ім’я структурної змінної.

З полями структурної змінної можна поводитися так само, як із звичайними простими змінними.

Наприклад,

виведення значення поля на екран відбувається за допомогою оператора cout:

cout << “Rik= “ << st1.rik;

присвоювання – за допомогою оператора присвоювання (=):



st2.rik = st1.rik;

Також можливо присвоювати значення однієї структурної змінної інший структурній змінній:



st2 = st1;

В даному випадку значення кожного поля змінної st1 буде присвоєне відповідному полю змінної st2.

Зверніть увагу! Операція присвоювання може бути виконана лише над змінними, що мають один і той самий тип.
ЗРАЗОК ВИКОНАННЯ ЗАВДАНЬ

Завдання: У сервісному центрі зберігаються квитанції про здану у ремонт апаратуру. В кожній квитанції вказано: торгівельну марку приладу, дату прийому замовлення, стан готовності замовлення (виконано - не виконано). Необхідно вивести інформацію про виконання замовлень на поточну дату.


#include

#include

#include

using namespace std;

struct

{

char marka[20];

int day;

int month;

char stan[5];

}remont[6]={{"LG",13,4,"no"},{"Sony",2,5,"no"},

{"Sharp",10,1,"yes"},{"LG",15,3,"yes"},

{"Samsung",19,2,"yes"},{"Sony",12,1,"no"}};

void main()

{

int i;

cout << "Database:\n";

for (i=0;i<6;i++)

cout << setw(12) << remont[i].marka

<< setw(5) << remont[i].day

<< "/" << remont[i].month

<< setw(6) << remont[i].stan << endl;

int d, m;

cout << "\nEnter date";

cout << "\nEnter day: ";

cin >> d;

cout << "Enter month: ";

cin >> m;

cout << "\nNew base:\n";

for (i=0;i<6;i++)

if (remont[i].month < m || (remont[i].month == m && remont[i].day <= d))

cout << setw(12) << remont[i].marka

<< setw(5) << remont[i].day

<< "/" << remont[i].month

<< setw(6) << remont[i].stan << endl;

getch();

}


КРИТЕРІЇ ОЦІНЮВАННЯ
Оцінювання розрахунково-графічної роботи відбуватиметься на основі аналізу наступних факторів:

  • правильність виконання розрахункової частини роботи;

  • правильність виконання графічної частини роботи;

  • оформлення роботи.

«Відмінно», повне правильне виконання роботи, відповідність зазначеним критеріям – 14 балів;

«Добре», повне виконання роботи з певними незначними недоліками – 11 13 балів;

«Задовільно», повне виконання роботи із значною невідповідністю зазначеним критеріям – 8-10 балів;

«Незадовільно», неповне та/чи неправильне виконання роботи, невідповідність зазначеним критеріям – 1-7 балів.



«Роботу не зараховано», – 0 балів.
РЕКОМЕНДОВАНА ЛІТЕРАТУРА
Архангельский А.Я. C++Builder 6. Справочное пособие. Книга 1. Язык C++. – М.: Бином-Пресс, 2002. – 544 с.: ил. – 4 000 экз. – ISBN 5-9518-0007-2.

Вирт Н. Алгоритмы и структуры данных. – СПб.: Невский Диалект, 2001. – 351 с.

Дэвис С. С++ для чайников, 5-е издание.: Пер. с англ. – М.: Издательство «Диалектика», 2007. – 384 с.: ил. – ISBN 5-8459-0723-3.

Дейтел Х., Дейтел П. Как программировать на С++. Пер. с англ. – М.: ЗАО «Издательство БИНОМ», 2000. – 1008 с.

Культин Н.Б. С/С++ в задачах и примерах. – СПб.: БХВ-Петербург. 2005. – 288 с.: ил. – 5 000 экз. – ISBN 5-94157-029-5.

Лафоре Р. Объектно-ориентированное программирование в С++. Классика Computer Science. 4-е изд. – СПб.: Питер, 2008. – 928 с. – 10 000 экз. – ISBN 978-5-94723-302-5.

Либерти Д. Освой самостоятельно C++. 10 минут на урок. Пер. с англ. – М.: Издательский дом «Вильямс», 2005. – 352 с.: ил. – ISBN 5-8459-0621-0, 0-672-32425-3.

Либерти Д., Хорват Д. Освой самостоятельно C++ за 24 часа. Пер. с англ. – М.: Издательский дом «Вильямс», 2007. – 448 с.: ил. – ISBN 978-5-8459-0949-7, 0-672-32681-7.

Либерти Д., Джонс Б. Освой самостоятельно С++ за 21 день: 5-е издание. – М.: Издательский дом «Вильямс», 2011. – 784 с.: ил. ISBN 978-5-8459-0926-8, 0-672-32711-2.

Прата С. Язык программирования С++. Лекции и упражнения. Учебник: Пер. с англ./ стивен прата – СПб.: ООО «ДиаСофтЮП», 2005. – 1104 с. – ISBN 5-93772-123-3.

Прата С. Язык программирования С++. Лекции и упражнения: 6-е издание. Пер. с англ. – М.: Издательский дом «Вильямс», 2013. – 1248 с.: ил. – ISBN 978-5-8459-1778-2, 978-0-3217-7640-2.

Рейсдорф К., Хендерсон К. Borland C++Builder. Освой самостоятельно – М.: «Издательство БИНОМ», 1998. – 704 с.: ил. – 6 000 экз. – ISBN 5-7989-0099-1.

Сиддхартха Рао Освой самостоятельно C++ за 21 день, 7-е издание. Пер. с англ. – М.: Издательский дом «Вильямс», 2013. – 688 с.: ил. – ISBN 978-5-8459-1825-3, 978-0-6723-3567-9.

Шилдт Г. С++: руководство для начинающих, 2-е издание.: Пер. с англ. – М.: Издательский дом «Вильямс», 2005. – 672 с.: ил. – Парал. тит. англ. – 3 000 экз. – ISBN 5-8459-0840-Х.

Шилдт Г. C++: методики программирования Шилдта. Пер. с англ. – М.: Издательский дом «Вильямс», 2008. – 480 с.: ил. – ISBN 978-5-8459-1494-1, 978-0-0714-8860-0.

Шилдт Г. С++: базовый курс, третье издание.: Пер. с англ. – М.: Издательский дом «Вильямс», 2013. – 624 с.: ил. – ISBN 5-8459-0768-3, 0-0722-2897-0.

Шилдт Г. Полный справочник по С++, 4-е издание.: Пер. с англ. – М.: Издательский дом «Вильямс», 2013. – 800 с.: ил. – ISBN 5-8459-0489-7, 0-0722-2680-3.

Шмидский Я.К. Программирование на языке С++. Самоучитель. – М. Издательство «Диалектика», 2003. – 368 с.: ил. – ISBN 5-8459-0535-4.

Эккель Б. Философия С++. Введение в стандартный С++. 2-е изд. – СПб.: Питер, 2004. – 572 с.: ил. – 3 500 экз. – ISBN 5-94723-763-6.



Поділіться з Вашими друзьями:


База даних захищена авторським правом ©wishenko.org 2017
звернутися до адміністрації

    Головна сторінка