Побудова алгоритмів для автомтизації обліку студентів
Розробка алгоритму та складання програми для створення листів обліку студентів за допомогою мови програмування Паскаль. Алгоритми головної програми, процедури створення вхідного файлу, виведення даних з файлу, пошуку осіб. Опис та тестування програми.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | украинский |
Дата добавления | 25.01.2016 |
Размер файла | 502,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Реферат
Курсова робота: 22 с., 7 рис.,8 джерел, 1 додаток.
Об'єктом дослідження є типові оператори та базові конструкції мови програмування Паскаль.
Мета роботи - отримати навички коректного використання операторів та конструкцій та побудова ефективних алгоритмів для розв'язку типових задач.
Методика (метод дослідження): комп'ютерна реалізація та комп'ютерне тестування.
Одержані висновки та їх новизна: розроблені алгоритми та складені програми для створення листів обліку студентів.
Результати досліджень можуть бути застосовані при розробці алгоритмів та програм складних задач; створенні великих баз даних.
Перелік ключових слів: АЛГОРИТМ, ПРОГРАМА, БЛОК-СХЕМА, ДАНІ, ЗМІННА, МАСИВ, СТРУКТУРА, ІНСТРУКЦІЯ, ФУНКЦІЯ, ПРОЦЕДУРА.
програмування алгоритм облік паскаль
Вступ
Курсова робота -- вид самостійної навчально-наукової роботи з елементами дослідження, що виконується студентами вищих або середніх-спеціальних навчальних закладів з метою закріплення, поглиблення і узагальнення знань, одержаних за час навчання та їх застосування до комплексного вирішення конкретного завдання.
Курсова робота з дисципліни «Алгоритмізація та програмування» призначена для придбання практичних навичок розробки алгоритмів та програм на мові Сі та Паскаль для розв'язання найбільш важливих та поширених задач програмування, необхідних для кожного програміста .
Метою курсової роботи є закріплення та поглиблення знань, отриманих студентами на лекційних, практичних заняттях з дисципліни «Алгоритмізація та програмування», розвиток навичок при виборі представлення вхідних даних, розробці або виборі методу розв'язку задачі, використанні структурно-орієнтованого підходу при написанні програм на мові Сі та Паскаль, тестуванні та відладки програм, оформленні документації на програмну розробку.
При виконанні курсової роботи студент повинен навчитися: використовувати набуті знання при розробці програм; працювати з літературними джерелами; розробляти алгоритми та створювати відповідні їм програми на мові Сі та Паскаль; проводити відладку та тестування програм; проводити аналіз результатів роботи програми; складати відповідне програмне супроводження для розроблених програмних проектів.
1. Розробка алгоритму програми
Алгоритм - це система формальних правил, розташованих в визначеному логічному порядку, які чітко й однозначно визначають процес виконання заданої роботи незалежно від її характеру та походження.
Перед початком розробки алгоритму необхідно чітко уяснити, що програма повинна робити, яка інформація потрібна програмі (які дані є в наявності та які існують обмеження на ці дані), які обчислення та інші дії програма повинна виконати та яку інформацію видати користувачу в якості результату роботи.
Алгоритм, як правило, будується у декілька етапів - спочатку він формулюється у загальних рисах, а потім уточнюється шляхом заміни складних дій більш простими.
При розробці алгоритму треба враховувати ресурсні обмеження щодо розв'язування задачі, наявність готових програм для реалізації відомих методів та алгоритмів, а також необхідно прагнути того, щоб алгоритм був більш універсальним, тобто придатним для широкого класу вхідних даних.
Найбільш поширені форми представлення алгоритмів: на звичайній мові, за допомогою псевдокоду (напівформалізований опис алгоритму), графічна форма та програмна (текст на алгоритмічній мові програмування).
При графічному представленні алгоритм зображується у вигляді послідовності зв'язаних між собою функціональних блоків, кожний з яких відповідає виконанню однієї або декількох дій. Таке графічне представлення називається схемою алгоритму або блок-схемою.
У блок-схемі кожному типу дій (введенню-виведенню даних, обчисленню значень виразів, перевірці умов, управлінню повторенням дій, закінченню обробки і т. ін.) відповідає один або декілька блочних символів у вигляді плоских геометричних фігур, в середині яких розміщується текст або формула, що пояснює дії, які виконуються. Блочні символи з'єднуються лініями переходів, що визначають порядок виконання дій. В таблиці 1 наведено перелік та умовні позначення основних символів блок - схем.
1.1 Алгоритм головної програми
Алгоритм головної програми зображений на рис.1, у вигляді блок-схеми.
Рис. 1 Блок-схема головної програми
Блок-схема головної програми складається з 9-ти блоків. Блок №1 та №9 містять точки входу і виходу програми. В них описуються початок і кінець програми. В блоці №2 і №3 описуються змінні і типи, які будуть використовуватися в тілі програми. Блок №4 відповідає за встановлення зв?язку файлової змінної з фізичним файлом «Лист.txt». Блок №5 є блоком вибору варіанту. Він відповідає за виконаня одного з процесів, який відповідає значенню ключа. Блок №6-№8 містять в собі наперед визначені процеси - процедури stvorenya, vuvid, poshuk.
1.2 Алгоритм процедури створення вхідного файлу (stvorenya)
На рис.2 зображено алгоритм процедури stvorenya, який являє собою блок-схему.
Рис. 2 Блок-схема процедури stvorenya
Блок-схема процедури stvorenya складається з 12 блоків. Блок №1 та №12 містять точки входу і виходу програми. В блоці №2 описуються змінні, що будуть використовуватися в даній процедурі. Блок №3 відповідає за відкриття файлу для запису і читання. В блоці №4 присвоюється змінній значення,тобто проводиться ініціалізація змінної. Блоки №5 і №9 є блоками початку і кінця циклу з передумовою. В блоці №5 записується умова циклу «z<>0».Тіло циклу складають блоки №6-9. Блоки №6-7 відповідають за введення даних в програму, а саме прізвище, ім?я, по-батькові студента, рік народження і вступу в навчальний заклад, курс, середні бали за курси. Блок №8 здійснює запис значень зі змінних в файл. Блок №9 відповідає за введення значення змінної «z».У блоці №11 відбувається закриття файлу
1.3 Алгоритм процедури виведення даних з файлу (vuvid)
Алгоритм процедури vuvid представлений у вигляді блок-схеми, зображеної на рис.3.
Рис. 3 Блок-схема процедури vuvid
Блок-схема процедури vuvid складається з 10 блоків. Блок №1 та №10 містять точки входу і виходу програми. В блоці №2 описуються змінні, що будуть використовуватися в даній процедурі. Блок №3 проводить відкриття файлу для читання. Блоки №4 і №7 є блоками початку і кінця циклу з передумовою. В блоці №4 записується умова циклу «not eof (х)»(тобто, що вказівник не стоїть в кінці файлу).Тіло циклу складають блоки №5-7. Блок №5 здійснює зчитування значень з файлу в оперативну пам?ять. Блоки №6-7 відповідають за виведення значень з змінних на екран. Блок №9 закриває файл.
1.4 Алгоритм процедури пошуку (poshuk)
Алгоритм процедури poshuk зображений у вигляді блок-схеми на рис.4.
Рис. 4 Блок-схема процедури poshuk
Блок-схема процедури poshuk складається з 12 блоків. Блок №1 та №12 є блоками початку і кінця програми. В блоці №2 описуються змінні, що будуть використовуватися в даній процедурі. Блок №3 проводить відкриття файлу для читання. Блок №4 відповідає за введення критерію для пошуку і присвоєння його змінній dani. Блоки №5 і №10 є блоками початку і кінця циклу з передумовою. В блоці №5 записується умова циклу «not eof (x)».Тіло циклу складають блоки №6-9. Блок №6 здійснює зчитування значень з файлу в оперативну пам?ять. Блок №7 - блок розгалуження. Він відповідає за перенаправлення віток взалежності від виконання чи невиконання умови. Умовою є наступний запис - «(s.fam=dani) or (s.k=dani) or (s.d=dani)». Відповідно, якщо виконується дана умова, то виконуються блоки №8-9, які відповідають за виведення значень з змінних на екран. В іншому випадку нічого не виконується. Блок №11 закриває файл.
2. Розробка програми
Програма курсової роботи реалізовується на мові програмування Паскаль.
2.1 Опис програми
Код програми для створення листів обліку студентів представлений в додатку А.
Опис головної програми
Головна програма відповідає за виклик підпрограм. Виклик підпрограм організовується за допомогою оператора вибору варіанту case , який здійснює перенаправлення віток програми взалежності від значення ключа. Ключем в нашому випадку є змінна «у». Якщо змінна «у» приймає значення 1, то виконується процедура stvorenya; якщо - 2, то виконується процедура vuvid; якщо-3, то виконується процедура poshuk; і якщо змінна приймає значення 4, то виконується вихід з програми. В головній програмі описуються як загальні типи й змінні так і специфічні. В розділі опису типів описуються наступні типи:
- Student - запис;
- fam,imja,pb,data - рядки ,в які відповідно записуються прізвище, ім?я, по-батькові студента, а також його дата народження;
- d,k,k1,k2,k3,k4 - - рядки ,в які відповідно записуються дата вступу студента, курс і середні бали за 1, 2, 3, 4 -й курси.
- f - файлова змінна;
В розділі опису змінних описуються:
- i,у - змінні цілого типу
- х - файлова змінна
Головна програма також здійснює зв?язок файлової змінної з файлом «Лист.txt», за допомогою функції assign.
Опис процедури створення вхідного файлу (stvorenya)
Процедура stvorenya відповідає за початкове створення бази телефонних номерів. За допомогою функції rewrite здійснюється відкриття файлу для запису. Використовуючи цикл з передумовою while організовується ввід даних, а саме прізвище, ім?я, по-батькові студента, рік народження і вступу в навчальний заклад, курс, середні бали за курси. Для організації виходу з циклу і завершення вводу даних задається умова припинення ітерацій. Цією умовою є введення числа «0». За допомогю функції close закривається наш файл із введиними нами даними.
Опис процедури виведення даних з файлу (vuvid)
Процедура vuvid відповідає за виведення даних з файлу на екран комп?ютера. Для того щоб організувати дану операцію ми за допомогою функції reset відкриваємо наш файл з попередньо введеними даними і з використанням циклу з передумовою while здійснюємо вивід даних. Поки вказівник знаходиться не вкінці файлу здійснюється зчитування інформації і виведення її на екран комп?ютера. Коли вказівник файлу буде знаходитися вкінці ітерації циклу while припиняться і завершиться виведення даних. Після завершення виведення, закривається файл, використовуючи функцію close.
Опис процедури пошуку (poshuk)
Процедура poshuk відповідає за пошук будь-якого студента в базі даних. Щоб організувати пашук використовується цикл з передумовою while і оператор розгалуження. Алгоритм даної операції виглядає наступним чином:
- Відкривається файл для читання.
- Вводяться дані для пошуку.
- Організовується цикл з передумовою:
Якщо вказівник не стоїть в кінці файлу то виконуємо зчитування інформації з файлу і перевіряються збіги введеного критерію з даними в базі. Якщо збіги є то виводяться дані про даного студента, в іншому випадку нічого не виконується. Коли вказівник дійде до кінця файлу ітерації припиняються.
- Закривається файл.
2.2 Тестування програми
Тестування повинне забезпечити перевірку працездатності функцій для всіх варіантів вхідних даних.
На рис.5 представлені результати тестування процедури stvorenya.
Рис. 5 Результати тестування процедури stvorenya
На рис.6 представлені результати тестування процедури vuvid.
Рис.6 Результати тестування процедури vuvid
На рис.7 представлені результати тестування процедури poshuk
Рис. 7 Результати тестування процедури poshuk
Аналіз результатів проведеного тестування дозволяє зробити висновок, що програма працює коректно.
Список використаної літератури
1. Д. Прайс. Программирование па языке Паскаль. Практическое руководство.1987 год. 254 стр.
Додаток
Текст програми
Program lust;
label 5;
type student=record
imja,fam,pb,data:string;
d,k,k1,k2,k3,k4:string;
end;
F= file of student;
Var x:f;
i,y:integer;
Procedure stvorenya (var x:f);
Var i,z:integer;
s:student;
begin
rewrite (x);
z:=1;
while z<>0 do
begin
write ('Введіть Прізвище ');
readln (s.fam);
write ('Введіть Імя ');
readln (s.imja);
write ('Введіть по-батькові ');
readln (s.pb);
write ('Введіть дату народження ');
readln (s.data);
write ('Введіть рік вступу ');
readln (s.d);
write ('Введіть курс ');
readln (s.k);
write ('Введіть середній бал за 1-й курс ');
readln (s.k1);
write ('Введіть середній бал за 2-й курс ');
readln (s.k2);
write ('Введіть середній бал за 3-й курс ');
readln (s.k3);
write ('Введіть середній бал за 4-й курс ');
readln (s.k4);
write (x,s);
writeln ('Для завершення натисніть 0 ');
readln (z);
end;
close (x);
end;
Procedure vuvid (var x:f);
Var i:integer;
s:student;
begin
reset (x);
while not eof(x) do
begin
read (x,s);
writeln(s.fam,' ',s.imja,' ',s.pb,' ',s.data,' ',s.k,'-й курс');
writeln('Рік вступу:',s.d);
writeln('сер. бал за 1-й курс:',s.k1);
writeln('сер. бал за 2-й курс:',s.k2);
writeln('сер. бал за 3-й курс:',s.k3);
writeln('сер. бал за 4-й курс:',s.k4);
writeln;
end;
close (x);
end;
Procedure poshuk (var x:f);
var i:integer;
s:student;
dani:string;
begin
reset (x);
writeln ('Введіть дані для пошуку (прізвище,курс чи рік вступу) ');
readln (dani);
writeln ('Список знайдених студентів: ');
while not eof(x) do
begin
read (x,s);
if (s.fam=dani) or (s.k=dani) or (s.d=dani) then
begin
writeln(s.fam,' ',s.imja,' ',s.pb,' ',s.data,' ',s.k,'-й курс');
writeln('Рік вступу:',s.d);
writeln('сер. бал за 1-й курс:',s.k1);
writeln('сер. бал за 2-й курс:',s.k2);
writeln('сер. бал за 3-й курс:',s.k3);
writeln('сер. бал за 4-й курс:',s.k4);
writeln;
end;
end;
close(x);
end;
begin
5:
assign (x,'Лист.txt');
writeln ('1:Створення листа обліку студентів ');
writeln ('2:Виведення листа обліку студентів');
writeln ('3:Пошук ');
writeln ('4:Вихід ');
readln (y);
case y of
1:stvorenya(x);
2:vuvid(x);
3:poshuk(x);
4:exit;
end; goto 5;
readln
end.
Размещено на Allbest.ru
...Подобные документы
Редагування за допомогою текстового редактора NotePad вхідного файлу даних. Програмна реалізація основного алгоритму з використанням засобів об'єктно-орієнтованого програмування. Об’ява та опис класів і об'єктів. Розробка допоміжних програмних засобів.
курсовая работа [69,4 K], добавлен 14.03.2013Створення спеціалізованої програми на мові програмування Турбо Паскаль для обробки інформації, що вноситься в бази даних по приватних підприємствах. Постановка задачі і структура зберігаючих даних. Розробка алгоритмів основної програми та процедури Is.
курсовая работа [27,0 K], добавлен 07.10.2010Базові конструкції мови програмування С++ з позиції об’єктного програмування. Розробка програми для автоматизації обліку товарів на складі магазину парфумів. Реалізація програми в середовищі Visual Studio C++. Розробка інтерфейсу і тестування програми.
дипломная работа [907,9 K], добавлен 01.04.2016Побудова інформаційно-математичної моделі задачі. Визначення структури даних, розробка інтерфейсу. Складання коду програми за допомогою мови програмування Delphi 7.0. Реалізація проекту у візуальному середовищі. Інструкція з експлуатації програми.
курсовая работа [601,3 K], добавлен 03.09.2009Написання програми для виведення чисел Фібоначчі. Загальна характеристика мови Паскаль. Науковий доробок Леонардо Фібоначчі. Історія і властивості послідовності. Особливості програмування мовою Turbo Pascal. Відкалібрування та синхронізування програми.
курсовая работа [325,1 K], добавлен 09.10.2013Програми і мови програмування. Алфавіт мови програмування. Лексеми, зарезервовані слова мови Pascal. Ідентифікатори, типи даних. Арифметичні вирази, операції. Стандартні функції, структура програми. Процедури введення-виведення. Правила написання команд.
лекция [445,0 K], добавлен 24.07.2014Розробка кросплатформового інструменту електронного тестування учнів молодших та середніх класів по іноземній мові. Вибір середовища розробки та системи контролю версій. Опис мови програмування Java та лістинг програми. Апаратні та програмні вимоги.
дипломная работа [608,3 K], добавлен 26.10.2010Створення програми для проходження тестового контролю по інтегральному численню за допомогою мови програмування Visual Basic. Опис математичного методу вирішення задачі. Структура вихідних даних. Стандартні функції та процедури. Налагодження програми.
курсовая работа [2,7 M], добавлен 23.12.2014Створення програми, що видає результати голосування та підсумки виборів. Алгоритм розробки програми. Опис структури даних та вимоги до них, стандартних процедур та функцій, файлів та їх призначення. Приклад тестування та результати роботи програми.
курсовая работа [1,0 M], добавлен 28.06.2012Розробка програми для отримання відомостей про відвантаження готової продукції: програмування головного блоку та процедур вводу даних з первинних документів, їх виводу на дисплей, сортування записів вхідного файлу, підрахунку підсумків по коду утримання.
курсовая работа [64,2 K], добавлен 23.04.2010Створення комп'ютерної програми на мові програмування С++ для ведення обліку мобільних телефонів на складі-магазині. Вимоги до апаратного та програмного забезпечення. Схема зв'язку між складовими частинами програми. Інструкція користувача, тестування.
дипломная работа [4,2 M], добавлен 06.06.2012Складання блок-схеми і програми обчислення значення функції з заданою точністю та програми табулювання функції з заданим кроком. Обчислення двох значень поліному за допомогою схеми Горнера. Програма введення вхідних даних з клавіатури і з файлу ZAD4.DAT.
контрольная работа [168,6 K], добавлен 29.09.2010Алгоритмічна мова програмування універсального призначення Turbo Pascal. Розробка і створення програми для гри "Шибениця". Алгоритм функціонування программи, блок-схема алгоритму. Використання додаткових модулів Graph та Crt у процессі створення програми.
курсовая работа [2,0 M], добавлен 23.06.2010Проектування архітектури гри "Тетріс". Аналіз вимог до неї. Вивчення особливостей реалізації, кодування та тестування програми. Алгоритм побудови робочого поля. Вибір мови програмування. Розробка і налагодження тексту програми. Інструкції з експлуатації.
курсовая работа [460,9 K], добавлен 04.03.2014Розробка програми "Облік вогнепальної зброї" для більш простої та оптимальної обробки інформації по зброї. Алгоритм процедури Zap. Занесення відомостей по вогнепальній зброї користувачем та зберігання її до типізованого файлу. Вихідний код програми.
курсовая работа [30,4 K], добавлен 07.10.2010Загальна характеристика алгоритму та опис програми. Керівництво системного програміста. Особливості запуску програми в Linux, FreeBSD, Windows. Аналіз результатів тестування програми, що проектується, вивчення та оцінка її практичної ефективності.
курсовая работа [91,4 K], добавлен 13.06.2014BMP як формат зберігання растрових зображень, огляд структури файлу. Створення програми для запису та перегляду графічних BMP-файлів на мові програмування Turbo Pascal 7.0, розробка функціональної схеми і алгоритмів, особливості проведення тестування.
курсовая работа [325,8 K], добавлен 12.06.2011Загальний опис алгоритмів головної програми та процедур запису і зчитування повідомлень на рівні блок-схем, детальний опис розробленої програми на рівні програмного коду. Характеристика процедури відображення стану регістрів. Опис екранних форм програми.
курсовая работа [552,5 K], добавлен 09.06.2010Розробка програми реєстрації і автоматизованого створення звіту на рік по викраденим машинам. Математична модель задачі, структура зберігаючих даних. Створення алгоритмів основної програми на мові Turbo Pascal і процедур Vvod і Red. Вихідний код програми.
курсовая работа [25,4 K], добавлен 07.10.2010Проектування бази даних (БД). Проектування логічної моделі БД. Реалізація БД та створення таблиць. Встановлення зв’язків, вибір мови та середовища програмування. Опис функціональних елементів та реалізація програми. Опис та тестовий приклад програми.
дипломная работа [1,6 M], добавлен 07.01.2017