Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ИТиУвТС / Лабараторная работа №1 вариант 7

.docx
Скачиваний:
15
Добавлен:
01.04.2014
Размер:
85.94 Кб
Скачать

Министерство образования Республики Беларусь

Учреждение образования

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ

Кафедра систем управления

Лабораторная работа №1

Вариант №7

Название работы «Программирование алгоритмов с использованием динамических массивов»

Проверил Выполнил:

Минск 2012

Задание 1: Заданы два массива – А(5) и В(5). Подсчитать в них количество отрицательных элементов и первым на печать вывести массив, имеющий наименьшее их количество.

Код программы:

#include "stdafx.h"

#include <iostream>

using namespace std;

void main()

{

int sizeA=0, sizeB=0;

cout << "Vvedite razmer massiva A: ";

cin >> sizeA;

cout << "Vvedite razmer massiva B: ";

cin >> sizeB;

int *A = new int[sizeA];

int *B = new int[sizeB];

int i=0;

cout << "\nVvedite massiv A:" << endl;

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

{

cin >> A[i];

}

cout << "\nVvedite massiv B:" << endl;

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

{

cin >> B[i];

}

int quantA=0, quantB=0; //quantity-kolichestvo

cout << "\nKolichestvo otric. elementiv v massive A: ";

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

{

if(A[i]<0) quantA++;

}

cout << quantA << endl;

cout << "Kolichestvo otric. elementiv v massive B: ";

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

{

if(B[i]<0) quantB++;

}

cout << quantB << endl;

if(quantA<quantB)

{

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

{

cout << A[i] << " ";

}

cout << endl;

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

{

cout << B[i] << " ";

}

cout << endl;

}

else

{

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

{

cout << B[i] << " ";

}

cout << endl;

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

{

cout << A[i] << " ";

}

cout << endl;

}

delete[] A;

delete[] B;

}

Результат работы:

Задание 2: Дан массив – A(n,n). Написать программу его поворота на 270° относительно его центра. На печать вывести исходный и повернутый массивы.

Код программы:

#include "stdafx.h"

#include <iostream>

#include <conio.h>

using namespace std;

void main(){

int sizeA=0;

int i=0,j=0;

cout << "Vvedite razmernost` massiva A: ";

cin >> sizeA;

int **A = new int *[sizeA];

cout << "\nVvedite massiv A: " << endl;

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

{

A[i] = new int [sizeA];

}

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

for(j=0;j<sizeA;j++)

{

cin >> A[i][j];

}

////////////////////////////////////////////////////////

//angle - ygol

double angle=0;

cout << "\nVvedite ygol povorota massiva A: ";

cin >> angle;

while(angle>=360)

{

angle-=360;

}

////////////////////////////////////////////////////////

//ygol raven 270 gradysov

if(angle==270)

{

cout << "\nIshodnii massiv A:" << endl;

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

{

for(j=0;j<sizeA;j++)

{

cout << A[i][j] << " ";

}

cout << endl;

}

cout << "\nPovernytii massiv A:" << endl;

for(j=0;j<sizeA;j++)

{

for(i=(sizeA-1);i>=0;i--)

{

cout << A[i][j] << " ";

}

cout << endl;

}

}

cout << endl;

/////////////////////////////////////////////////

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

{

delete[] A[i];

}

delete[] A;

getch();

}

Результат работы: