Програма для розрахунку виплат по кредиту
Розробка програми для ітераційного пошуку розміру рівномірних виплат по кредиту й нарахування відсотків на суму, що залишилася. Написання алгоритму програми з використанням бібліотеки (Graph, CRT), констант і перемінних, вхідних і вихідних даний.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | украинский |
Дата добавления | 26.05.2012 |
Размер файла | 95,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ
НАЦІОНАЛЬНИЙ АВІАЦІЙНИЙ УНІВЕРСИТЕТ
АЕРОКОСМІЧНИЙ ІНСТИТУТ
Механіко-енергетичний факультет
Кафедра автоматизації та енергоменеджменту
Курсова робота
з дисципліни "Комп'ютерна техніка і програмування"
на тему: Виплата кредитів
Виконав:
студент групи МЕФ-103
Лахнов О.С.
Перевірив:
Асистент кафедри АЕМ
Захарченко Ю.А.
Київ - 2012
АНОТАЦІЯ
Дана пояснювальна записка містить опис програми, яка будує графіки всіх функцій з файлу в різних кутах екрану різним кольором, що включає опис логічної її структури, тобто алгоритм, на основі якого написана програма з використовуваними бібліотеками (Graph, CRT) і процедурами, а також константи і перемінні, вхідні і вихідні дані. У даній програмі зазначені її призначення й умови застосування. Тут же описане керівництво користувача.
Початковий текст програми знаходиться у файлі GRAPHICS.pas и займає об'єм пам'яті рівний 3 Кбайт, а виконуючий модуль знаходиться у файлі GRAPHICS.exe и займає 180 КБ (184 568 байт).
ітераційний програма алгоритм бібліотека
ЗМІСТ
- АНОТАЦІЯ
- ВВЕДЕННЯ
- 1. ПОСТАНОВКА ЗАДАЧІ
- 2. АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ
- 3. МАТЕМАТИЧНА МОДЕЛЬ
- 4. ОПИС ПРОГРАМИ
- 4.1 Алгоритм на основі якого написана програма
- 4.2 Змінні
- 4.3 Використання бібліотеки GRAPH
- 4.4 Вхідні і вихідні данні
- 5. ОПИС ЗАСТОСУВАННЯ
- 5.1 Призначення й умови застосування даної програми
- 5.2 Інструкція користувача
- ВИСНОВОК
- СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ
- ДОДАТОК
ВВЕДЕННЯ
Першим компілятором мови Pascal є ETH Pascal, створений у 1970-му. Назва ETH походить від назви інституту німецькою Eidgenossische Technische Hochschule Zurich (українською Федеральна вища технічна школа Цюріха), де він був розроблений. Творцем мови є Ніклаус Вірт. Наприкінці того ж року Вірт оприлюднив перший офіційний опис мови, синтаксису та семантики. Нова версія мови побачила світ у 1972 році. Тоді ж Вірт та його англійський колега Чарльз Ентоні Хоар (Тоні Хоар) випустили аксіоматичний опис мови Pascal.
У 1969 році Вірт доручає розробку компілятора одному зі своїх студентів (Е. Марм'є). На той момент Марм'є володів лише Фортраном (Fortran) і писав компілятор виключно на цій мові. Після написання компілятор Pascal був переписаний на самому собі. Як згадував потім Вірт, вибір Фортрана був серйозною помилкою, бо він не міг адекватно представляти складні структури даних компілятора Pascal, що лише заплутувало програму.
Наступна спроба створення компілятору почалася з чіткого формулювання на описі (1970 року) самого Паскалю. Синтаксичний аналіз нового однопрохідного компілятору реалізовувався за допомогою рекурсії. Тепер команду розробників склали: У. Амман, Е. Марм'є, Р. Шилд. Після того як компілятор був написаний на ще невідомій мові, Шилд поїхав додому, де він на протязі двох тижнів вручну транслював програму у допоміжну низькорівневу мову. Отже, в середині 1970 року компілятор ETH Pascal був готовий.
ETH Pascal був цікавий насамперед тим, що став він однією з перших реалізацій мов високого рівня написаних на самій собі, на два роки випередивши компілятор Сі. У 1973 році була створена абстрактна Pascal-машина (P-машина), яка виконувала спеціальний P-код. Щоб вирішити проблему сумісності компілятора, Вірт вирішив скористатися перевіреними часом методами інтерпретаціі. Найвідомішими з них рішеннями, які передували P-коду, можна назвати реалізацію мови Snobol-4 (Р. Грісуолдом, у 1967 році), де в якості коду абстрактної машини використовувалася мова SIL (System Implementation Language).
Початкова мета розробки мови диктувалася потребою інструмента "для навчання програмуванню як систематичній дисципліні". Pascal належить до Algol-подібних мов програмування, оскільки використовує семантику Algol-ла. Однак Pascal мав суттєве удосконалення -- жорстку типізацію. Це означало, що присвоювання можна було виконувати лише для змінних, що належать до одного типу (одночасно вказувались правила, за якими типи вважались однаковими). Це удосконалення суттєво покращило стиль програмування, оскільки значну частину помилок вдавалось виявити ще на етапі компіляції -- що збільшує надійність програм.
Однак мова розроблялась як дослідницький проект і первісний Pascal був мало придатний для написання великих проектів, оскільки програму не можна було скласти з кількох програмних частин -- просто не було передбачено такої можливості. Але ця мова програмування швидко завоювала популярність у навчальних закладах при вивченні програмування. А коли з'явились діалекти мови де можливим було окреме компілювання програмних частин -- Pascal став засобом написання великих програмних систем.
Існує ряд об'єктивних причин, які обумовили видатний успіх мови Pascal. Серед них у першу чергу потрібно вказати такі:
Мова в природній і елегантній формі відбила найважливіші сучасні концепції технології розробки програм.
Завдяки своїй компактності, концептуальній цілісності й ортогональності понять, а також вдалому оригінальному опису, запропонованому автором мови, Pascal виявився дуже легким для вивчення й освоєння.
Незважаючи на відносну простоту мови, вона виявилась придатною для дуже широкого спектру застосунків, у тому числі для розробки дуже великих і складних програм, наприклад, операційних систем.
Pascal дуже технологічний для реалізації практично усіх, у тому числі і нетрадиційних, машинних архітектур. Стверджується, що розробка Pascal-транслятора "майже" не перевищує за трудомісткістю гарної дипломної роботи випускника ВНЗу.
1. ПОСТАНОВКА ЗАДАЧІ
Розробити програму для ітераційного пошуку розміру рівномірних виплат по кредиту. Виплати й нарахування відсотків на суму, що залишилася, проводяться щомісяця. Вихідні дані: розмір кредиту, термін виплат ( від 1 до 5 років), процентна ставка. У діалозі зобразити графік зміни залишку від суми кредиту.
2. АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ
Алгоритм програми, представлений у пояснювальній записці надає можливість наочно демонструвати побудову графіків за координатами, взятими із файла.
Подібних програм існує дуже багато. Вони розробляються, в основному, як учбово-розважальні додатки і несуть науково дослідницький характер. Вони орієнтовані в основному на широкого користувача, що бажає опанувати дану дисципліну і бажає наочно побачити деякі положення цієї дисципліни. Однак існують і більш серйозні програми такого виду, що знайшли своє застосування в професійному середовищі. Використання таких програм доцільно при дослідженнях які треба робити в широких обсягах. Можливе їхнє застосування і для імітації яких-небудь законів і положень дисципліни в дослідницьких цілях.
Як видно, з перерахованого вище, звичайні на перший погляд програми знаходять своє широке застосування в реальному житті.
3. МАТЕМАТИЧНА МОДЕЛЬ
У розглянутій програмі використовуються алгебраїчні формули, та використовуються їх графіки відповідно до функцій. Перевіряється також існування значень функцій на числовій осі.
4. ОПИС ПРОГРАМИ
Опис логічної структури
Написання програми як щось єдине ціле, без розчленовування на самостійні фрагменти, тобто без структурування, просто неможливо. Ця програма складається з основної частини і викликуваних у ній у міру необхідності процедур і функцій, що забезпечують рішення окремих задач.
4.1 Алгоритм на основі якого написана програма
Крок 1: Задаємо параметри ініціалізації графічного режиму
Крок 2 : Виводимо запит на введення розміру кредиту
Крок 3 : Зчитуємо розмір кредиту
Крок 4 : Виводимо запит на введення часу виплати кредиту доки користувач не введе число від 1 до 5
Крок 5 : Виводимо запит на введення відсоткової ставки
Крок 6 : Зчитуємо розмір відсоткової ставки у відсотках
Крок 7 : Ініціалізуємо графічний режим
Крок 8 : Розраховуємо розмір помісячних виплат
Крок 9 : Присвоюємо значенню нинішнього залишку виплат загальний розмір кредиту.
Крок 10 : Виводимо розмір виплат у місяць без врахування відсоткової ставки
Крок 11 : Визначаємо значення змінної dlinna, що характеризує довжину кожного місяця на графіку
Крок 12 : Малюємо вісі графіку (вертикальна - розмір залишку виплат, горизонтальна - вісь часу)
Крок 13 : Підписуємо вісі графіку.
Крок 14 : Зміщуємо вказівник малювання на початок графіку.
Крок 15 : Циклічно перебираємо кожен місяць виплат (за місяць відповідає змінна i), і у цьому циклі, для кожної ітерації :
Крок 15.1 : Якщо номер місяцю (від початку виплат) кратний 3-ьом, то виводимо на нижній вісі часу номер місяцю, а на вертикальній вісі виводимо розмір залишку кредиту
Крок 15.2 : Зміщуючи вказівник малювання, малюємо горизонтальну лінію (що означає час, за який проходить місяць)
Крок 15.3 : Зменшуємо залишок кредиту на розмір виплат у місяць
Крок 15.3 : Зміщуючи вказівник малювання, малюємо вертикальну лінію (що означає виплату частини кредиту)
Крок 15.4 : Повідомляємо у текстовій частині програми розмір залишку в кінці цього місяця
Крок 16 : Вимикаємо графічний режим
Кінець програми
4.2 Змінні
kredit : цілочисленна глобальна змінна, що означає розмір кредиту
years: : цілочисленна глобальна змінна, що означає час виплат кредиту
procent : дробова глобальна змінна (extended), що означає відсоткову ставку
ostatok : цілочисленна глобальна змінна, означає залишок виплати кредиту кожного місяця
I : це цілочисленна змінна, що використовується у ітерації як лічильник місяців
m,d: integer; глобальні перемінні цілого типу використовувані для ініціалізації графічного режиму. Перемінна d містить назву драйвера графічного режиму, m - назву режиму.
pomesyac : цілочисленна глобальна змінна, що означає розмір щомісячних виплат без відсоткової ставки
dlinna : цілочисленна глобальна змінна, що означає довжину місяці на графіку.
4.3 Використання бібліотеки GRAPH
Модуль Graph призначений для роботи з екраном дисплея в графічному режимі. Засоби модуля Graph стають доступними для користувача після його підключення до програми в розділі Uses. Крім модуля Graph в розділі Uses підключають і модуль Crt, так як багато процедур і функцій модуля Graph використовують константи модуля Crt.
4.4 Вхідні і вихідні данні
Вхідними данними даної програми є введення розміру кредиту Write ('Vvedit rozmir kreduty :'); Введення чау виплат в роках Write ('Vvedit chas vyplat u rokah (vid 1 do 5) :'); Введення відсоткової ставки Write ('Vvedit vidcotkovy stavku :');
Вихідні дані: розмір кредиту, термін виплат ( від 1 до 5 років), процентна ставка.
5. ОПИС ЗАСТОСУВАННЯ
5.1 Призначення й умови застосування даної програми.
Розглянута в пояснювальній записці програма, є науково-ознайомлювальної і розрахована для демонстраційного застосування, у зв'язку з її простотою. До мінімальних і необхідних системних вимог програми можна віднести наступні значення:
процесор не нижче IBM-386;
наявність на твердому диску чи дискеті вільного місця не менш, ніж 100 Кбайт.
ОЗУ не менш 1 Мбайт
відео пам'ять не менш 640 Кбайт
необхідно також наявність на диску графічного драйвера розробленого фірмою Borland - EGAVGA.BGI, а також деяких драйверів для підтримки стандартних векторних BGI-шрифтів, використовуваних у програмі.
Програма працює під керуванням операційної системи MS-DOS чи MS-WINDOWS, у емуляційному режимі DOS. Наявність усіх перерахованих вище технічних засобів дозволяє благополучно запустити програму. Запуск можливий безпосередньо через файл GRAPHICS.exe в оболонці перерахованих вище операційних систем.
5.2 Інструкція користувача
Запуск програми супроводжується появою на екрані області вводу даних. Спочатку користувач вводить сумму кредиту, час виплат в роках і процентну ставку. Потім натисканням клавіші Enter на екран виводяться вихідні данні. Для того щоб здійснити вихід з програми, потрібно закрити вікно і закрити програму.
ВИСНОВОК
У ході написання курсової роботи був закріплений матеріал по дисципліні "Основи програмування й алгоритмічні мови" надбаний раніше, а також були вивчені більш глибокі можливості мови програмування високого рівня Турбо Паскаль. Система Turbo Pascal є інтегрованим середовищем (IDE), яке налічує ряд компонентів, що в сукупності підтримують усі види робіт зі створення програм. Система містить універсальний текстовий редактор, компілятор вхідної мови, редактор зв'язків і вбудований символьний зневаджувач. Багатовіконний інтерфейс із розвинутою системою меню і досконалою довідковою системою забезпечує високу продуктивність праці програміста.
Навчився встановлювати графічний екран дисплея та використовувати існуючі засоби (методи) зображення графічної інформації (процедури модуля Graph), формувати абстрактне мислення та просторові уявлення, розвивати творчі здібності, виховувати комп'ютерну грамотність, акуратність підчас використання малюнків та креслень.
Вивчив вміння раціонального пошуку під час розв'язування задач, алгоритмічного стилю мислення, спрямованого на вибір оптимальних розв'язань, заохочувати самостійність і нестандартність мислення, підтримувати прагнення до засвоєння нових знань, виховувати комп'ютерну грамотність
Розглянута в пояснювальній записці програма "Побудова графіків", є демонстраційною і носить науково - дослідницький характер. Виходячи з того, що програма не відрізняється високим професіоналізмом, вона не здатна конкурувати в реальному житті з програмними додатками подібного типу. Її практичне застосування обмежується лише наочною демонстрацією деяких можливостей середовища програмування Turbo Pascal і її скромними демонстраційними здібностями.
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ
1. Пономарева В.И. Практикум по программированию в среде Turbo Pascal. - Сімферополь.: Таврида,1998. -256с.
2. Немнюгин С.А. Turbo Pascal. - СПб: Издательство "Питер", 2000. - 496 с.
3. Зуєв Е.А. Язык программирования Turbo Pascal. -М.:Унитех, 1992.-298с.
4. Фаронов В.В. Turbo Pascal 7.0-начальный курс.- М.: Нолидж, 2001. -575с.
5. Фаронов В.В. Turbo Pascal 7.0 Практика програмування. - М.: Нолидж, 1999. -415с.
6. Васильєв П.П. Turbo Pascal. - М.: Комп'ютер, ЮНИТИ, 1995.-96с.
7. Марченко А.И., Марченко Л.А:.Під ред. Тарасенко В.П. Программирование в среде Turbo Pascal 7.0. - М.: Бином Универсал, К.: Юниор, 1997. - 496с.
ДОДАТОК
program GraphKredit;
Uses graph, WinCrt, SysUtils;
var kredit : integer;
years : integer;
procent : extended;
ostacha : integer;
i : integer;
d,m : integer;
ostatok : integer;
pomesyac: integer;//skilki platutu u misyac
dlinna : integer;
begin
d := 9;
m := 2;
Write ('Vvedit rozmir kreduty :');
readln(kredit);
repeat
Write ('Vvedit chas vyplat u rokah (vid 1 do 5) :');
readln(years);
until (years in [1..5]);
Write ('Vvedit vidcotkovy stavku :');
readln(procent);
procent := procent/1200;
InitGraph (d,m,'');
pomesyac := trunc(kredit/(years*12));
ostatok := kredit;
writeln('Vyplaty u misyac bez vidcotkiv : ',pomesyac);
dlinna := trunc(550/(years*12));
line(30,5,30,470);
line(30,470,575,470);
OutTextXY(5,2,'ostatok');
OutTextXY(580,470,'mesyac');
MoveTo (30,470);
lineto (30,20);
for i := 1 to (years*12) do begin
if ((i mod 3) = 0) then begin
OutTextXY(0,470-trunc(ostatok/kredit*450),inttostr(ostatok));
OutTextXY(30+dlinna*i,460,inttostr(i));
end;
lineto (30+dlinna*i,470-trunc(ostatok/kredit*450));
ostatok := ostatok-pomesyac;
lineto (30+dlinna*i,470-trunc(ostatok/kredit*450));
writeln(i,' misyac, zalyshok kreduty :',ostatok);
end;
readln;
closegraph;
end.
Размещено на Allbest.ru
Подобные документы
Призначення гри в хрестики-нулики та програмне забезпечення, необхідне для її функціонування. Написання програми в середовищі Borland C++ Builder. Способи виклику програми. Характер вхідних та вихідних даних. Алгоритм та тестування роботи програми.
курсовая работа [321,6 K], добавлен 01.04.2016Позначення і назва програми, забезпечення, необхідне для її функціонування. Опис логічної структури, алгоритм, структура. Типи комп'ютерів і пристроїв, що використовуються при роботі програми. Формат, описання та спосіб кодування вхідних і вихідних даних.
курсовая работа [163,6 K], добавлен 01.04.2016Розробка алгоритму та написання програми обчислення множин. Доведення теоретико-математичних тотожностей і тверджень. Побудова диз’юнктивної нормальної форми. Розробка алгоритму та написання програми знаходження множини елементарних циклів у графі.
курсовая работа [184,4 K], добавлен 17.04.2011Розробка програми для вирішення графічної задачі. При вирішенні задачі необхідно cтворювати програму у середовищі програмування Turbo Pascal. Розробка алгоритму функціонування програми і надання блок-схеми алгоритму. Демонстрація роботи програми.
курсовая работа [1,3 M], добавлен 23.06.2010Алгоритмічна мова програмування універсального призначення Turbo Pascal. Розробка і створення програми для гри "Шибениця". Алгоритм функціонування программи, блок-схема алгоритму. Використання додаткових модулів Graph та Crt у процессі створення програми.
курсовая работа [2,0 M], добавлен 23.06.2010Розробка програми перевірки логічного мислення людини на мові програмування С++, результатом якої є моделювання координатного переміщення. Визначення структури вхідних та вихідних даних, вибір мови програмування. Розгляд алгоритму рішення задачі.
курсовая работа [55,8 K], добавлен 28.04.2015Розробка візуальної програми, яка містить головне меню та забезпечує введення-виведення даних у діалоговому вікні. Створення панелі інструментів, рядку стану. Реалізація функції мовою Assembler. Створення та підключення бібліотеки Dll. Робота з файлами.
курсовая работа [370,9 K], добавлен 01.04.2016Теоретичні відомості про язик С++. Розробка програми, що виконує основні арифметичні дії над простими та складними числами на язику С++. Опис алгоритму програми та її код. Інструкція по користуванню. Обгрунтовування вибору та складу технічних засобів.
курсовая работа [852,8 K], добавлен 30.11.2011Призначення ігрової програми "Змійка" для розвитку уваги та логічного мислення гравців. Розробка програми в середовищі C++ Builder 6, її функціонування в ОС Windows. Опис алгоритму та основних функцій програми. Основні переваги та недоліки мови С++.
реферат [1,7 M], добавлен 17.12.2014Розробка програми для моделювання роботи алгоритму Дейкстри мовою C# з використанням об’єктно-орієнтованих принципів програмування. Алгоритм побудови робочого поля. Програмування графічного інтерфейсу користувача. Тестування програмного забезпечення.
курсовая работа [991,4 K], добавлен 06.08.2013