Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторні роботи по програмуванні(14 лаб).doc
Скачиваний:
77
Добавлен:
16.05.2015
Размер:
1.43 Mб
Скачать

Приклад виконання завдання 1

Варіант 6. Розробити програму для виводу на екран вихідного динамічного масиву, упорядкованого за зростанням методом бульбашки.

Дана програма буде складатися з основної функції int main(), та п’яти функцій для виконання поставленої задачі:

float()*Create_1D_Mas(float*m,int n) - функція призначена для створення масиву;

void Vvod_1D_Mas(float*m,int n) - функція призначена для заровнення масиву;

void Sortirovka_1D_Mas(float*m,int n) - функція призначена для сортування масиву методом бульбашки;

void Print_1D_Mas(float*m,int n) - функція призначена для виведення масиву;

void Clear_1D_Mas(float*m) - функція призначена для очистки масиву.

Програма буде мати наступний вигляд:

Лістинг програми

#include<stdio.h>

#include<conio.h>

#include<math.h>

float*()Create_1D_Mas(float*m,int n);

void Vvod_1D_Mas(float*m,int n);

void Sortirovka_1D_Mas(float *m,int n);

void Print_1D_Mas(float*m,int n);

void Clear_1D_Mas(float*m);

float()*Create_1D_Mas(float*m,int n)

{

m=new float[n];

}

void Vvod_1D_Mas(float*m,int n)

{

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

scanf("%f",&m[i]);

}

void Sortirovka_1D_Mas(float*m,int n)

{

int b;

float*t;

do

{

b=0;

for(int i=0;i<n-1;i++)

{

if(m[i]>m[i+1])

{

float t=m[i];

m[i]=m[i+1];

m[i+1]=t;

b=1;

}

}

}while(b);

}

void Print_1D_Mas(float*m,int n)

{

for(int j=0;j<n;j++)

printf("%6.2f ",m[j]);

printf("\n");

}

void Clear_1D_Mas(float*m)

{

if(m==NULL)

{

printf("масив не створений");

}

if(m)

{

delete[]m;

m=NULL;

}

}

int main()

{

clrscr();

float*arr;

int n=5;

Create_1D_Mas(arr,n);

Printf(“Введіть елементи масиву\n”);

Vvod_1D_Mas(arr,n);

Printf(“Вихідний масив:\n”);

Sortirovka_1D_Mas(arr,n);

Print_1D_Mas(arr,n);

Clear_1D_Mas(arr);

getch();

return 0;

}

Тестування:

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

Наприклад сформуємо масив з 5 елементів такого виду:

4 2 5 1 2

З введених даних наочно видно, що впорядкованим за зростанням масивом з даних елементів буде масив:

1 2 3 4 5

Тепер введемо ці ж дані в програму і перевіримо результат.

Введіть елементи масиву

4

2

5

1

2

Вихідний масив:

1 2 3 4 5

Приклад виконання завдання 2

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

Дана програма буде складатися з основної функції int main(), та п’яти функцій для виконання поставленої задачі.

F2D Create_2D_Mas(F2D m,int str,int stp) - функція призначена для створення масиву;

void Vvod_2D_Mas(F2D m,int str,int stp) - функція призначена для введення масиву;

void Obrobka_2D_Mas(F2D m,int str,int stp) - функція призначена для обчислення суми усіх негативних елементів кожного рядка даного двовимірного динамічного масиву і їх кількості в кожнім рядку;

void Print_2D_Mas(F2D m,int str,int stp) - функція призначена для виведення масиву;

void Clear_2D_Mas(F2D m,int str,int stp) - функція призначена для очистки масиву

Програма буде мати наступний вигляд: