Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LR_Zashirinskaya.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.26 Mб
Скачать

Міністерство освіти і науки України

Дніпропетровський коледж ракетно-космічного машинобудування

Дніпропетровського національного університету імені Олеся Гончара

ЗВІТ

з лабораторних робіт

з дисципліни «Основи програмування та алгоритмічні мови»

Спеціальність 5.05010301

Група ПЗ-14-1

Виконав Защирінська.А.О.

Перевірив Бабенко I. Б.

2015

ЗМІСТ

ЛАБОРАТОРНА РОБОТА № 1 3

ЛАБОРАТОРНА РОБОТА № 2 5

ЛАБОРАТОРНА РОБОТА № 3-4 7

ЛАБОРАТОРНА РОБОТА № 5-6 10

ЛАБОРАТОРНА РОБОТА № 7-8 14

ЛАБОРАТОРНА РОБОТА № 9-10 21

ЛАБОРАТОРНА РОБОТА № 11-12 23

ЛАБОРАТОРНА РОБОТА № 13 27

ЛАБОРАТОРНА РОБОТА № 14-15 32

ЛАБОРАТОРНА РОБОТА № 16 32

ЛАБОРАТОРНА РОБОТА № 17-18 42

ЛАБОРАТОРНА РОБОТА № 19-20 48

ЛАБОРАТОРНА РОБОТА № 21 53

ЛАБОРАТОРНА РОБОТА № 1

ВІДПРАЦЮВАННЯ ЕТАПІВ РОБОТИ НА ПРИКЛАДІ НАЙПРОСТІШОЇ ПРОГРАМИ НА С (С++)

Мета: ознайомитися із структурою програми та з етапами роботи із середовищем С при написанні найпростішої програми.

Завдання : скласти та відлагодити програму, що перекладає введену температуру по Цельсію в температуру по Фаренгейту за формулою:

F=3/5(C-2).

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

//C

#include <stdio.h>

#include <conio.h>

int main ()

{ float f, c;

printf (“\n Vvedite temperature po celsiu:”);

scanf (“%f”, &c);

f=3.0/5.0*(c-2);

printf (“\n Vvedennaya temperature %-6.2f gradusov po celsiu preobrazovana”, c);

printf (“\n v temperature po farengeytu i ravna %-6.2f gradusov.”, f);

getch();

return 0;

}

//C++

#include <iostream.h>

#include <conio.h>

Int main ()

{ float f, c;

cout<<endl<<” Vvedite temperature po celsiu:”;

cin>>c;

f=3.0/5.0*(c-2);

cout<<endl<<” Vvedennaya temperature “<<c<<” gradusov po celsiu preobrazovana”;

cout<<endl<<” v temperature po farengeytu i ravna “<<f<<” gradusov.”;

getch();

return 0;

}

Вікно виконання програми

Висновок: ознайомилась із структурою програми та з етапами роботи із середовищем С при написанні найпростішої програми.

ЛАБОРАТОРНА РОБОТА №2

СКЛАДАННЯ ЛІНІЙНИХ ПРОГРАМ НА С (С++)

Мета: придбати практичні навички при написанні програм лінійних алгоритмів.

Завдання : скласти та відлагодити програму лінійного алгоритму на С та С++ :

Написала програму для розрахунку Z1 та Z2 за двома наступними формулами. Попередньо підготувада тестові приклади по другій формулі за допомогою калькулятора (результат вичісленія по першій формулі повинен збігатися з другої). Для використання математичних функцій бібліотеки C ++ підключила до програми заголовний файл <math.h>.

Z1=(cos-cos)2-(sin-sin)2

Z2= -4sin2 cos(+)

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

//=============== C ===========================

#include <stdio.h>

#include <math.h>

#include <conio.h>

Int main()

{

float A,B,z1,z2;

printf("\nVvedi A, B");

scanf("%f%f",&A,&B);

z1=pow((cos(A)-cos(B)),2)-pow((sin(A)-sin(B)),2);

printf("\nz1 ravno %f ",z1);

z2=(-4*pow((sin((A-B)/2.)),2))*(cos(A+B));

printf("\nz2 ravno %f ",z2);

getch();

return 0;

}

//================ C++ ========================

#include <math.h>

#include <conio.h>

#include <iostream>

using namespace std;

Int main()

{

int A,B,z1,z2;

cout<<"Vvedi A, B"<<endl;

cin>>A;

cin>>B;

z1=pow((cos(A)-cos(B)),2)-pow((sin(A)-sin(B)),2);

cout<<"z1 ravno=%f "<<z1<<endl;

z2=(-4*pow((sin((A-B)/2.)),2))*(cos(A+B));

cout<<"z2 ravno=%f "<<z2<<endl;

getch();

return 0;

}

Вікно виконання програми

Висновок: я придбала практичні навички при написанні програм лінійних алгоритмів.

ЛАБОРАТОРНА РОБОТА №3-4

СКЛАДАННЯ ТА ВІДЛАГОДЖЕННЯ ПРОГРАМ

РОЗГАЛУЖЕНИХ ПРОЦЕСІВ

Мета: придбати практичні навички з складання та відлагодження програм розгалужених алгоритмів.

Завдання: написати програму розгалуженого алгоритму для підрахунку значення заданої функції, що використовує засоби введення\виведення як С так і С++.

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

//=============== C++ ===========================

#include <iostream>

#include <math.h>

#include <conio.h>

void main()

using namespace std;

{

setlocale(LC_ALL,"rus");

float f,k,d;

cout<<"Введите f"<<endl;

cin>>f;

if(f>0)

{

cout<<"Введите k"<<endl;

cin>>k;

d=f*pow(k,1./2.);

cout<<"d= "<<d<<endl;}

else

{ cout<<"Введите k"<<endl;

cin>>k;

if(k>0)

{

d=f/pow(k,1./2.);}

else

{cout<<"Решений нет!"<<endl;}

}}

return 0;

}

//=============== C ===========================

#include <stdio.h>

#include <conio.h>

#include <math.h>

void main()

{ float f,k,d;

printf("\nВведите f");

scanf("%f",&f);

if(f>0)

{

printf("Введите k");

ccanf("%f",&k);

d=f*pow(k,1./2.);

printf("\nd=&-9.3f",d);}

else

{

if(k>0)

{

d=0;

printf("\nd=%-9.3f",d);}

else

{printf("\nVvdite k=");

scanf("%f",&k);

if(k>0)

{d=f/pow(k,1./2.);

printf("\nd=%-9.3f",d);

}

else

{printf("\nRecheniy net");

} } }

getch(); }

Вікно виконання програми

Структурна схема програми

Висновок: придбала практичні навички з складання та відлагодження програм розгалужених алгоритмів.

ЛАБОРАТОРНА РОБОТА № 5-6

СКЛАДАННЯ ТА ВІДЛАГОДЖЕННЯ ПРОГРАМ РОЗГАЛУЖЕНИХ ПРОЦЕСІВ З ВИКОРИСТАННЯМ ВКЛАДЕНИХ IF

Мета: придбати практичні навички з складання та відлагодження програм розгалужених алгоритмів.

Завдання: написати програму розгалуженого алгоритму, використовуючи вкладені іf, на С(С++).

Структурна схема програми

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

//================= C ======================

#include <stdio.h>

#include <conio.h>

using namespace std;

void main()

{

float f,b;

printf("b = ");

scanf("%f", &b);

if(b>0)

{

float a;

printf("a = ");

scanf("%f",&a);

if(a+2*b<0)

printf("Нет решения!");

else

{

f = pow((double)a+2*b,1./4.);

printf("f = &-8.3f",f);

}

}

else if(b<0)

{

float e,a;

printf("e = ");

scanf("%f",&e);

printf("a = ");

scanf("%f",&a);

f = pow(e,a)+pow(e,b);

printf("f = &-8.3f",f);

}

else

{

float a;

printf("a = ");

scanf("%f",&a);

f = fabs(a-10);

printf("f = &-8.3f",f);

}

getch();

}

//================= C++ ======================

#include <iostream>

#include <conio.h>

using namespace std;

void main()

{

float f,b;

cout << "b = ";

cin >> b;

if(b>0)

{

float a;

cout << "a = ";

cin >> a;

if(a+2*b<0)

cout << "Нет решения!" << endl;

else

{

f = pow((double)a+2*b,1./4.);

cout << "f = " << f << endl;

}

}

else if(b<0)

{

float e,a;

cout << "e = ";

cin >> e;

cout << "a = ";

cin >> a;

f = pow(e,a)+pow(e,b);

cout << "f = " << f << endl;

}

else

{

float a;

cout << "a = ";

cin >> a;

f = fabs(a-10);

cout << "f = " << f << endl;

}

getch();

}

В ікно виконання програми

Висновок: придбала практичні навички з складання та відлагодження програм розгалужених алгоритмів.

ЛАБОРАТОРНА РОБОТА №7-8

СКЛАДАННЯ ТА ВІД ЛАГОДЖЕННЯ ПРОГРАМ

З ВИКОРИСТАННЯМ ОПЕРАТОРА SWITCH

Мета: придбати практичні навички з складання та відлагодження програм

розгалужених алгоритмів з використанням оператора switch.

Завдання :

  1. Написати програму, яка за бажанням користувача обчислити площу однієї з геометричних фігур – трикутник, прямокутник, коло чи трапеція. Для організації розгалуження використати оператор Switch.

  2. Написати програму, що обчислює значення функції F за приведеними нижче формулами (x,a,b,c – дійсні числа) та виводить на екран:

  • введені початкові дані - x,a,d,c;

  • отриманий результат F;

  • умову, при якій було обчислено F.

F=

Структурна схема програми

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

// Программа нахождения площадей

#include <iostream>

#include <conio.h>

using namespace std;

void main()

{

setlocale(0,"");

int vibor;

float S;

const float Pi = 3.14159265358979;

bool error(0);

cout << "Выберите фигуру:" << endl;

cout << "1. Трeугольник\n";

cout << "2. Прямоугольник\n";

cout << "3. Круг\n";

cout << "4. Трапеция\n";

cout << "\nВаш выбор >> ";

cin >> vibor;

switch(vibor)

{

case 1:

{

float a,h;

cout << "\na = ";

cin >> a;

cout << "h = ";

cin >> h;

S = a/2*h;

break;

}

case 2:

{

float a,b;

cout << "\na = ";

cin >> a;

cout << "b = ";

cin >> b;

S = a*b;

break;

}

case 3:

{

float R;

cout << "\nR = ";

cin >> R;

S = Pi*R*R;

break;

}

case 4:

{

float a,b,h;

cout << "\na = ";

cin >> a;

cout << "b = ";

cin >> b;

cout << "h = ";

cin >> h;

S = (a+b)/2*h;

break;

}

default:

{

cout << "\nОшибка: Неверный ввод!";

error = true;

break;

}

}

if(!error)

cout << "\nS = " << S;

getch();

}

Вікно виконання програм

Структурна схема програми

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

// Программа вычисление функции

#include <iostream>

#include <conio.h>

using namespace std;

void main()

{

setlocale(0,"");

float f,a,b,c,x;

enum vibor{ONE=1,DEUX,TRI};

vibor v=TRI;

bool error=0;

cout << "Введите x >> ";

cin >> x;

cout << "Введите a >> ";

cin >> a;

cout << "Введите b >> ";

cin >> b;

cout << "Введите c >> ";

cin >> c;

if(x<0.6 && b+c!=0)

v = ONE;

else if(x>0.6 && b+c==0)

v = DEUX;

switch(v)

{

case ONE:

{

f = a*x*x + b*b + c;

break;

}

case DEUX:

{

if(x-c==0)

error=1;

else

f = (x-a)/(x-c);

break;

}

default:

{

if(c==0||a==0)

error=1;

else

f = x/c + x/a;

break;

}

}

if(!error)

cout << "F = " << f;

else

cout << "Error: Неверный ввод!";

getch();}

Вікно виконання програм

Висновок: придбала практичні навички з складання та відлагодження програм розгалужених алгоритмів з використанням оператора switch.

ЛАБОРАТОРНА РОБОТА №9-10

СКЛАДАННЯ ТА ВІДЛАГОДЖЕННЯ ПРОГРАМ

З ВИКОРИСТАННЯМ РЕГУЛЯРНИХ ЦИКЛІВ

Мета: придбати практичні навички з складання та відлагодження програм циклічних алгоритмів з використанням оператора for.

Завдання : написати та відлагодити програму для наступної задачі:

Порахувати суму чисел з діапазону [0;5] серед 9-ти, що вводяться.

С труктурна схема програми

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

#include <iostream>

#include <conio.h>

using namespace std;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]