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

ЛабораторныеСи / Лабораторная 4

.pdf
Скачиваний:
20
Добавлен:
09.06.2015
Размер:
576.64 Кб
Скачать

Лабораторная работа №4 Обработка массивов

Цель работы:

Ознакомиться с обработкой одномерных и двумерных массивов с использованием операторов цикла.

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

В соответствии с поставленной задачей разработать графическую схем алгоритма, составить программу и отладить ее в среде С++, подготовить отчет, ответить на контрольные вопросы и защитить лабораторную работу перед преподавателем.

Содержание отчета:

Выполнение каждой работы завершается написанием отчета, включающего следующие разделы:

1.Задание.

2.Блок – схема алгоритма решения задачи и ее описание.

3.Текст программы.

4.Результаты работы программы.

5.Выводы.

Варианты заданий:

1.С помощью датчика случайных чисел сформировать два массива X и Y размерностью 100 и 200 чисел в диапазоне от 0 до 1 и от 0 до 10 соответственно. Отсортировать массивы Х-по возрастанию, Y- по убыванию.

2.Вычислить значение функции y(x) по формуле:

 

7

 

2

xi

 

cos x

xi

, x < 0

2

+1

 

i=1 i

 

y(x) =

 

 

(x3 i2 ), x 0

0.15x2 7

 

i=0

 

 

 

Организовать печать значений x и y. x ={3;2;1;0;1;2;3}

3.С помощью датчика случайных чисел сформировать два массива X и Y размерностью 100 и 200 чисел в диапазоне от 0 до 1 и от 0 до 10 соответственно. По массиву Х-найти сумму всех элементов с четными номерами, по массиву Y- с нечетными.

4.Составить программу для вычисления Q = SL , где S-сумма всех четных

элементов вектора X ; L-произведение первых 3-x нечетных элементов вектора X . Вектор

Xзадан X ={3.6;4.8;5.1;1.4;0.98;6.4;9.8;3.6;7.4;8.8;7.7}

5.С помощью датчика случайных чисел сформировать два массива X и Y размерностью 100 и 200 чисел в диапазоне от 0 до 1 и от 0 до 10 соответственно. По массиву

Х- найти самый большой элемент и вывести его и его номер на экран, по массиву Y - самый маленький.

6. С помощью датчика случайных чисел сформировать два массива X и Y размерностью 100 и 200 чисел в диапазоне от 0 до 1 и от 0 до 100 соответственно. По массиву Х - найти сумму первых 20 членов, по массиву Y – сумму 10 последних.

7. Компоненты вектора Z = Zk , k =1K10 находятся по формуле Zk = k1! . Найти

10

значение e =1+Zk .

k=1

8.С помощью датчика случайных чисел сформировать два массива X и Y размерностью 100 и 200 чисел в диапазоне от 0 до 1 и от 0 до 100 соответственно. По массиву Х - найти сумму всех элементов с четными номерами, по массиву Y – сумму всех элементов с нечетными номерами.

9.Массив X образуют натуральные числа от 1 до 400, кратные 5. Составить программу для нахождения:

а) суммы всех элементов массива X ;

б) произведение первых 10 элементов массива X .

10.Массив Y образуют натуральные числа от 1 до 100. Определить максимальное значение суммы первых n-элементов данного вектора не превышающей 1000. На печать вывести величину суммы вместе со значением последнего элемента, входящим в эту сумму.

11.Задана квадратная матрица A=(aij). Составить программу для нахождения суммы элементов матрицы, находящихся на главной ее диагонали элементов матрицы

 

 

 

 

0.1

0.5

1.3

6.4

 

 

 

 

 

 

 

 

 

 

0.5

1.2

4.6

7.4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A =

1.6

3.8

5.4

8.3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.1

6.7

8.4

9.8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12.

Составить программу для нахождения расстояния между двумя точками в n-

мерном пространство по формуле:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L = (x

y )2 +(x

2

y

2

)2 +K+(x

n

y

n

)2 , n =3

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

X ={1.1;2.2;3.3}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

={1.1;2.2;8.6}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y

 

 

 

 

 

 

 

 

 

 

 

 

 

13.

Вычислить след заданной матрицы A=(aij) по формуле S = n

aii . Разделить все

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i=1

 

элементы матриц: A на S. Исходную и преобразованную матрицы вывести на печать.

 

 

 

 

 

 

1.1

 

2.2

0.7

 

 

 

 

 

 

 

 

 

 

 

 

3

 

4

6.4

 

 

 

 

 

 

 

 

 

 

 

A =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.4

14

 

 

 

 

 

 

 

 

 

 

 

 

1.3

 

 

 

 

 

 

 

14. Составить программу для нахождения минимального элемента заданного вектора X = (xi ), i =1,2,3,4,5,6,7,8. На печать вывести значение этого элемента с его

порядковым номером. X ={1.4;0.6;6.7;1.5;3.4;10.7;3.4;6.1}

15.Массив Y состоит из чисел от 1 до 200, кратных 13. а) найти произведение всех элементов массива Y

б) найти сумму всех нечетных элементов массива Y

16.Составить программу для транспонирования заданной матрицы A=(aij) по формуле bij=aji, где bij -элементы транспонированной матрицы. На печать вывести исходную

итранспонированную матрицы.

4.4

0.6

5.3

 

 

1.7

5.5

0

 

A =

 

 

3.4

1.8

6.6

 

 

 

17.Составить программу для нахождения максимального элемента заданного

вектора

Y

= ( yi ), i =1,2,3,4,5,6,7,8,9,10 и вывода его значения вместе

с его индексом.

 

 

={1.4;1.7;0.8;3.4;0.6;2.4;5.6;7.7;6.4;1.4}

 

Y

 

18.

Вычислить компоненты массива A=(aij) по формуле aij =

1+i + j . На печать

вывести полученную матрицу и суммы элементов каждой ее строки.

 

19.

Компонентами вектора B=(bj) являются суммы элементов j-го столбца матрицы

A=(aij). Вывести на печать массивы А и В, если элементы матрицы находятся по формуле

aij=1+i+j;

i=1,2,3,4,5;

j=1,2,3,4

 

 

20.

Задан вектор

 

= (xi ) . Найти сумму всех

его элементов,

для которых

X

выполняется условие

a xi b . Значение суммы вместе

с количеством

ее слагаемых

вывести на печать. a = 2; b =8 X ={2.2;0.6;4.8;9.4;0.1;7.3;5.4;6.3;1.7;8.3}

21.Заданы координаты вершин треугольника: A(10;10;10), B(5;5;-5) и C(7;-7;7). Составить программу для вычисления длин всех его сторон.

22.Дана матрица A=(aij); i=1,…,N; j=1,…,M. Составить программу для нахождения суммы тех элементов матрицы, сумма индексов которых является четным числом.

1

5

8

13

19

 

27

31

43

47

53

 

 

 

A =

55

59

61

68

74

 

 

 

 

79

85

91

95

99

 

 

 

23.

Составить программу для вычисления суммы модулей компонент вектора

 

 

 

 

sin i,

при cosi 0.5

Z ={ } Значения компонент вектора Z вычисляются по формуле: Zi =

при cosi < 0.5

 

 

 

 

ctgi,

i=1,…9.Полученный вектор Z вместе с суммой вывести на печать.

24.Составить программу для вычисления коэффициента корреляции по формуле:

 

 

N

 

 

 

 

N

 

N

 

 

 

 

 

 

 

xi yi

xi

yi

 

 

 

 

Q =

 

i=1

 

 

i=1

i=1

 

 

 

 

 

N

 

N

2

 

N

 

 

N

2

 

 

N xi2

 

xi

 

N yi2

 

yi

 

 

 

i=1

i=1

 

 

 

i=1

 

i=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

для следующих значений X ={12;14;15;20;18;21;22;19;28;30;22;17}

Y={10;15;13;17;28;36;24;17;19;16;21;23}

25.Составить программу для нахождения всех элементов заданной

последовательности Y = ( yi ), i =1,..., N ,для которых выполняется условие: a yi b N=12; a=0.5; b=9.5. Напечатать значения этих элементов с указанием их индексов.

Y={6.4;5.8;0.5;0.4;0.6;9.2;3.4;10.1;9.6;4.5;10.5}

26.С помощью датчика случайных чисел сформировать два массива X и Y размерностью 100 и 200 чисел в диапазоне от 0 до 1 и от 0 до 100 соответственно. По массиву Х - найти сумму всех элементов с четными номерами, по массиву Y – сумму всех элементов с нечетными номерами.

27.С помощью датчика случайных чисел сформировать два массива X и Y размерностью 100 и 200 чисел в диапазоне от 0 до 1 и от 0 до 100 соответственно. По массиву Х - найти сумму первых 50 членов, по массиву Y – сумму 20 последних.

28.С помощью датчика случайных чисел сформировать два массива X и Y размерностью 100 и 200 чисел в диапазоне от 0 до 1 и от 0 до 10 соответственно. По массиву Y - найти самый большой элемент и вывести его и его номер на экран, по массиву X - самый маленький.

29.С помощью датчика случайных чисел сформировать два массива X и Y размерностью 100 и 200 чисел в диапазоне от 0 до 1 и от 0 до 10 соответственно. По массиву Y - найти сумму всех элементов с четными номерами, по массиву X - с нечетными.

30.С помощью датчика случайных чисел сформировать два массива X и Y размерностью 100 и 200 чисел в диапазоне от 0 до 1 и от 0 до 10 соответственно. Отсортировать массивы Х-по убыванию, Y- по возрастанию.

Контрольные вопросы:

1.Дайте определение массива.

2.Чем отличается индекс массива от элемента массива?

3.Чем матрица отличается от одномерного массива?

4.Как изменяются индексы элементов матрицы, лежащих выше главной диагонали?

5.Как описываются и инициализируются одномерные и двумерные массивы?

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