Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Звіт ТРПЗ(голяк).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.19 Mб
Скачать

6.Лабораторна робота №1

Тема: Прості типи даних. Базові конструкції мови С.

Мета роботи: Навчитися складати алгоритм розв’язку задач у вигляді блок-схем, ознайомитися з простими типами даних та базовими конструкціями мови Сі, оволодіти практичними навичками складання, введення, редагування і виконання найпростіших діалогових програм.

Хід роботи:

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

Лістинг:

#include<iostream.h>

#include<conio.h>

void funk(int a,int b,int p){

int x=0;

for(int i=a;i<=b;i++){

if(p==i) x=1;

}

for(i=b;i<=a;i++){

if(p==i) x=1;

}

if(x==1) cout<<"shyslo "<<p<<" naleshit diapazonu "<<a<< " - "<<b;

else

cout<<"shyslo "<<p<<" ne naleshit diapazonu "<<a<<" - "<<b;

}

void main(){

clrscr();

int a,b,c;

cout<<"Vvedit diapazon a=";

cin>>a;

cout<<"\t\tb=";cin>>b;

cout<<"Vvedit shyslo p=";

cin>>c;

funk(a,b,c);

getch();

}

Приклад працездатності:

Висновок: Навчився складати алгоритм розв’язку задач у вигляді блок-схем, ознайомився з простими типами даних та базовими конструкціями мови Сі, оволодів практичними навичками складання, введення, редагування і виконання найпростіших діалогових програм.

7.Лабораторна робота №2

Тема: Цикли та розгалуження. Функції та їх застосування.

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

Хід роботи:

Постановка задачі:

Функція F повинна приймати дійсне значення, якщо вираз (Ац ЧИ Вц ЧИ Сц) не дорівнює нулю, і ціле значення в протилежному випадку. Через Ац, Вц і Сц позначені цілі частини значень аb,c, операція ЧИ — порозрядна.

Лістинг:

#include<iostream.h>

#include<conio.h>

#include<math.h>

void funk(float a,float b,float c,float x1,float x2, float h){

float y,i;int k=0;

for( i=x1;i<=x2;i+=h){

if(c<0 && i!=0){y=-(a*i)-c;

cout<<endl;

cout<<"\t"<<i<<"\t\t"<<y; }

else {if(c>0 && i==0) {y=(i-a)/-c;

cout<<endl;

cout<<"\t"<<i<<"\t\t"<<y<<endl;}

else {y=(b*i)/(c-a);

cout<<endl;

cout<<"\t"<<i<<"\t\t"<<y<<endl;}}

k++;

}

cout<<"kilkist ryadkiv="<<k;

}

void main(){

clrscr();

float a,b,c,x1,x2,h;

cout<<"Vvedit a,b,c";

cin>>a>>b>>c;

cout<<"vvedit x,y";

cin>>x1>>x2;

cout<<"vvedit krok h";

cin>>h;

cout<<"\tx"<<"\t\ty";

funk(a,b,c,x1,x2,h);

getch();

}

Приклад працездатності:

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

8.Лабораторна робота №3.1

Тема: Одновимірні та багатовимірні масиви, робота з текстовими рядками.

Мета: Навчитися складати програми обробки лінійних та двовимірних масивів, реалізовувати найпростіші операції з текстовими рядками.

Хід роботи:

Постановка задачі: В одномірному масиві, що складається з N дійсних елементів, обчислити:

суму елементів масиву з непарними елементами;

суму елементів масиву, які розташовані між першим і останнім від’ємними елементами.

Переставити перші M елементів в кінець масиву (M вводиться з клавіатури, M<N).

Лістинг:

#include<iostream.h>

#include<conio.h>

#include<math.h>

#include<stdlib.h>

void mas(int *y,int n){

int i;

cout<<"vvedit "<<n<<" elementiv masyva"<<endl<<"\t";

for(i=0;i<n;i++){

cin>>y[i];

cout<<"\t";

}

}

void suma_nep(int *y,int n){

int i,s=0;

for( i=0;i<n;i++){

if(y[i]%2==0);

else s+=y[i];

}

cout<<"suma neparnih elementix="<<s;

}

void suma_miz(int *y,int n){

int vid1,vid2,s=0,i;

for (i=0;i<n;i++){

if(y[i]<0) vid2=i;}

for (i=n-1;i>=0;i--){

if(y[i]<0) vid1=i;}

for (i=vid1+1; i<vid2;i++){

s+=y[i];}

cout<<endl<<"suma miz perh i ost videmn elem="<<s;

}

void perest(int *y,int n, int m){

int i;

for(i=m;i<n;i++){

cout<<endl<<y[i];}

for(i=0;i<m;i++){

cout<<endl<<y[i];}

}

void main(){

clrscr();

int n,m;

cout<<"vvedit rozmir masuva n=";

cin>>n;

int *y=new int[100];

mas(y,n);

suma_nep(y,n);

suma_miz(y,n);

cout<<endl<<"vvedit m=";

cin>>m;

perest(y,n,m);

delete y;

getch();

}

Приклад працездатності:

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

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