Розробка програми на мові високого рівня при рішенні на комп’ютері прикладної інженерної задачі

Розрахунок резисторів прямокутної та складної форми. Особливість розробки блок-схеми алгоритму. Коротка характеристика мови програмування С++. Аналіз тестування і налагодження програми. Виявлення та усунення ряду семантичних та синтаксичних помилок.

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

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

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

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

1

ВСТУП

Курсова робота була виконана з метою отримання навичок розробки програми на мові високого рівня при рішенні на ЕОМ прикладної інженерної задачі, а також тестування, налагоджування та документування програми.

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

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

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

1. АНАЛІЗ ЗАВДАННЯ НА КУРСОВУ РОБОТУ

Завдання складається із загальної частини і індивідуального завдання.

Загальна частина містить постановку конкретної прикладної задачі та загальний опис методу її рішення.

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

1.1 Загальна частина завдання

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

Розрахунок резистора полягає у визначенні його розмірів (в мм)- довжини l і ширини для прямокутного резистора(див.рис.1), ширини смужки b, відстані між смужками а, розмірів X і Y, а також числа ланок n- для резистора у формі меандра(див. рис.2).

Для зручності розробки алгоритму і програми, початкові данні умовно розділені на дві групи - данні із змінними(таб.1.1) і постійними(таб.1.2) величинами, а також вказані їх реальні чисельні значення даних і отримувати фізично обґрунтовані результати. Це дає можливість проводити контроль початкових даних.

Таблиця 1.1- Початкові данні для розрахунку(змінні значення)

Позначення і розмірність

R,

кОм

с,

кОм/кв

Р,

мВт

Р0,

мВт/мм2

Найменування

Номінальний опір резистора

Опір квадрата резистивної плівки

Потужність розсіювання резистора

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

Значення

0,05…10000

0,01…50

5…50

10…30

Таблиця 1.2- Початкові данні для розрахунку (постійні значення)

Позначення і розмірність

bтехн,

мм

lтехн,

мм

Дb,

мм

Дl,

мм

гR

amin,

мм

h,

мм

Найменування

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

Похибка відтворення ширини і довжини резистора

Допустима похибка коефіцієнта форми резистора

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

Крок координатної сітки

Значення

0,1

0,3

0,01

0,03

0,1

0,3

0,01

Порядок розрахунку резистора

Визначається значення коефіцієнта форми резистора kф

kф = .

В залежності від значення kф обирається форма резистора:

? при 1 ? kф ? 10 - резистор прямокутної форми (рис.1);

? при 0,1 ? kф < 1 - резистор прямокутної форми, у якого довжина менше ширини (рис.1, l<b);

? при kф > 10 - резистор складної форми (використовуються резистори різних конструкцій, в даній роботі - резистор типа “меандр”

? при kф < 0,1 - резистор конструювати не рекомендується.

Розміри прямокутного резистора зв'язані наступним співвідношенням:

kф = .

Для резистора з kф?1 розрахунок розмірів починають з визначення ширини. Ширину резистора обирають із умови:

b ? max {bтехн, b?, bпотужн.},

де b? - мінімальна ширина резистора, при якій забезпечується задана точність:

;

bпотужн. - мінімальна ширина резистора, при якій розсіюється задана потужність:

.

Після того, як визначена ширина резистора b, знаходять його довжину l за допомогою формули (2). Отримані розрахункові значення b і l округляють

з урахуванням кроку координатної сітки h по формулі:

,

де функція int(X) позначає виділення цілої частини X;

Wокругл, Wрозрах - відповідно округлене і розрахункове значення.

На цьому розрахунок резистора з kф?1 завершують. Для резистора з kф<1 розрахунок розмірів починають з визначення довжини.

Довжину резистора вибирають з умови:

l ? max {lтехн, l?, lпотужн},

де l? - мінімальна довжина резистора, при якій забезпечується задана точність:

;

lпотужн - мінімальна довжина резистора, при якій розсіюється задана потужність:

.

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

2. Розрахунок резистора складної форми

Розрахунок резистора типу “меандр” проводять в такій послідовності.

Визначають ширину резистора по формулах (3)…(5) і округляють отримане значення по формулі (6).

Знаходять довжину середньої лінії меандра

Задають відстань між смужками а (див. рис.2). Приймається a=b. Якщо a<amin, то приймають a=amin.

Знаходять крок однієї ланки меандру

t = a + b.

Визначають число ланок меандра по формулі

.

Обчислюють довжину меандру

X = n • (a + b).

Визначають ширину меандру

.

Перевіряють умову

.

Якщо ця умова виконується, то розрахунок закінчують. Інакше вимагається змінити конструкцію резистора через технологічні обмеження. Для цього змінюють відстань а і перераховують параметри резистора. При невиконанні умови (15) слід збільшити а на величину amin і повторити обчислення по формулах (11)…(14).

Кінець розрахунку

Для розрахунку декількох резисторів, для кожного з них задаються свої початкові дані (див.табл.1.1 і 1.2) та виконують відповідні дії по формулам (1)… (15) . Отже необхідно розробити алгоритм і програму розрахунку N тонкоплівкових резисторів. Кількість резисторів N задається користувачем разом з іншими початковими даними до розрахунку.

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

Індивідуальне завдання визначає форму використання обов'язкових елементів при розробці алгоритму і програми. Елементи індивідуального завдання наведені в таблиці 1.3

Таблиця 1.3

Номер варіанта

Контроль

початко-вих

даних

Організація взаємодії з користувачем

Використання масивів

Реалізація фрагмента методики у вигляді підпрограми (функції)

Розрахунок k-ого резистора в діапазоні значень с

Пошук макси-мального (max) або міні-мального (min) розра-хунково-го значення ширини b

Сорту-вання розрахункових значень ширини b за збільшенням (зменшенням)

Введення початкових даних

Розрахункова частина в цілому

Розрахунок коефіцієнта форми kф

Вибір максимального з трьох при розрахунку b і l

Округлення розрахункових значень b і l

Розрахунок резисторів прямокутної форми

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

Візуальний на екрані

Перевірка діапазону

“Запит-відповідь”

Меню користувача

Задані с1,…, сm

Задані споч, скін, ?с

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

45

-

+

-

+

-

+

-

убыв

0

-

+

-

1

+

-

Примітка: Типи підпрограм (стовпці 10-16):

“+” - функція довільного вигляду

“-” - реалізація у вигляді функції необов'язкова

“0” - функція без списку параметрів та повертаємих результатом

“1” - функція із списком параметрів та повертаємих результатом

2. РОЗРОБКА АЛГОРИТМУ РОЗВ'ЯЗАННЯ ЗАДАЧІ

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

Розробку алгоритму було проведено з врахуванням основних принципів структурного програмування. Задачу було розбито на під задачі, реалізація яких виконується окремими модулями. Алгоритм був розроблений шляхом втілення методу покрокової деталізації логіки його виконання. Реалізація проводилась з використанням типових конструкцій та базових алгоритмічних структур. Для представлення алгоритму в даній роботі був використаний графічний спосіб (метод блок-схем). Зображувати алгоритм у вигляді блок-схеми дуже зручно. Вона допомагає записати алгоритм структурно, у такому вигляді його легше зрозуміти і аналізувати. Перевагами цього метода є простота, наглядність та компактність. До недоліків можна віднести недостатні можливості описання структур даних. Алгоритм містить константи, початкові, проміжні та результуючі змінні в якості даних. Константи описані на початку алгоритму.

3. РОЗРОБКА ПРОГРАМИ

3.1 Коротка характеристика мови програмування С++

Спочатку мова С++ представляла собою розширення мови С. Вперше вона була розроблена в 1979 році Б. Страуструпом, співпрацівником компанії Bell Laboratories в м. Мюррей-Хіл. Спочатку мова називалась “С з класами” ,але в 1983 році її назва була перейменована на С++. Спочатку вона набула широку популярність як мова розробки операційної системи UNIX. Сьогодні С++ стала домінуючою системно-утворюючою мовою. На ній написана більшість сучасних операційних систем, утому числі ОС WINDOWS. Однією з цілей мови С++ було подолання цієї перепони. Мова С++ дозволяє програмістам справлятись з крупними складними програмами. C++ - гібридна мова, вона надає можливість програмувати й у структурному стилі (стилі C), і в об'єктно-орієнтованому, і в обох стилях відразу. С++ є мовою програмування загального призначення. Це мобільна мова: написані на неї програми можуть виконуватися на багатьох різних комп'ютерах і в різних ОС. С і С++ відносяться до числа найбільш потужних і найпоширеніших мов високого рівня.

3.2 Розробка програми на мові С++

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

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

4. ТЕСТУВАННЯ І НАЛАГОДЖЕННЯ ПРОГРАМИ

Мета тестування програми полягає в виявленні помилок, що є в програмі. Налагоджування полягає у виявлені та усунені причин помилок.

Всі помилки можна поділити на:

1.синтаксичні - помилки у структурі запису чисел, виразів, змінних, операторів і т.д.

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

4.1 План тестування

- порівняння тексту програми зі схемою алгоритму;

- візуальний контроль тексту програми;

- трансляція програми;

- редагування зовнішніх зв'язків;

- виконання програм;

- тестування програм за допомогою тестових прикладів;

4.2 Тестовий приклад

і

1

2

3

R

25

12

10

с

2

5

15

P

49

33

15

P0

27

16

21

Розрахунок вручну:

1) kф = 25 / 2 = 12,5 (<10)- меандр

b? = (0,01 + 0,03/12,5) / 0,1 = 0,124 мм

bпотужн = v(2*49)/(25*27) =0,38 мм

bтехн = 0,1 мм

b = maxb = 0,38мм

lсер=0,39*12,5=4,875 мм

a=0,39мм

t=0,39+0,39=0,78

n=int(v(4,875/0,78))= 2

X=2*(0,39+0,39)=1,56 мм

Y=(4,875-0,39*2)/2= 2,05

(У<10) -умова виконується , отже лінійні розміри меандра знайдені

2) kф1 = 12 / 5 = 2,4 [1;10]

- прямокутний рез-р

b? = (0,01 + 0,03/2,4) / 0,1 = 0,225 мм

bпотужн = v(5*33)/(12*16) =0,93 мм

bтехн = 0,1 мм

b = maxb = 0,93 мм

l= kф1*b=2,4*0,93=2,23 мм

3) kф = 10 / 15 = 0,67 [0,1;1)- прямокутний(l<b)

l? =(0.03+ 0.67*0.01)/0.1 =0,37 мм

lпотужн =v(10*15)/15*21)=0,7 мм

lтехн =0.3 мм

l= maxl=0,7мм

b=0,7/0,67=1,04 мм

4.3 Опис помилок

В процесі тестування було виявлено та усунено ряд семантичних та синтаксичних помилок . Наприклад,

1) Відсутність «;», «{», «}» у деяких місцях .

2)Проблеми з сортуванням по спаданню.

Також були виявлені і інші помилки: в основному пов'язані з меню, але всі вони були усунуті в процесі налагоджування.

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

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

5. ДОКУМЕНТУВАННЯ ПРОГРАМИ

При завантажені програми в середовище WINDOWS 7 в консольному додатку в вікні програми з'являється перше меню, яке складається з 5 пунктів: блок схема програмування тестування

1.Ввода даних.

2.Розрахунку.

3.Додаткового розрахунку.

4.Сортування по зростанню.

5.Вихід.

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

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

ВИСНОВКИ

Використання програмування на мові С++ дозволяє реалізувати складні, багато варіантові алгоритми синтезу плівкових резисторів з автоматичним вибором геометрії плівки.

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

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

СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ

1. Основи програмування та алгоритмічні мови / Методичні вказівки до виконання курсової роботи / О.Л.Павлов - Одеса: Наука і техніка, 2007

2. Конспект лекцій.

3. Программирование на С++: Учеб. пособие / Под ред. А.Д. Хомоненко. - С-Пб.: 1999.

ДОДАТКИ

Додаток 1

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

#include <iostream>

#include <conio.h>

#include <math.h>

#include <cstdlib>

using namespace std;

const double btex=0.1, ltex=0.3, delta_b=0.01, delta_l=0.03, gamma=0.1, a_min=0.3, h=0.01;

const int s=10;

double R[s];//номинальное сопротивление резистора

double ro[s];//сопротивление квадрата резистивной пленки

double P[s];//мощность рассеивания резистора

double P0[s];//макс. удельная мощность рассеивания резистивной пленки

double ro2[s];//сопротивление к-того резистора

double Kf2[s];//коф. форм. к-того резистора

double l2[s];// длина к-того резистора

double b2[s];// ширина к-того резистора

double Kf[s];//коеф. форм. используемого резистора

double l[s];//длина рассчитываемого резистора

double b[s];// ширина рассчитываемого резистора

double bd[s];//минимальная ширина резистора из-за которого обеспечивается заданная точность

double bpot[s];//минимальная ширина резистора, из-за которой рассеивается заданная мощность

double ld[s];//минимальная длина резистора из-за которой обеспечивается задання точность

double lpot[s];//минимальная длина резистора из-за которой обеспечивается задання точность

double t[s];//шаг одного звена меандра

double lser[s];// длина средней линии меандра

double n[s];//количество звеньей меанда

double X[s];//длина меандра

double Y[s];//ширина меандра

double a[s];//растояние между полосками

int i=0; //глобальный счетчик

char q;

double e;

double kf(double a, double b)

{

double c;

c=a/b;

return c;

}

double check_range(double begin, double end) //это проверка диапазона

{

double value;

do

{

cout<<" ["<<begin<<".."<<end<<"] :";

cin>>value;

}

while(value<begin||value>end);

return value;

}

void vvod()

{

cout<<"\ndannye dlya "<<i+1<<"-go rezistora\n";

cout<<" soprotivlenie = (0.05...10 000 kOm)\t";

R[i]=check_range(0.05,10000);

cout<<" soprotivlenie kvadrata plenki = (0.01...50 kOm/kv)\t";

ro[i]=check_range(0.01,50);

cout<<" moschnost' rasseivaniya = (5...50 mVt)\t";

P[i]=check_range(5,50);

cout<<" max udelnaya moschnost' = (10...30 mVt/mm2\t";

P0[i]=check_range(10,30);

}

double okrugl(double a)

{

a=int(a/h)*h+h;

return a;}

void pryamougolnyi_L()

{

bd[i]=(delta_b+delta_l/Kf[i])/gamma;

bpot[i]=sqrt(ro[i]*P[i]/(R[i]*P0[i]));

b[i]=btex;

if(bd[i]>b[i] && bd[i]>bpot[i] ) b[i] = bd[i];

if(bpot[i]>b[i] && bpot[i]>bd[i] ) b[i] = bpot[i];

l[i]=b[i]*Kf[i];

b[i]=okrugl(b[i]);

l[i]=okrugl(l[i]);

}

void pryamougolnyi_B()

{

ld[i]=(delta_l+Kf[i]*delta_b)/gamma;

lpot[i]=sqrt(R[i]*P[i]/(ro[i]*P0[i]));

l[i]=ltex;

if(ld[i]>l[i] && ld[i]>lpot[i] ) l[i] = ld[i];

if(lpot[i]>l[i] && lpot[i]>ld[i] ) l[i] = lpot[i];

b[i]=l[i]/Kf[i];

b[i]=okrugl(b[i]);

l[i]=okrugl(l[i]);

}

int main()

{

cout.precision(3);

int sel=0;

do

{

system("cls");

cout<<"\n1 - vvod dannyh";

cout<<"\n2 - raschet";

cout<<"\n3 - dopolnitelnyi raschet k-togo rezistora";

cout<<"\n4 - otsortiravat massiv b[]";

cout<<"\n5 - EXIT ";

rat:

cin>>sel;

if (sel<1||sel>5)

{

cout<<"1-5!!! ";

goto rat;

}

switch(sel)

{

case 1:

{

cout<<"vvedite kolichestvo rezistorov ";

In:

cin>>e;

if(e<1||e>10) goto In;

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

{

vvod();

}

}

break;

case 2:

{

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

{

//рассчет основной для введенного колличества резисторов

Kf[i]=kf(R[i], ro[i]);// расчет коефициента формы

if (Kf[i]>=1&&Kf[i]<=10)// прямоугольный при длине больше ширины

{

pryamougolnyi_L();

}

if (Kf[i]>=0.1&&Kf[i]<1)// прямоугольный при длине меньше ширины

{

pryamougolnyi_B();

}

if (Kf[i]>10)

{

bd[i]=(delta_b+delta_l/Kf[i])/gamma;

bpot[i]=sqrt(ro[i]*P[i]/(R[i]*P0[i]));

b[i]=btex;

if(bd[i]>b[i] && bd[i]>bpot[i] ) b[i] = bd[i];

if(bpot[i]>b[i] && bpot[i]>bd[i] ) b[i] = bpot[i];

b[i]=okrugl(b[i]);

l[i]=okrugl(l[i]);

lser[i]=b[i]*Kf[i];

a[i]=b[i];

if (a[i]<a_min)

a[i]=a_min;

PS3:

t[i]=a[i]+b[i];

n[i]=int(sqrt(lser[i]/t[i]));

X[i]=n[i]*(a[i]+b[i]);

Y[i]=(lser[i]-a[i]*n[i])/n[i];

if (Y[i]/a[i]>10)

{

a[i]=a[i]+a_min;

goto PS3;

};

l[i]=X[i];

b[i]=Y[i];

}

};

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

{

//вывод результатов

if (Kf[i]>=1 && Kf[i] <= 10)

{

cout << "\n" << i + 1 << "\tKf=" << Kf[i] << "\tl=" << l[i] << "\tb=" << b[i] << "\tpryamougolnaya forma l>b";

}

if (Kf[i]>=0.1&&Kf[i]<1)

{

cout << "\n" << i + 1 << "\tKf=" << Kf[i] << "\tl=" << l[i] << "\tb=" << b[i] << "\tpryamougolnaya forma l<b";

}

if (Kf[i]>10)

{

cout << "\n" << i + 1 << "\tKf=" << Kf[i] << "\tX=" << l[i] << "\tY=" << b[i] << "\tmeandr";

}

if (Kf[i]<0.1)

{

cout << "\n" << i + 1 << "\tKf=" << Kf[i] << "\trezistor nelsya sdelat'";

}

};

cout<<endl;

system("pause");

}

break;

case 3:

{

//рассчет к-того резистора

double m, v, d;

int k;//k - счетчик для цикла

cout<<"\nnomer rezistora= ";

cin>>i;

i=i-1;

cout<<"\nnachalnoe ro= "; //begin

cin>>m;

cout<<"\nkonechnoe ro="; //end

cin>>v;

cout<<"\nshag izmeneniya ro="; //step

cin>>d;

cout<<"\n\t\tKf\tl\tb\n";

double pl=(v-m)/d;

for(k=0;k<pl;k++)

{

if(k==0)

ro2[k] = m;

else

ro2[k]=ro2[k-1]+d;

ro[i]=ro2[k];

Kf[i]=kf(R[i], ro[i]);// расчет коефициента формы

Kf2[k]=Kf[i];

Kf[i]=kf(R[i], ro[i]);// расчет коефициента формы

if (Kf[i]>=1&&Kf[i]<=10)// прямоугольный при длине больше ширины

{

pryamougolnyi_L();

}

if (Kf[i]>=0.1&&Kf[i]<1)// прямоугольный при длине меньше ширины

{

pryamougolnyi_B();

}

if (Kf[i]>10)

{

bd[i]=(delta_b+delta_l/Kf[i])/gamma;

bpot[i]=sqrt(ro[i]*P[i]/(R[i]*P0[i]));

b[i]=btex;

if(bd[i]>b[i] && bd[i]>bpot[i] ) b[i] = bd[i];

if(bpot[i]>b[i] && bpot[i]>bd[i] ) b[i] = bpot[i];

b[i]=okrugl(b[i]);

l[i]=okrugl(l[i]);

lser[i]=b[i]*Kf[i];

a[i]=b[i];

if (a[i]<a_min)

a[i]=a_min;

poc:

t[i]=a[i]+b[i];

n[i]=int(sqrt(lser[i]/t[i]));

X[i]=n[i]*(a[i]+b[i]);

Y[i]=(lser[i]-a[i]*n[i])/n[i];

if (Y[i]/a[i]>10)

{

a[i]=a[i]+a_min;

goto poc;

};

l[i]=X[i];

b[i]=Y[i];

}

l2[k]=l[i];

b2[k]=b[i];

}

for(k=0;k<pl;k++)

{

cout<<"\n"<<k+1<<"-e znachenie\t"<<Kf2[k]<<"\t"<<l2[k]<<"\t"<<b2[k]<<"\t";

}

cout<<endl;

system("pause");

}

break;

case 4:

{

double swap;

cout<<"\nNe otsortirovanii massiv\n";

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

{

cout<<" b="<<b[i]<<endl;

}

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

{

for (i=0;i<(e-1);i++)

{

if(b[i]<b[i+1])

{

swap=b[i+1];

b[i+1]=b[i];

b[i]=swap;

}}}

cout<<"\nOtsortirovanii massiv\n";

for (int i=0;i<e;i++) cout<<" b="<<b[i]<<endl;

cout<<endl;

system("pause");

}

break;

case 5:

{

return 0;

}

break;

default:

{

cout<<"1-5!!!";

}

break;

}

}

while (sel!=5);

}

Додаток 2

Блок-схема

Додаток 3

Приклад роботи програми з тестовими даними

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

...

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

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

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

  • Основні розрахунки резисторів мікросхеми. Розробка алгоритму рішення задачі методом блок-схем. Характеристика та розробка програми на мові С++ з використанням принципів модульного і структурного програмування. План тестування і налагоджування програми.

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

  • Розробка програми для вирішення графічної задачі. При вирішенні задачі необхідно cтворювати програму у середовищі програмування Turbo Pascal. Розробка алгоритму функціонування програми і надання блок-схеми алгоритму. Демонстрація роботи програми.

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

  • Проектування архітектури гри "Тетріс". Аналіз вимог до неї. Вивчення особливостей реалізації, кодування та тестування програми. Алгоритм побудови робочого поля. Вибір мови програмування. Розробка і налагодження тексту програми. Інструкції з експлуатації.

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

  • Розробка та налагодження програми "Заробітна плата" на мові високого рівня С++ для комп'ютерів з операційною системою Windows 7. Текстуальний опис алгоритму. Створення UML-діаграми та обробка інформації з бази даних. Інструкція по роботі з програмою.

    курсовая работа [698,4 K], добавлен 14.10.2012

  • Дослідження алгоритму роботи та коду програми. Оцінка методом "чорного ящика". Тестування і налагодження розробленої програми на алгоритмічній мові високого рівня. Оцінювання якості програмного забезпечення за об’єктно-орієнтованими метриками зв’язності.

    курсовая работа [143,1 K], добавлен 11.03.2021

  • Створення програми для роботи з веб-камерою з автоматичним визначенням встановленої камери на комп'ютері. Характеристика апаратної конфігурації програми. Опис мови і середовища програмування. Розробка алгоритму, інструкції для програміста та користувача.

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

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

    дипломная работа [608,3 K], добавлен 26.10.2010

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

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

  • Методика розробки компілятору з вхідної мови програмування Pascal, оболонка, якого розроблена в середовищі програмування Borland C під операційну систему Windows. Блок-схема програми. Розробка оптимізатора та генератора коду. Тестування компілятора.

    курсовая работа [218,6 K], добавлен 04.06.2011

  • Створення двух файлів В1 і В2 з шести двоцифрових цифр з введенням в довільному порядку цифр з клавіатури із записуванням парних цифр в файл В3, а непарних - у файл В4. Процес розробки програми за допомогою мови "Асемблер". Блок-схема алгоритму задачі.

    курсовая работа [37,6 K], добавлен 26.11.2011

  • Розробка програми на мові програмування С++ з використанням об'єктно-орієнтованого програмування. Робота з файлами, графікою, класами, обробка числової інформації. Графічні засоби мови програмування. Алгоритм задачі та допоміжні програмні засоби.

    курсовая работа [102,5 K], добавлен 14.03.2013

  • Призначення менеджеру пристроїв. Обґрунтування вибору мови програмування. Розробка структурної схеми і опис діалогового інтерфейсу програми. Блок-схема програмного додатку, основні функції і алгоритм його роботи. Методики і інструкція його тестування.

    курсовая работа [3,4 M], добавлен 17.11.2014

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

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

  • Загальна характеристика алгоритму та опис програми. Керівництво системного програміста. Особливості запуску програми в Linux, FreeBSD, Windows. Аналіз результатів тестування програми, що проектується, вивчення та оцінка її практичної ефективності.

    курсовая работа [91,4 K], добавлен 13.06.2014

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

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

  • Проектування програми керування мікропроцесорним пристроєм світлової індикації на мові С та Assembler. Розробка алгоритму роботи програми, структурної та електричної принципових схем. Здійснення комп’ютерного моделювання для перевірки розроблених програм.

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

  • Розробка програми для моделювання роботи алгоритму Дейкстри мовою C# з використанням об’єктно-орієнтованих принципів програмування. Алгоритм побудови робочого поля. Програмування графічного інтерфейсу користувача. Тестування програмного забезпечення.

    курсовая работа [991,4 K], добавлен 06.08.2013

  • Принципи роботи команд мікросхеми 24LC08: читання, запису даних. Опис і блок-схеми програми і підпрограм, що обслуговує пристрій. Вибір середовища програмування і розробка програми, яка забезпечує можливість демонстрації команд. Проведення тестування.

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

  • Широкі можливості по використанню комп'ютерних навчальних систем. Розробка навчальної системи мультимедійного посібника з дисципліни "Інформатика і ОТ" на тему "Особливості мови програмування С++. Вказівники". Вимоги до розробки навчальної програми.

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

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