- •Розділ 1. Програмування в середовищі Delphi
- •Опис середовища Delphi
- •Якщо потрібно розташувати компонент десь на формі, клацають один раз на піктограмі і один раз у потрібному місці форми. Вибраний компонент можна
- •Практичні завдання
- •2.2 Практичні завдання
- •Початок
- •Розділ 3. Застосування системи Mathcad
- •3.1 Опис системи MathСad
- •Практичні завдання
- •Розділ 4. Текстовий редактор Ms word
- •4.1 Опис текстового редактора Ms Word
- •4.2 Практичні завдання
- •Розділ 5. Охорона праці
- •Висновки
- •Перелік джерел
- •Додаток
2.2 Практичні завдання
1. Скласти і виконати програму, задавши вхідні дані самостійно:
1.Обчислити периметр і площю прямокутного трикутниказа заданим катетом і гострим кутом.
2.Внести врожайність трьох сортів пшениці і пльощі трьох відповідних полів(Га) скількі зібрали пшениці з кожного поля і трьох полів разом.
Графічне зображення алгоритму рішення задачі представлено на рис. 2.1.
Початок
l,a,b,c,p,s
b=a/sin(l)/cos(l)
c=sqrt(pow(a,2)+pow(b,2))
p=(a+b+c)
/ ;
s=sqrt(p*(p
- a)*(p - b)*(p - c))
p, s
Кінець
Початок
b,b1,b2,s,s1,s2,c
a,a1,a2
b=a*s
b1=a1*s1
b1=a1*s1
b1=a1*s1
b,b1,b2,,c
Кінець
Рисунок 2.1 – Блок-схема до завдання №1
Призначення програми:
Програма призначена для розрахування довжини кола і площі круга з врахуванням діаметру круга.
Рисунок 2.2 – Форма головна підпрограми
Інструкція:
1.В поле «Діаметр круга: введіть необхідне значення;
2.Для розрахування натисніть кнопку «Порахувати»;
3. Щоб вийти з програми натисніть на верхній правий кут;
Рисунок 2.3 – результат виконання підрограми №1
Блок коду:
b=a/sin(l)/cos(l);
c=sqrt(pow(a,2)+pow(b,2));
p=(a+b+c) / 2;
s=sqrt(p*(p - a)*(p - b)*(p - c));
Призначення програми:
Програма призначена для для знаходження врожайності трьох різних полів пщениці
Інструкція:
1.В поля «Врожайність першого сорту пшениці» і «Врожайність другого сорту пшениці» та «Врожайність третього сорту пшениці» введіть відповідні значення;
2.Для розрахування натисніть кнопку «Розрахувати»;
3.Щоб вийти з програми натисніть на верхній правий кут;
Рисунок 2.4– результат виконання підпрограм №2
Блок коду:
b=a*s;
b1=a1*s1;
b2=a2*s2;
c=b+b1+b2;
2. Трикутник задано координатами вершин А(0;0), В(і; і-1) та С(-і; і+1), де і – номер варіанту.
Обчислити бісектрису Wc та медіану M.
Графічне зображення алгоритму рішення задачі представлено на рис. 2.6.
Початок
i,A(0;0),
B(i;i-1), C(-i;i+1)
мmьььasmmmmMmmM
Кінець
Рисунок 2.6 –Блок-схема до завдання №2
Призначення програми:
Програма призначена для розрахування бісектриси кута та знаходження медіани.
Рисунок 2.7 – Головна форма «Завдання №2»
Інструкція:
1.В поле «Номер вашого варіанту» введіть ваш варіант;
2.Для розрахування натисніть кнопку «Розрахувати»;
3.Щоб вийти з програми натисніть кнопку «Вихід».
Рисунок 2.8 – результат виконан\ня програми
Блок коду:
Bx = i; By = i - 1;
Cx = -i; Cy = i + 1;
angle = cos((ax * bx + ay * by)/(sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by)));
p = (AB + AC + Bx) / 2;
r = sqrt(abs(((p-AB)*(p-AC)*(p-BC))/p));
3. Ввести довільне значення х та обчислити значення функції
де
φ=tg(x+a)-logi|b+7|,
ω=
,
і
– номер варіанту.
Вхідні
дані (x,
a,
b,
c,
d)
ввести з клавіатури довільні. Результати
вивести на екран.
Графічне зображення алгоритму рішення задачі представлено на рис. 2.9.
Початок
a,
b, c, d, x
tg(x+a)-logi|b+7|
f
Кінець
Рисунок 2.9 – Блок-схема до завдання №3
Призначення програми:
Дана програма призначена для знаходження значення функції відносно введених параметрів, а сама – х.
Рисунок 2.10 – Головна форма «Функція»
Інструкція:
1.В поля a, b, c, d, x введіть відповідні значення;
2.Для розрахування натисніть кнопку «Розрахувати»;
3.Щоб вийти з програми натисніть хрестик в правому верхньому кутку.
Рисунок 2.11 – Результат виконання програми
Блок коду:
if (abs(x)> 10){
f = (abs(sin(x) / 3.12 + cos(pow(x,2))) - 8.3 * cos(1.2 * x)) * tan(x+a) - log(abs(b+7))/log(3.0);
} else {
f = (abs(sin(x) / 3.12 + cos(pow(x,2))) - 8.3 * cos(1.2 * x)) * pow((pow(x,2)+d*exp(1.3)),1./5);
4. Оплата робіт залежить від типу виконаної роботи чи виду підприємницької діяльності (А, Б, В) і нараховується за формулою:
де і – номер варіанту. Для робіт типу А податок становить 10%, для Б –15%, для И – 20%. Ввести тип роботи. Ввести нараховану суму, суму податку і суму до видачі.
Графічне зображення алгоритму рішення задачі представлено на рис. 2.12.
Початок
type
type = A
percent = y * 0,1 salary
= y - percent
Y=
type = Б
Y=
Y=
percent = y * 0,2 salary
= y - percent
percent = y * 0,15 salary
= y - percent
Y, percent, salary
Кінець
Рисунок 2.12 – Блок-схема до завдання №4
Призначення програми:
Дана програма призначена для вирахування нарахованої суми, суми податку і суми до сплати.
Рисунок 2.13 – Головна форма «Заробітня плата»
Інструкція:
1.Виберіть тип за допомогою радіо-кнопок та введіть х;
2.Для розрахування натисніть кнопку «Вирахувати»;
3.Щоб вийти з програми натисніть кнопку «Вихід».
Рисунок 2.14 – Результат виконання програми
Блок коду:
switch(type){
case 0:
salary = 100 * (abs(sin(x) / 3.12 + cos(pow(x,2))) - 8.3 * cos(1.2 * x)) * pow(2.0, 3 + 50);
percent = salary * 0.1;
salary_to_pay = salary - percent;
break;
case 1:
salary = 150 * (abs(cos(abs(2*x))/1.2 - cos(3*x-2) + 6.15) * pow(3.0, 3 + 100));
percent = salary * 0.15;
salary_to_pay = salary - percent;
break;
case 2:
salary = 200 * ((sin(x) * pow(cos(x), 2) * sin(x + 1.4)) / 0.85 + 7.14) * pow(4.0, 3 + 135);
percent = salary * 0.2;
salary_to_pay = salary - percent;
break;
6.Побудувати таблицю відповідностей між мірами. Початкове значення міри, крок зміни цього значення та кількість рядків у таблиці (10-15) задати самостійно у режимі діалогу. Оформити та таблицю якнайкраще, використовуючи формати виведення.
1.1 карат = 0,2г = 2,9412 гран.
2.1 гран = 0,068г = 0,038378 драхм.
Призначення програми:
Дана програма призначена для переведення одних одиниць вимірювання в інші з урахуванням кроку.
Рисунок 2.19 – Форма «Завдання №6»
Інструкція:
1.Виберіть тип: вхідну одинцю вимірювання і одиниці вимірювання результату;
2.Введіть необхідну інформацію в поля: «Кількість елементів», «Початкове значення», «Крок»;
3.Для розрахунку натисніть кнопку «Перевести»;
4.Щоб вийти з програми натисніть кнопку «Вихід».
Рисунок 2.20 – Результат виконання програми «Завдання №6»
Блок коду:
switch (type) {
case 0:
for (int i = 0; i < rows; i++) {
StringGrid1->Cells[0][i] = karat;
StringGrid1->Cells[1][i] = g = karat * 0.2;
StringGrid1->Cells[2][i] = gran = karat * 2.9412;
karat += step;
}
break;
case 1:
for (int i = 0; i < rows; i++) {
StringGrid1->Cells[0][i] = gran;
StringGrid1->Cells[1][i] = gran = gran * 0.068;
StringGrid1->Cells[2][i] = drahm = gran * 0.038378;
gran += step;
}
break;
}
7. Обчислити значення змінної z = ab - π, де
і – номер варіанту, k –цілі числа. Функції f вибрати з таблиці. Ввести значення i, a, b, z.
Призначення програми:
Дана програма призначена для знаходження добутку двох виразів – суми і добутку.
Рисунок 2.21 – Форма «Завдання №7»
Інструкція:
1.Введіть ваш варіант та х в поля «Ваш варіант» та «Значення х»
2.Натисніть кнопку «Розрахувати», щоб отримати результат;
4.Якщо бажаєте вийти – натисніть хрестик в правому верхньому кутку;
Рисунок 2.22 – Результат виконання програми
Блок коду:
f = a = b = 12.4 * sin(abs(x/2.1)) - 8.3 * cos(1.2 * x);
for (int k = i; k <= i+8; k++) {
b += f + pow(5.0,k);
if (k <= 5) a += f + pow(6.0,k);
}
8.
Обчислити
суму ряду
,
де
,
і
– номер варіанту, х
– довільне дане з проміжку (0;1) з точністю
е=0,001.
Скільки потрібно доданків для досягнення
заданої точності.
Призначення програми:
За допомогою цієї програми можна протабулювати функцію з врахування варіанту користувача та вивести попарно значення у та х.
Рисунок 2.23 – Форма «Завдання №8»
Інструкція:
1.Введіть дані в поле «Введіть х:»;
2.Для того, щоб вивести значення кожного добутку суми натисніть кнопку «Обчислити»;
3.Щоб вийти з програми натисніть кнопку «Вихід».
Рисунок 2.24 – Результат виконання програми «Завдання №9»
Блок коду:
while(a < e){
a += pow(-1.0,k)*((12.4 * sin(abs(x/2.1)) - 8.3 * cos(1.2 * x)) + pow(7,k*pow(x,k)))/fac(k);
Memo1->Lines->Add("a[" + IntToStr(k) + "] = " + FloatToStrF(a,ffGeneral,3,3));
k++;
9. Протабулювати функцію у=fi+8(x) на проміжку [0;і] з кроком h=0,1і, де і – номер варіанту. Результати обчислень вивести у вигляді таблиці пар чисел х, у. Виконати додаткове завдання, якщо шуканих даних немає, вивести про це повідомлення.
– обчислити добуток та кількість усіх значень функції у, для яких виконується нерівності y<-3 або у>0.4
Призначення програми:
За допомогою цієї програми можна протабулювати функцію з врахування варіанту користувача та вивести попарно значення у та х.
Рисунок 2.25 – Форма «Завдання №9»
Інструкція:
1.Введіть дані в поле «Ваш варіант:»;
2.Для того, щоб протабулювати функцію натисніть «Протабулювати»;
3.Щоб вийти з програми натисніть кнопку «Вихід».
Рисунок 2.26 – Результат виконання програми «Завдання №9»
Блок коду:
for (x = 0; x <= i; x += 0.1 * i) {
y = (sin(x) - cos(pow(x, 3)) * sin(pow(x, 2) - 4.2) + 4,27) * x;
if (y < -3.2 || y > 0){
dob *= y;
sum += y;
count++;
}
Memo1->Lines->Add("x = " + FloatToStr(x) + "\ty = " + FloatToStr(y));
}
10.
Утворити
і вивести масив у
з елементами
,
де і
– номер варіанту, k=1,2,...,7.
Виконати додаткове завдання. У разі
відсутності шуканих даних вивести про
це повідомлення:
– усі додатні елементи крім максимального занести в інший масив.
Призначення програми:
За допомогою цієї програми можна заповнити масив значеннями відповідно до введеного х та перезаписати його додатні значення в інший масив.
Рисунок 2.27 – Форма «Завдання №10»
Інструкція:
1.Введіть значення х в поле «Введіть х:»;
2.Щоб заповний перший масив F_arr і записати додатні елементи в другий масив S_arr натисніть кнопку «Вивести»;
3.Щоб вийти з програми натисніть кнопку «Вихід».
Рисунок 2.28 – Результат виконання програми «Завдання №10»
Блок коду:
for (int i = 0; i < 7; i++) {
arr[i] = cos(pow(x, 3)) / 2.1 + cos(pow(x, 2)) / 1.1 - 8.3 * sin(3 * x + 1) * i ;
Memo1->Lines->Add("[" + IntToStr(i) + "] - " + FloatToStrF(arr[i],ffGeneral, 3, 3));
}
for (int i = 0; i < 7; i++) {
if (arr[i] > 0) {
flag = true;
count++;
if (count == 3 || count == 6) {
sum += arr[i];
}
}
11.
Утворити
масив з елементами
,
де і
–
номер
варіанту, k, n = 1,2,3,4. Вивести його на екран у вигляді таблиці (матриці). Виконати додатково завдання. Для введення, виведення масиву та додаткового завдання написати функції:
обчислити добуток тих значень елементів , для яких справджується нерівності аkn<-1 або аkn>6.
Призначення програми:
За допомогою цієї програми можна заповнити матрицю значенням та вивести добутку елементів < -1 та >1.
Рисунок 2.30– Форма «Завдання №11»
Інструкція:
1.Запустіть програму, натиснувши на ярлик «Project2.exe»;
2.Щоб запустити програму на виконання натисність кнопку «Заповнити»;
3.Щоб вийти з програми натисніть кнопку «Вихід».
Рисунок 2.31 – Результат виконання програми «Завдання №11»
Блок коду:
void Enter(double arr[4][4]){
double x;
for (int k = 0; k < 4; k++) {
float i = 1;
for (int n = 0; n < 4; n++) {
x = k;
arr[k][n] = n * (sin(pow(x, 2)) * cos(pow(x,3)) - sin(x) + 5.2) * k + sin(i) * (2 * sin(x) * sin(2 * x - 1.5) * cos(2 * x + 1.5) - 6) * n;
Form3->Memo1->Lines->Strings[k] = Form3->Memo1->Lines->Strings[k] + FloatToStrF(arr[k][n],ffGeneral, 3, 3) + "\t";
i++;
}
Form3->Memo1->Lines->Add("\n");
}
}
void Search(double arr[4][4]){
int count = 1;
for (int k = 0; k < 4; k++) {
for(int n = 0; n < 4; n++){
if (arr[k][n] > 1 && arr[k][n] < 6) count++;;
}
}
12.
Ввести
значення цілочислових матриць А розміром
nxn,
В розміром nxn,
n=4.
Обчислити
матрицю С згідно
з заданим завданням, використавши
функції користувача: С=
;
Призначення програми:
Дана програма використовується для знаходження матриці С, яка є результатом певних дій(згідно варіанту) над матрицями А та В.
Рисунок 2.33 – Результат виконання програми «Завдання №12»
Блок коду:
void SearchC(double a[4][4], double b[4][4]){ //функція для виконання дій на матрицями
Form3->Memo3->Lines->Clear();
double buffer[4][4], C[4][4];
int count = 0;
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
buffer[i][j] = a[j][i]; //в буферний масив записуєм транспоновану матрицю А
}
}
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
C[i][j] = pow(a[i][j]*buffer[i][j],2); //присвоюєм С результат множення
//А на транспоновану А
C[i][j] -= 2*b[i][j]; //віднімаємо від С матрицю Б помножену на 2
Form3->Memo3->Lines->Strings[count] = Form3->Memo3->Lines->Strings[count] + "[" + i + "][" + j + "] - " + C[i][j] + " "; //виводимо матрицю С в таблицю
}
Form3->Memo3->Lines->Add("");
count++;
}
