Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР5.doc
Скачиваний:
18
Добавлен:
24.11.2018
Размер:
72.19 Кб
Скачать

5.3 Примеры работы с массивами

Рассмотрим несколько примеров использования массивов.

Для начала рассмотрим программу, заполняющую массив произвольными значениями и осуществляющую сортировку элементов массива методом пузырька.

#include "stdafx.h"

#include "conio.h"

#include "stdlib.h"

#include "time.h"

#define randomize() srand((unsigned)time(NULL));

#define random(p) ((int)(rand()*p/RAND_MAX))

Void main()

{

randomize();

int a[10];

char flag;

srand(4);

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

a[i] = rand()*10;

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

printf("%d ", a[i]);

printf("\n");

flag = 1;

while(flag)

{

flag = 0;

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

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

{

int temp = a[i];

a[i] = a[i+1];

a[i+1] = temp;

flag =1;

}

}

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

printf("%d ", a[i]);

getch();

}

В приведенном примере массив инициализируется с помощью функции rand(). Функция rand() генерирует последовательность псевдослучайных чисел. При каждом обращении к функции возвращается целое в интервале между нулем и значением RAND_MAX, которое в любой реализации должно быть не меньше числа 32 767.

Далее будет выполняться цикл for до тех пор, пока есть хотя бы одна пара соседних элементов, которые нужно переставить.

5.4. Порядок выполнения работы

Лабораторная работа содержит индивидуальные задания на

1) обработку одномерного массива;

2) обработку двухмерного массива.

Первое задание включает три задачи, второе одну.

Необходимо для каждой задачи выполнить:

  1. словесную постановку;

  2. анализ постановки и формализацию задачи;

  3. разработку алгоритма;

  4. кодирование и отладку алгоритма;

  5. тестирование программы.

Отчет должен содержать описание всех этапов решения задач.

5.5. Индивидуальные задания

5.5.1. Обработка одномерного массива

Вариант 1

В одномерном массиве, состоящем из n вещественных элементов:

1) вычислить сумму отрицательных элементов массива;

2) вычислить произведение элементов массива, расположенных между максимальным и минимальным элементами;

3) упорядочить элементы массива по возрастанию.

Вариант 2

В одномерном массиве, состоящем из n вещественных элементов:

1) вычислить сумму положительных элементов массива;

2) вычислить произведение элементов массива, расположенных между максимальным и минимальным по модулю элементами;

3) упорядочить элементы массива по убыванию.

Вариант 3

В одномерном массиве, состоящем из n целых элементов:

1) вычислить произведение элементов массива с четными номерами;

2) вычислить сумму элементов массива, расположенных между первым и последним нулевыми элементами;

3) преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом – все отрицательные (элементы, равные 0, считать положительными).

Вариант 4

В одномерном массиве, состоящем из n вещественных элементов:

1) вычислить сумму элементов массива с нечетными номерами;

2) вычислить сумму элементов массива, расположенных между первым и последним отрицательными элементами;

3) сжать массив, удалив из него все элементы, модуль которых не превышает 12. Освободившиеся в конце массива элементы заполнить нулями.

Вариант 5

В одномерном массиве, состоящем из n вещественных элементов:

1) найти максимальный элемент массива;

2) вычислить сумму элементов массива, расположенных до последнего положительного элемента;

3) сжать массив, удалив из него все элементы, модуль которых находится в интервале [a,b]. Освободившиеся в конце массива элементы заполнить нулями.

Вариант 6

В одномерном массиве, состоящем из n вещественных элементов:

1) найти минимальный элемент массива;

2) вычислить сумму элементов массива, расположенных между первым и последним положительными элементами;

3) преобразовать массив таким образом, чтобы сначала располагались все элементы, равные нулю, а потом все остальные.

Вариант 7

В одномерном массиве, состоящем из n целых элементов:

1) вычислить номер максимального элемента массива;

2) вычислить произведение элементов массива, расположенных между первым и вторым нулевыми элементами;

3) преобразовать массив таким образом, чтобы в первой его половине располагались все элементы, стоявшие в нечетных позициях, а во второй половине – элементы, стоявшие в четных позициях.

Вариант 8

В одномерном массиве, состоящем из n целых элементов:

1) вычислить номер минимального элемента массива;

2) вычислить сумму элементов массива, расположенных между первым и вторым отрицательными элементами;

3) преобразовать массив таким образом, чтобы сначала располагались все элементы, модуль которых не превышает 1, а потом все остальные.

Вариант 9

В одномерном массиве, состоящем из n целых элементов:

1) вычислить максимальный по модулю элемент массива;

2) вычислить сумму элементов массива, расположенных между первым и вторым положительными элементами;

3) преобразовать массив таким образом, чтобы элементы, равные 0, располагались после всех остальных.

Вариант 10

В одномерном массиве, состоящем из n целых элементов:

1) вычислить минимальный по модулю элемент массива;

2) вычислить сумму модулей элементов массива, расположенных после первого элемента, равного 0;

3) преобразовать массив таким образом, чтобы в первой его половине располагались все элементы, стоявшие в четных позициях, а во второй половине – элементы, стоявшие в нечетных позициях.

Вариант 11

В одномерном массиве, состоящем из n вещественных чисел:

1) вычислить номер минимального по модулю элемента массива;

2) вычислить сумму модулей элементов массива, расположенных после первого отрицательного элемента;

3) сжать массив, удалив из него все элементы, модуль которых находится в интервале [a,b]. Освободившиеся в конце массива элементы заполнить нулями.

Вариант 12

В одномерном массиве, состоящем из n вещественных чисел:

1) вычислить номер максимального по модулю элемента массива;

2) вычислить сумму модулей элементов массива, расположенных после первого положительного элемента;

3) преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых находится в интервале [a,b], а потом – все остальные.

Вариант 13

В одномерном массиве, состоящем из n вещественных чисел:

1) вычислить количество элементов массива, лежащих в диапазоне от А до В;

2) вычислить сумму элементов массива, расположенных после максимального элемента;

3) упорядочить элементы массива по убыванию модулей элементов.

Вариант 14

В одномерном массиве, состоящем из n вещественных чисел:

1) вычислить количество элементов массива, равных 0;

2) вычислить сумму элементов массива, расположенных после минимального элемента;

3) упорядочить элементы массива по возрастанию модулей элементов.

Вариант 15

В одномерном массиве, состоящем из n вещественных чисел:

1) вычислить количество элементов массива, больших С;

2) вычислить произведение элементов массива, расположенных после максимального по модулю элемента;

3) преобразовать массив таким образом, чтобы в первой его половине располагались все отрицательные элементы, а во второй половине – все положительные элементы (считать 0 положительным элементом).

Вариант 16

В одномерном массиве, состоящем из n вещественных чисел:

1) вычислить количество отрицательных элементов массива;

2) вычислить сумму модулей элементов массива, расположенных после минимального по модулю элемента;

3) заменить все отрицательные элементы массива их квадратами и упорядочить элементы массива по возрастанию.

Вариант 17

В одномерном массиве, состоящем из n целых чисел:

1) вычислить количество положительных элементов массива;

2) вычислить сумму элементов массива, расположенных после последнего элемента, равного 0;

3) преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом – все остальные.

Вариант 18

В одномерном массиве, состоящем из n вещественных чисел:

1) вычислить количество элементов массива, меньших С;

2) сумму целых частей элементов массива, расположенных после последнего отрицательного элемента;

3) преобразовать массив таким образом, чтобы сначала располагались все элементы, отличающиеся от максимального не более чем на 20%, а потом – все остальные.

Вариант 19

В одномерном массиве, состоящем из n вещественных чисел:

1) найти произведение отрицательных элементов массива;

2) найти сумму положительных элементов массива, расположенных до максимального элемента;

3) изменить порядок следования элементов в массиве на обратный.

Вариант 20

В одномерном массиве, состоящем из n вещественных чисел:

1) вычислить произведение положительных элементов массива;

2) вычислить сумму положительных элементов массива, расположенных до минимального элемента;

3) упорядочить по возрастанию отдельно элементы, стоящие на четных местах, и элементы, стоящие на нечетных местах.

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