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

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

варианта

Задание

1

Заменить первый элемент массива суммой максимального и минимального элементов.

2

Заменить последний элемент массива суммой максимального и минимального элементов.

3

Заменить первый элемент массива произведением максимального и минимального элементов.

4

Заменить последний элемент массива произведением максимального и минимального элементов.

5

Заменить первый элемент массива частным максимального и минимального элементов.

6

Заменить последний элемент массива частным максимального и минимального элементов.

7

Заменить первый элемент массива средним арифметическим максимального и минимального элементов.

8

Заменить последний элемент массива средним арифметическим максимального и минимального элементов.

9

Заменить первый элемент массива средним геометрическим максимального и минимального элементов.

10

Заменить последний элемент массива средним геометрическим максимального и минимального элементов.

11

Заменить первый элемент массива полуразностью максимального и минимального элементов.

12

Заменить последний элемент массива полуразностью максимального и минимального элементов.

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

Вложенные циклы и разветвления в матричных задачах.

ЦЕЛЬ РАБОТЫ.

  • научиться использовать в программах многомерные массивы и сложные сочетания циклов и разветвлений.

ПРАКТИЧЕСКОЕ ЗАДАНИЕ.

  1. Дана матрица A. В соответствии с вариантом задания произвести вычисления с элементами данной матрицы.

  2. Составьте отчет о выполнении лабораторной работы, в который включите:

    1. Название и цель работы;

    2. Индивидуальное задание;

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

    4. Результат решения задачи;

    5. Блок-схему алгоритма решения задачи.

ПРИМЕР ВЫПОЛНЕНИЯ РАБОТЫ.

Поменять местами строки квадратной матрицы A (10 х 10), содержащие максимальный и минимальный элементы матрицы.

Будем хранить элементы матрицы A в двумерном массиве a[10][10], а текущие значения максимального и минимального элементов и номера их строк в переменных max, min, m и n соответственно.

Предположим, что максимальный и минимальный элементы массива есть его первый элемент. Далее во вложенных циклах будем сравнивать эти значения с остальными элементами и, когда очередной элемент массива окажется больше или меньше значения max и min соответственно, исправим их на новые значения. Одновременно в переменных m и n будем сохранять номер строки этого элемента. И, наконец, если m не равно n, то переставим местами соответствующие строки матрицы.

/* Лабораторная работа 4 */

#include <stdio.h>

void main()

{

int i, j, m = 0, n = 0;

float a[10][10], max, min, u;

/*Ввод элементов матрицы*/

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

{

printf(”\n”);

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

scanf(”%f ”, &a[i][j]);

}

/*Поиск максимального и минимального элементов матрицы */

/*и номеров их строк */

max = min = a[0][0];

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

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

{

if (a[i][j] > max)

{

max = a[i][j]; m = i;

}

if (a[i][j] < min)

{

min = a[i][j]; n = i;

}

}

/*Перестановка местами строк матрицы/

if (m != n)

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

{

u = a[m][i];

a[m][i] = a[n][i];

a[n][i] = u;

}

/*Вывод элементов новой матрицы/

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

{

printf (”\n”);

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

printf(” %f ”, a[i][j]);

}

}

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