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

1 семестр / лр 12

.docx
Скачиваний:
27
Добавлен:
16.12.2020
Размер:
46.64 Кб
Скачать

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

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

Кафедра информационных систем и технологий

ОТЧЕТ

по лабораторной работе №12

Использование указателей

Выполнила: студентка ФИТ группы № 9 Каленик Алина

Проверила: Пустовалова Наталья Николаевна

Минск 2020

Задание №1

Заданы два массива А и В. Подсчитать в них количество элементов, меньших значения t, и первым на печать вывести массив, имеющий наибольшее их количество.

#include <iostream>

using namespace std;

int main()

{

setlocale(LC_ALL, "rus");

int n, s1 = 0, s2 = 0, i = 0;

cout << "Введите количество элементов массива ";

cin >> n;

float* a = new float[n];

float* b = new float[n];

float* pa, * pb, t;

cout << "Заполните массив a" << endl;

for (pa = a; pa < a + n; pa++)

{

cout << "a[" << i << "] = "; cin >> *(pa+1);

i++;

}

cout << "Заполните массив b"<< endl;

i = 0;

for (pb = b; pb < b + n; pb++)

{

cout << "b[" << i << "] = "; cin >> *(pb + 1);

i++;

}

cout << "Значения массива должны быть меньше t = ";

cin >> t;

for (pa = a; pa < a+n; pa++)

{

if (*(pa + 1) < t) s1++;

}

for (pb = b; pb < b + n; pb++)

{

if (*(pb + 1) < t) s1++;

}

if (s1 > s2)

{

cout << "a {" << n << "} = [ ";

for (pa = a; pa < a + n; pa++)

cout << *(pa + 1) << " ";

cout << "]" << endl;

cout << "b {" << n << "} = [ ";

for (pb = b; pb < b + n; pb++)

cout << *(pb + 1) << " ";

cout << "]" << endl;

}

else

{

cout << "b {" << n << "} = [ ";

for (pb = b; pb < b + n; pb++)

cout << *(pb + 1) << " ";

cout << "]" << endl;

cout << "a {" << n << "} = [ ";

for (pa = a; pa < a + n; pa++)

cout << *(pa + 1) << " ";

cout << "]" << endl;

}

}

Задание №2

Даны два массива С и В, каждый из m элементов. Подсчитать количество таких чисел k, для которых: C[k] > B[k] и C[k] < B[k], С[k] = B[k].

#include <iostream>

using namespace std;

int main()

{

setlocale(LC_ALL, "rus");

int m, s1 = 0, s2 = 0, s3 = 0, i = 0, j = 0;

cout << "Введите количество элементов массива ";

cin >> m;

float* c = new float[m];

float* b = new float[m];

float* pc, * pb, k;

cout << "Заполните массив a" << endl;

for (pc = c; pc < c + m; pc++)

{

cout << "c[" << i << "] = "; cin >> *(pc+1);

i++;

}

cout << "Заполните массив b"<< endl;

i = 0;

for (pb = b; pb < b + m; pb++)

{

cout << "b[" << i << "] = "; cin >> *(pb + 1);

i++;

}

i = 0;

for (pc = c; pc < c + m; pc++)

{

j = 0;

for (pb = b; pb < b + m; pb++)

{

if (i == j)

{

if (*(pc + 1) < (*(pb + 1))) s1++;

if (*(pc + 1) > (*(pb + 1))) s2++;

if (*(pc + 1) == (*(pb + 1))) s3++;

}

j++;

}

i++;

}

cout << "Количество таких чисел k, для которых c[k] < b[k] = "<< s1 << endl;

cout << "Количество таких чисел k, для которых c[k] > b[k] = " << s2 << endl;

cout << "Количество таких чисел k, для которых c[k] = b[k] = " << s3 << endl;

}

Соседние файлы в папке 1 семестр