Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод-вказ-до-курсових-робіт.doc
Скачиваний:
7
Добавлен:
03.12.2018
Размер:
1.05 Mб
Скачать

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

Один автор

  1. Шпак, З.Я. Програмування мовою С [Текст] / З.Я. Шпак - Львів: Оріяна-Нова, 2006. - 412 с.

  2. Шилдт, Г. Полный справочник по С [Текст] / Г. Шилдт – М. : Издательский дом “Вильямс”, 2002. - 704 с.

Два або три автори

  1. Керниган, Б. Язык программирования Си. [Текст] / Б.. Керниган, Д. Ритчи – М. - СПб. – Киев: Издательскмй дом «Вильямс», 2009. – 289 с.

  2. Дейтел, Х.М Как программировать на С. [Текст] / Х.М. Дейтел, П.Дж. Дейтел.. – М. : БИНОМ-ПРЕСС, 2009. – 912 с.

  3. Бабак, В.П. Обробка сигналів [Текст] / В.П. Бабак, В.С. Хандецький, Е.Шрюфер. – К. : Либідь, 1996. – 392 с. – ISBN 5-325-00631-2.

Чотири автори

  1. Основы создания гибких автоматизированных производств [Текст] / Л.А. Пономаренко, Л.В. Адамович, В.Т. Музычук, А.Е. Гридасов / Под ред. Б.Б. Тимофеева. – К. : Техніка, 1986. – 144 с.

П’ять і більше авторів

  1. Психология менеджмента [Текст] / П.К. Власов, А.В. Лепницкий, И.М. Лущихина и др. – Х. : Гуманит. центр, 2007. – 510 с.

Без автора

  1. Українці у світовій цивілізації [Текст] : довідник / Упоряд. Т.В. Копань. – К. : Пульсари, 2006.

Стандарти

  1. Документація. Звіти у сфері науки і техніки. Структура і правила оформлення[Текст] : ДСТУ 3008: 1995. – [Чинний від 1996 — 01— 01]. – К. : Держспоживстандарт України, 1995. – 36 с. – (Національний стандарт України).

  2. Бібліографічний запис. Бібліографічний опис. Загальні вимоги та правила складання [Текст] : ДСТУ ГОСТ 7.1:2006. - Вид. офіц. - Вперше (зі скасуванням ГОСТ 7.1-84, ГОСТ 7.16-79, ГОСТ 7.18-79, ГОСТ 7.34-81, ГОСТ 7.40-82) ; введ. 2007-07-01. - К. : Держспоживстандарт України, 2007. - III, 47 с. - (Система стандартів з інформації, бібліотечної та видавничої справи).

Статті в журналах на наукових збірках

  1. Алпатов, А. П. Интеллектуальные управляющие информационные системы [Текст] / А. П. Алпатов, Ю. А. Прокопчук., В. В. Костра., И. А. Пилипченко // Автоматика – 2000: межд. конф. по автоматическому управлению : сб. трудов. – Львов : ГосНИИ информационной инфраструктуры, 2000. – Т.6. – С. 20 ‑ 24.

  2. Алпатов, А. П. Информационные системы в образовании [Текст] : проект Е–школа / А. П. Алпатов, Ю. А. Прокопчук, В. В. Костра, С. В. Хорошилов // Информационные технологии в XXI веке : III–ий молодежный форум, апрель, 2005 г., Днепропетровск : сб. докладов и тезисов. – Днепропетровск: УГХТУ, 2005. – С. 14 – 17.

Електронні ресурси

  1. Золотарьова, Т. В. Алгоритмізація процесу телемедичної консультації [Електронний ресурс] / Т. В. Золотарьова, Н. А. Вертило // Український журнал телемедицини та медичної телематики. – 2004. – Т. 2, № 2. – С. 166. – Режим доступу до журн. http://www.telemed.org.ua.

Додаток З

Приклад виконання завдання з обробки символьних рядків з.1 Розробка функцій з обробки символьних рядків

З.1.1 Умова завдання

Скласти функцію substr(s1, s2, n, l) для обробки символьних строк та програму для перевірки роботоспроможності функції. Призначення функції: виділення з рядку s1 підрядку s2, починаючи з позиції n, довжиною l.

З.1.2 Опис методу рішення

Символьний рядок у мові Cі представляється в пам'яті як масив символів, останнім елементом якого є символ ‘\0’ (байт із кодом 0) - ознака кінця рядку[8]. Рядок, як і будь-який інший масив можна обробляти або традиційним методом - з використанням операції індексації, або через вказівники, з використанням операцій адресної арифметики. Довжина рядку заздалегідь невідома, тому цикли повинні бути організовані не з лічильником, а до появи ознаки кінця рядку.

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

Визначимо склад параметрів функції:

int substr (src, dest, num, len);

де

    • src — рядок, з якого вибираються символи;

    • dest — рядок, у який записуються символи;

    • num — номер першого символу в рядку src, з якого починається підрядок (нумерація символів ведеться з 0);

    • len — довжина вихідного рядку.

Встановимо такі можливі значення, що буде повертати функція: 1 (завдання параметрів правильне) і 0 (завдання неправильне). Ці значення при звертаннях до функції можна буде інтерпретувати як «істина» або «неправда» ("вірно" або "невірно").

Позначимо через Lsrc довжину рядку src. Тоді можливі такі варіанти при завданні параметрів:

    • num+len <= Lsrc — повністю правильне завдання ( випадок 1 );

    • num+len > Lsrc; num < Lsrc — правильне завдання, але довжина вихідного рядку буде менша, ніж len ( випадок 2 );

    • num >= Lsrc — неправильне завдання, вихідний рядок буде порожнім ( випадок 3 );

    • num < 0 або len <= 0 — неправильне завдання, вихідний рядок буде порожнім ( випадок 4 ).

Функція повинна точно інтерпретувати задані параметри як правильні/неправильні та здійснювати вибір реакції на неправильне завдання параметрів. Можливий також випадок, коли вихідний рядок вийде більшої довжини, чим для нього відведено місця в пам'яті. Однак, оскільки функції невідомий розмір пам'яті, відведений для рядку dest, функція не може розпізнати і обробити цей випадок - так само поводяться і бібліотечні функції мови C [9].

З.1.3 Опис логічної структури

Програма складається з одного програмного модуля — файл LAB1.C. До складу модуля входять три функції — main, substr_mas і substr_ptr. Загальних змінних у програмі немає. Макроконстантою N визначена максимальна довжина рядку — 80.

Опис алгоритму функції main()

Функція main є головною функцією програми, вона призначена для введення початкових даних, виклику інших функцій і виводу результатів. У функції визначені такі змінні:

    • ss і dd — вхідний і вихідний рядки відповідно;

    • n — номер символу, з якого повинен починатися вихідний рядок;

    • l - довжина вихідного рядка.

Функція запитує і вводить значення вхідного рядку ss, номери символу n та довжини l. Далі функція викликає функцію substr_mas, передаючи їй як параметри уведені значення. Якщо функція substr_mas повертає 1, виводяться на екран вхідний і вихідний рядки, якщо 0 — виводяться повідомлення про помилку і вхідний рядок. Потім вихідний рядок робиться порожнім і те ж саме виконується для функції substr_ptr. Блок-схема алгоритму функції main наведена у додатку К.

Опис алгоритму функції substr_mas()

Функція substr_mas виконує поставлене завдання методом масивів. Її параметри: — src і dest — вхідний і вихідний рядки відповідно, представлені у вигляді масивів ss[N] та dd[N], які функція отримує з головної програми. Внутрішні змінні i та j використовуються як індекси в масивах.

Функція перевіряє значення параметрів у відповідності з випадком 4, якщо умови цього випадку виявлені, у перший елемент масиву dest записується ознака кінця рядку і функція повертає 0.

Якщо випадок 4 не виявлений, функція переглядає num перших символів вхідного рядку. Якщо при цьому буде знайдена ознака кінця рядку, це - випадок 3, при цьому в перший елемент масиву dest записується ознака кінця рядку й функція повертає 0.

Якщо ознака кінця в перших num символах не знайдена, виконується цикл, у якому індекс вхідного масиву починає мінятися від 1, а індекс вихідного - від 0. У кожній ітерації цього циклу один елемент вхідного масиву пересилається у вихідний. Якщо пересланий елемент є ознакою кінця рядку (випадок 2), то функція негайно закінчується, повертаючи 1. Якщо в циклі не зустрінеться кінець рядку, цикл завершиться після len ітерацій. У цьому випадку в кінець вихідного рядкаузаписується ознака кінця і функція повертає 1. Схема алгоритму функції substr_mas наведена у додатку К.

Опис алгоритму функції substr_ ptr ()

Функція substr_ptr виконує поставлене завдання методом вказівників. Її параметри: — src і dest — вхідний і вихідний рядки відповідно, представлені у вигляді вказівників на початки цих рядків.

Функція перевіряє значення параметрів у відповідності з випадком 4, якщо умови цього випадку виявлені, за адресою, що задає dest, записується ознака кінця рядку і функція повертає 0, ці дії виконуються одним оператором.

Якщо випадок 4 не виявлений, функція пропускає num перших символів вхідного рядка. Це зроблено циклом while, умовою виходу з якого є зменшення лічильника num до 0 або поява ознаки кінця вхідного рядка. Важливо чітко представляти порядок операцій, які виконуються в цьому циклі:

    • вибирається лічильник num;

    • лічильник num зменшується на 1;

    • якщо обране значення лічильника було 0 - цикл завершується;

    • якщо обране значення було не 0 — вибирається символ, на який указує вказівник src;

    • вказівник src збільшується на 1;

    • якщо обране значення символу було 0, тобто ознака кінця рядка, цикл завершується, інакше - повторюється.

Після виходу із циклу перевіряється значення *src:: якщо воно не 0, це означає, що вихід із циклу відбувся за ознакою нульового значення лічильника num (випадок 3), і за адресою, що задає dest, записується ознака кінця рядку, функція повертає 0.

Якщо ознака кінця не знайдена, виконується цикл, подібний до першого циклу while, але за значенням лічильника len. У кожній ітерації цього циклу символ, на який вказує src переписується за адресою, що задається dest, після чого обидва вказівники збільшуються на 1. Цикл закінчиться, коли буде переписано len символів або зустрінеться ознака кінця рядку. У будь-якому варіанті завершення циклу по поточній адресі, що міститься у вказівнику dest, записується ознака кінця рядку і функція завершується, повертаючи 1.

Лістинги функцій substr_mas та substr_ptr наведені у додатку Л.

З.1.4 Дані для тестування

Тестування повинне забезпечити перевірку працездатності функцій для всіх варіантів вхідних даних. Вхідні дані, на яких проводилось тестування, зведені в таблицю З.1

Таблиця З.1 - Початкові дані для тестування функцій substr_mas та substr_ptr

Варіант

src

num

len

dest

1

012345

012345

012345

2

0

0

2

1

6

23

0

012345

2

012345

012345

012345

5

2

0

3

6

7

5

2345

012345

3

012345

8

2

Пусто

4

012345

012345

012345

-1

5

5

2

0

-1

пусто

пусто

пусто

Результати тестування програми у тому вигляді, в якому вони представлені на екрані після виконання програми наведені на рис. З.1 та З.2

a) Num=2 len=2 (випадок 1)

б) Num=2 len=6 (випадок 2)

Рис. З.1 Результати тестування програми з коректними значеннями початкових даних: а – випадок 1 (num=2, len=2); б – випадок 2 (num=2, len=6)

в) Num=8 len=2 (випадок 3)

г) Num=5 len=-1 (випадок 4)

Рис. З.2 Результати тестування програми з некоректними значеннями початкових даних: а – випадок 3 (num=8, len=2); б – випадок 4 (num=5, len=-1)

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

Додаток К