Телефонний довідник

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 14.01.2016
Размер файла 199,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

10

Реферат

Об'єктом дослідження є типові оператори та базові конструкції мови програмування Паскаль.

Мета роботи - отримати навички коректного використання операторів та конструкцій та побудова ефективних алгоритмів для розв'язку типових задач.

Методика (метод дослідження): комп'ютерна реалізація та комп'ютерне тестування.

Одержані висновки та їх новизна: розроблені алгоритми та складені програми для створення бази даних телефонних номерів.

Результати досліджень можуть бути застосовані при розробці алгоритмів та програм складних задач; створенні великих баз даних.

Перелік ключових слів: АЛГОРИТМ, ПРОГРАМА, БЛОК-СХЕМА, ДАНІ, ЗМІННА, МАСИВ, СТРУКТУРА, ІНСТРУКЦІЯ, ФУНКЦІЯ, ПРОЦЕДУРА.

Зміст

Вступ

1. Телефонний довідник

2. Розробка алгоритму програми

2.1 Алгоритм головної програми

2.2 Алгоритм процедури створення вхідного файлу (creation)

2.3 Алгоритм процедури виведення даних з файлу (outlet)

2.4 Алгоритм процедури пошуку (search)

3. Розробка програми

3.1 Опис програми

3.2 Тестування програми

Висновок

Список використаної літератури

Додаток А

Вступ

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

Курсова робота з дисципліни «Алгоритмізація та програмування» призначена для придбання практичних навичок розробки алгоритмів та програм на мові Сі та Паскаль для розв'язання найбільш важливих та поширених задач програмування, необхідних для кожного програміста .

Метою курсової роботи є закріплення та поглиблення знань, отриманих студентами на лекційних, практичних заняттях з дисципліни «Алгоритмізація та програмування», розвиток навичок при виборі представлення вхідних даних, розробці або виборі методу розв'язку задачі, використанні структурно-орієнтованого підходу при написанні програм на мові Сі та Паскаль, тестуванні та відладки програм, оформленні документації на програмну розробку.

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

1.Телефонний довідник

Телефонний довідник - база усіх номерів стаціонарного і мобільного зв?язку по містах і селах різних регіонів і частин певної країни. Телефонні довідники з?явилися не дуже давно, оскільки перший телефон було запатентовано в 1876 році американським винахідником Александром Белом і пройшло чимало років поки він удосконалився до сьогоднішньго і набув масового поширення. Перші телефони були досить примітивними і не використовувалися масово. Над розробкою і удосконалення телефонів займалося чимало вчених. Телефони пройшли довгий і складний шлях розвитку. Відповідно телефонні довідники і не були потрібні, оскільки телефони існували лише у деяких осіб, які могли дозволити собі цей засіб зв?язку. Не потрібно було об?єднувати всі номера телефонів в одну єдину базу, бо більшість людей віддавали перевагу традиційному способу спілкування - листам.

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

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

1. ПІБ абонента;

2. Номер телефону;

3. Адресу.

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

2.Розробка алгоритму програми

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

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

Після цього треба вирішити, як програма буде це робити. Яким буде інтерфейс користувача? Як повинна бути побудована програма? Необхідно також вирішити, як будуть представлені дані в програмі та які методи будуть використовуватись для обробки даних, щоб отримати остаточний результат.

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

При розробці алгоритму треба враховувати ресурсні обмеження щодо розв'язування задачі, наявність готових програм для реалізації відомих методів та алгоритмів, а також необхідно прагнути того, щоб алгоритм був більш універсальним, тобто придатним для широкого класу вхідних даних.

Найбільш поширені форми представлення алгоритмів: на звичайній мові, за допомогою псевдокоду (напівформалізований опис алгоритму), графічна форма та програмна (текст на алгоритмічній мові програмування).

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

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

Таблиця 1.

Назва та призначення

Символ

Дані відображує дані, носій яких не визначений.

Термінатор (початок-кінець, пуск -зупин) - призначений для відображення точок входу виходу.

Умова (розгалуження) - відповідає за перенаправлення віток алгоритму в залежності від виконання чи невиконання умови.

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

Межа циклу (відображує початок та кінець циклу. Умови для ініціалізації, збільшення та завершення розміщуються усередині символу на початку або в кінці в залежності від розташування операції, що перевіряє умову)

Лінія - відображає потік даних або управління.

2.1 Алгоритм головної програми

Алгоритм головної програми представлений у вигляді блок-схеми, зображеної на рис.1.

Рис.1.Блок-схема головної програми

Блок-схема головної програми складається з 9-ти блоків. Блок №1 та №9 містять точки входу і виходу в і з програми. В них описуються початок і кінець програми. В блоці №2 і №3 описуються змінні і типи, які будуть використовуватися в тілі програми. Блок №4 відповідає за встановлення зв?язку файлової змінної «а» з файлом «База.txt». Блок №5 є блоком вибору варіанту. Він відповідає за виконаня одного з процесів, який відповідає значенню ключа. Блок №6-№8 містять в собі наперед визначені процеси - процедури creation, outlet, search.

2.2 Алгоритм процедури створення вхідного файлу (creation)

Алгоритм процедури creation представлений у вигляді блок-схеми, зображеної на рис.2.

Рис.2.Блок-схема процедури creation

Блок-схема процедури creation складається з 11 блоків. Блок №1 та №11 містять точки входу і виходу в і з програми. В блоці №2 описуються змінні, що будуть використовуватися в даній процедурі. Блок №3 відповідає за відкриття файлу для запису і читання. В блоці №4 присвоюється змінній j значення 1. Блоки №5 і №9 є блоками початку і кінця циклу з передумовою. В блоці №5 записується умова циклу «j<>0».Тіло циклу складають блоки №6-8. Блок №6 відповідає за введення даних в програму, а саме прізвища, ім?я, номера телефону і адреси. Блок №7 здійснює запис значень зі змінних в файл. Блок №8 відповідає за введення значення змінної «j».У блоці №10 відбувається закриття файлу

2.3 Алгоритм процедури виведення даних з файлу (outlet)

Алгоритм процедури outlet представлений у вигляді блок-схеми, зображеної на рис.3.

Рис.3.Блок-схема процедури outlet

Блок-схема процедури outlet складається з 9 блоків. Блок №1 та №9 містять точки входу і виходу в і з програми. В блоці №2 описуються змінні, що будуть використовуватися в даній процедурі. Блок №3 проводить відкриття файлу для читання. Блоки №4 і №7 є блоками початку і кінця циклу з передумовою. В блоці №4 записується умова циклу «not eof (a)»(тобто, що вказівник не стоїть в кінці файлу).Тіло циклу складають блоки №5-6. Блок №5 здійснює зчитування значень з файлу в оперативну пам?ять. Блок №6 відповідає за виведення значень з змінних s.fam, s.imja, s.nomer, s.adres на екран. Блок №8 закриває файл.

програма телефонний довідник паскаль

2.4 Алгоритм процедури пошуку (search)

Алгоритм процедури search представлений у вигляді блок-схеми, зображеної на рис.4.

Рис.4.Блок-схема процедури search

Блок-схема процедури search складається з 11 блоків. Блок №1 та №11 містять точки входу і виходу в і з програми. В блоці №2 описуються змінні, що будуть використовуватися в даній процедурі. Блок №3 проводить відкриття файлу для читання. Блок №4 відповідає за введення критерію для пошуку і присвоєння його змінній name. Блоки №5 і №9 є блоками початку і кінця циклу з передумовою. В блоці №5 записується умова циклу «not eof (a)».Тіло циклу складають блоки №6-8. Блок №6 здійснює зчитування значень з файлу в оперативну пам?ять. Блок №7 - блок розгалуження. Він відповідає за перенаправлення віток взалежності від виконання чи невиконання умови.Умовою є наступний запис - «s.fam=name або s.adress=name або s.nomer=name». Відповідно, якщо виконується дана умова, то виконується блок №8, який відповідає за виведення значень з змінних s.fam, s.imja, s.nomer, s.adres на екран. В іншому випадку нічого не виконується.

Блок №10 закриває файл.

3.Розробка програми

Програма курсової роботи реалізовується на мові програмування Паскаль. Мова Паскаль є універсальною мовою програмування високого рівня. Його основи розробив Ніклаус Вірт, професор технічного університету в Цюріху, що назвав мову на честь Блеза Паскаля. Програма на мові Паскаль складається з заголовка ( назви програми ), розділу описів ( опису змінних, міток, типів, констант ) і тіла програми. Тіло програми береться в операторні дужки (зв?язка begin-end). Кожен оператор в мові програмування Паскаль відокремлюється один від одного крапкой з комою.

3.1 Опис програми

Код програми для створення бази даних телефонного довідники представлений в додатку А

Опис головної програми

Головна програма відповідає за виклик підпрограм. Виклик підпрограм організовується за допомогою оператора вибору варіанту case , який здійснює перенаправлення віток програми взалежності від значення ключа. Ключем в нашому випадку є змінна «z». Якщо змінна «z» приймає значення 1, то виконується прцедура creation; якщо - 2, то виконується процедура outlet; якщо-3, то виконується процедура search; і якщо змінна приймає значення 4, то виконується вихід з програми. В головній програмі описуються як загальні типи й змінні так і специфічні. В розділі опису типів описуються наступні типи:

- Abonent - запис;

- Imja,fam,adres,nomer - рядки ,в які відповідно записуються ім?я, прізвище, адреса і номер телефону;

- F - файлова змінна;

В розділі опису змінних описуються:

- i,z - змінні цілого типу

- а - файлова змінна

Головна програма також здійснює зв?язок файлової змінної «а» з файлом «База.txt», за допомогою функції assign.

Опис процедури створення вхідного файлу (creation)

Процедура creation відповідає за початкове створення бази телефонних номерів. В даній процедурі описуються параметри-аргументи i, j, s та параметр-результат а. За допомогою функції rewrite здійснюється відкриття файлу для запису. Використовуючи цикл з передумовою while організовується ввід даних, а саме прізвище і ім?я абонента, його номер телефону і місце проживання. Для організації виходу з циклу і завершення вводу даних задається умова припинення ітерацій. Цією умовою є введення числа «50». За допомогю функції close закривається наш файл із введиними нами даними.

Опис процедури виведення даних з файлу (outlet)

Процедура outlet відповідає за виведення даних з файлу на екран комп?ютера. Параметром-результатом в цій процедурі є файлова змінна а. Для того щоб організувати дану операцію ми за допомогою функції reset відкриваємо наш файл з попередньо введеними даними і з використанням циклу з передумовою while здійснюємо вивід даних. Після чого закриваємо файл використовуючи функцію close.

Опис процедури пошуку (search)

Процедура search відповідає за пошук даного абонента в базі даних. В даній прцедурі описуються наступні параметри-аргументи - i, s, name та параметр-результат-а. Щоб організувати пашук використовується цикл з передумовою while і оператор розгалуження.Алгоритм даної операції виглядає наступним чином: відкривається файл для читання; вводиться критерій для пошуку; організовується цикл з передумовою (якщо вказівник не стоїть в кінці файлу то виконуємо зчитування інформації з файлу і перевіряються збіги введеного критерію з даними в базі; якщо збіги є, то виводяться дані про даного абонента, в іншому випадку нічого не виконується; коли вказівник дійде до кінця файлу ітерації припиняються); закривається файл.

3.2 .Тестування програми

Тестування повинне забезпечити перевірку працездатності функцій для всіх варіантів вхідних даних. Результати тестування програми у тому вигляді, в якому вони представлені на екрані після виконання програми наведені на рис. 5 - 7.

На рис.5 представлені результати тестування процедури creation.

Рис.5.Результати тестування процедури creation.

На рис.6 представлені результати тестування процедури outlet.

Рис.6.Результати тестування процедури outlet.

На рис.7 представлені результати тестування процедури search.

Рис.7.Результати тестування процедури search.

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

Висновок

В ході виконання завдання курсової роботи з алгоритмізації та програмування мною було вивчено базові конструкції мови програмування Паскаль;використано на практиці знання отримані мною на заняттях з дисципліни «Алгоритмізація та програмування»; розроблено і протестовано програму для створення телефонного довідника, яка здійснює наступні функції: створення бази телефонних номерів, виведення даних зі створеної бази і пошук номерів за заданим критерієм.

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

Список використаної літератури

1. Д.Прайс. Программирование на языке Паскаль. Практическое руководство.1987 год. 254 стр.

2. М.А. Черкасов. Практический курс программирования на Паскале. Уч. пособие. 2005 год. 180 стр.

3. Е.Р. Алексеев Free Pascal. Учебник по программированию. 2010 год. 442 стр.

4. Т.А. Павловская. Паскаль. Програмирование на языке высокого уровня. Учебник. 2007 год. 400 стр.

5. Сайт www.pascal.org.ua

6. Сайт: www.google.com

7. Сайт: www.yandex.ua

8. Сайт: www.wikipedia.org

Додаток А

Текст програми

Program baza;

label 10;

type abonent=record

imja:string;

fam:string;

nomer:string;

adres:string;

end;

F= file of abonent;

Var a:f;

i,z:integer;

Procedure creation (var a:f); {Створення бази даних}

Var i,j:integer;

s:abonent;

begin

rewrite (a);

j:=1;

while j<>50 do

begin

write ('Введіть Імя ');

readln (s.imja);

write ('Введіть Прізвище ');

readln (s.fam);

write ('Введіть номер телефона ');

readln (s.nomer);

write ('Введіть адресу:');

readln (s.adres);

write (a,s);

writeln ('Для завершення натисніть 50 ');

readln (j);

end;

close (a);

end;

Procedure outlet (var a:f); {Виведення даних з бази}

Var i:integer;

s:abonent;

begin

reset (a);

while not eof(a) do

begin

read (a,s);

write(s.fam,' ',s.imja,' ',s.nomer,' ',s.adres);

writeln;

end;

close (a);

end;

Procedure search (var a:f); {Пошук в базі}

var i:integer;

s:abonent;

name:string;

begin

reset (a);

writeln ('Введіть критерій для пошуку (прізвище,номер телефону або адресу) ');

readln (name);

writeln ('Список з заданим критерієм: ');

while not eof(a) do

begin

read (a,s);

if (s.adres=name) or (s.fam=name) or (s.nomer=name) then

begin

write(s.fam,' ',s.imja,' ',s.nomer,' ',s.adres);

writeln;

end;

end;

close(a);

end;

begin

10:

assign (a,'База.txt');

writeln (' MEHЮ ');

writeln ('1:Створення Бази ');

writeln ('2:Виведення Бази');

writeln ('3:Пошук ');

writeln ('4:Вихід ');

readln (z);

case z of

1:creation(a);

2:outlet(a);

3:search(a);

4:exit;

end; goto 10;

readln

end.

Размещено на Allbest.ru


Подобные документы

  • Коректне використання операторів та конструкцій, побудова ефективних алгоритмів для розв'язку типових задач. Розробка алгоритмів та програми для створення бази даних телефонних номерів. Використання засобів розробки програмного забезпечення мовою Java.

    курсовая работа [1,0 M], добавлен 25.01.2016

  • Алгоритми розв’язання задач у вигляді блок–схем. Використання мови програмування MS VisualBasic for Application для написання програм у ході вирішення задач на одномірний, двовимірний масив, порядок розв’язання задачі на використання символьних величин.

    контрольная работа [742,9 K], добавлен 27.04.2010

  • Принципи об'єктно-орієнтованого підходу. Розробка програмного комплексу з використанням цього алгоритму і користувальницьких класів на мові програмування С++. Реалізація простого відкритого успадкування. Тестування працездатності системи класів.

    курсовая работа [98,0 K], добавлен 06.05.2014

  • Програма розрахунку інформаційних характеристик каналу зв'язку. Побудова коду для передачі повідомлень. Процедури кодування, декодування та оцінка ефективності кодів. Програма на алгоритмічній мові Паскаль. Канальна матриця, що визначає втрати інформації.

    курсовая работа [147,7 K], добавлен 09.07.2009

  • Види рівнянь та методи їх розв’язань. Чисельні методи уточнення коренів, постановка задачі. Рішення нелінійного рівняння методом простих та дотичних ітерацій. Використання програмних засобів. Алгоритми розв’язку задач. Програми мовою С++, їх тестування.

    курсовая работа [232,2 K], добавлен 12.02.2013

  • Програма автотестування (POST). Призначення діагностичного програмного забезпечення, категорії програм діагностики. Використання утилітів пошуку несправностей, неполадок і оптимізації. Проведення тестування комп’ютера за допомогою програми CHECKІT.

    лабораторная работа [13,6 K], добавлен 03.10.2010

  • Основи проектування інформаційних реляційних баз даних, надання користувачам необхідної їм інформації на основі збережених даних. Розробка бази даних, що дозволяє зберігати інформацію про абонентів (ім'я, мобільний телефон, адреса, e-mail, реєстрація).

    курсовая работа [1,9 M], добавлен 13.11.2010

  • Розробка ефективних засобів навчання. Виявлення системи, способів, що сприяють підвищенню активності учнів. Призначення та область використання програми електронний довідник. Розробка алгоритму програми. Обґрунтування вибору мови і системи програмування.

    курсовая работа [161,7 K], добавлен 02.06.2014

  • Характеристика особливостей реалізації пошуку по масиву методами лінійним, бінарним, по "дереву Фібоначе" та екстраполярним на мові програмування Turbo Pascal. Використання алгоритма Рабіна-Карпа та Кнута-Морріса-Пратта для знаходження підрядка в рядку.

    курсовая работа [51,0 K], добавлен 16.09.2010

  • Вирішення задач сортування в програмуванні та розробка ефективних алгоритмів сортування. Знайомство з теоретичним положенням, що стосуються методів сортування файлів, реалізації їх на мові програмування Turbo Pascal. Методи злиття впорядкованих серій.

    курсовая работа [46,9 K], добавлен 16.09.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.