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

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

варианта

Интервал

h

f(x)

1

[1, 1.2]

0.1

2

[0.1, 2.1]

0.2

3

[0.5, 1.2]

0.1

4

[0, 1.6]

0.2

5

[0.2, 1]

0.1

6

[2, 3.1]

0.1

7

[3.0, 6.1]

0.3

8

[3.2, 3.9]

0.1

9

[0.2, 1.4]

0.2

10

[5.7, 9.4]

0.3

11

[6.5, 7.1]

0.1

12

[0.3, 0.9]

0.1

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

Одномерные массивы.

ЦЕЛЬ РАБОТЫ.

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

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

  1. Дан вектор x={x1, … , xn}. В соответствии с вариантом задания измените значения некоторых его компонентов.

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

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

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

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

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

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

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

Среди компонент вектора x={x1, … , xn} (n<20) найти максимальный элемент и поменять его местами с элементом x1.

Будем хранить элементы вектора x в одномерном массиве x[10], а текущие значения максимального элемента и его номера в переменных max и k соответственно.

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

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

#include <stdio.h>

void main()

{

int i, k = 0;

float x[10], max;

/*Ввод элементов массива*/

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

{

printf(”\nx[%d]=”, i+1);

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

}

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

max = x[0];

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

if (x[i] > max) {

max = x[i]; k = i;

}

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

if (k != 0) {

x[k] = x[0];

x[0] = max;

}

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

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

printf (”\nx[%d]=%f ”, i+1, x[i]);

}

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