Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МетодичкаБобарыкинаИнформатика.doc
Скачиваний:
65
Добавлен:
03.05.2015
Размер:
8.84 Mб
Скачать

7.5. Вопросы для самопроверки

7.5.1.В чем заключается принцип накопления суммы?

7.5.2. Что является условием завершения вычисления суммы числового ряда?

7.5.3. Какому оператору передается управление, если условие, проверяемое в условном операторе, выполняется и не выполняется?

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

7.5.5. Назовите три основных этапа построения алгоритмов вычисления сумм числовых рядов с заданной точностью.

    1. Лабораторная работа №8 (C:\USER\GROUP\NOF\lab8.bas)

ФОРМИРОВАНИЕ И ОБРАБОТКА ОДНОМЕРНЫХ МАССИВОВ

8.1. Цель работы. Получение практических навыков алгоритмизации и программирования одномерных массивов по заданным формулам и нахождения максимальных и минимальных значений элементов массивов.

8.2. Справочный материал. При описании алгоритмов для ссылки на массивы и компоненты индексированных переменных используют буквы с индексами ( Xi , Xj, Yi , Aj , Zij и т.д. ). Буквы при этом являются наименованиями массивов, а индексы определяют элементы этих массивов. Буква с цифровым индексом указывает конкретный элемент массива , например, Х2 - второй элемент массива Х ; Z23 - элемент массива Z , стоящий на пересечении второй строки и третьего столбца. Размер массива определяется числом его компонент, например, массив Хi : 0.21; -1.7; 3.5; 0.08; 2.76 имеет 5 компонент ( i = 1, 2,...,5 ), при этом Х1 = 0.21; Х2 = -1.7,..., X5 = 2.9. В алгоритмическом языке БЭЙСИК для описания массивов используется оператор DIM ( от английского слова DIMENSION - размерность ). В данном примере для описания массива Х необходимо записать следующий оператор:

DIM X( 5 ) ( резервирование памяти под 6 чисел , так как Х( 5 ):= Х( 0:5 )).

При формировании одномерного массива ( ряда значений функции) по заданному закону , если аргумент задан своими численными значениями, используется оператор цикла FOR, и значения исходных и искомых переменных изменяются при каждом повторении цикла.

8.3. Пример. Подготовить и организовать вычисление на ПЭВМ ряда значений функции Yi по формуле:

Yi = SIN( Qi ) / Qi + Qi / SIN( Qi ) ( 1.8.1 )

и четырех заданных значений аргумента Qi := 0.36; 1.85; 2.14; 3.57 , где i = 1,...,4 ,

а также найти значения максимального и минимального элемента и определить среднее арифметическое значение положительных элементов массива Y.

Алгоритм решения данного примера основывается на циклических расчётах, число повторений которых задано ( N = 4 ).Текст БЭЙСИК - программы алгоритма решения примера 1.8.1 приведен ниже:

10 DIM Q( 4 ) , Y( 4 )

20 Rem Ввод элементов исходного массива q

30 FOR I = 1 TO 4

40 PRINT “ Ввод элемента массива Q( “ ; I ;” ) = “

50 INPUT Q( I ) : NEXT I

60 REM Формирование и печать элементов массива Y

70 FOR I = 1 TO 4

80 A = SIN( Q( I )) / Q( I ) : Y( I ) = A + 1 / A

90 PRINT “Y (“ ; I ;” ) =“; Y( I ): NEXT I

100 REM Нахождение максимального и минимального эл-та массива Y

110 MIN = Y( 1 ) : MAX = Y( 1 )

120 FOR I = 2 TO 4

130 IF Y( I ) < MIN THEN MIN = Y( I ) : J = I

140 IF Y( I ) > MAX THEN MAX = Y( I ) : K = I

150 NEXT I

160 PRINT “Значение миним. эл-та массива Y =“; MIN; ” № эл-та =“ ; J

170 PRINT “Значение максим. эл-та массива Y =“;МАХ;” № эл-та =“ ; K

180 REM Вычисление среднего арифм. значения полож. эл-в массива Y

190 S = 0 : K = 0

200 FOR I = 1 TO 4

210 IF Y( I ) > 0 THEN S = S +Y( I ) : K = K + 1

220 NEXT I

230 PRINT “Среднее арифм. значение полож. эл-тов массива Y=“ ; S / K

240 END

Ввод данных:

Ввод элемента массива Q( 1 )=? 0.36

Ввод элемента массива Q( 2 )=? 1.85

Ввод элемента массива Q( 3 )=? 2.14

Ввод элемента массива Q( 4 )=? 3.57

Результаты:

Y( 1 ) = 2.00042

Y( 2 ) = 2.44414

Y( 3 ) = 2.93418

Y( 4 ) = -8.71002

Значение миним. эл-та массива Y = -8.71002 № эл-та = 4

Значение максим. эл-та массива Y = 2.93418 № эл-та = 3

Среднее ариф. значение полож. эл-тов массива Y = 2.459579

8.4. Задание к лабораторной работе. Подготовить и организовать на ПЭВМ вычисление ряда значений функций Yi для заданных значений аргумента выбираемых из таблицы 8.1 (вариант соответствует порядковому номеру фамилии студента в списке группы).

Таблица 8.1

Номер вариа-нта

Исходная формула

Значение аргумента

Дополнительное задание

1

xi : 0.35, 1.8, 2.3, 5.1, 9.6

Определить МАХ yi .

Число отриц. эл-тов

2

ai : 2.7, 3.1, 4.5, 6.8, -6.8

Определить МIN bi .

Cр. арифм. bi

3

ti: 10.2, 35., 64., 139., 211., 348.

Определить МAX zi .

Cр. арифм. zi

4

ai : -0.87, -0.24, 0.93, 1.65

Определить МAX yi .

Число отриц. эл-тов

5

bi : 1.5, 2.3, 4.8, 0.44, 1.63, 5.2

Определить МIN di

и MAX di

6

yi : 0.24, 0.73, 1.6, 2.7, 3.5, 5.9

Определить МAX bi .

Cр. арифм. bi

7

xi : 1.1, 2.04, 3.6, 4.2, -1.7

Определить МIN yi .

Cр. арифм. yi

8

ci : -0.63, -0.21, 0.34, 1.55, 3.71

Определить МIN zi .

Число отриц. эл-тов

9

bi : 0.2, 1.3, 2.1, 3.5, 4.7, 5.1, 6.8

Определить МAX ai .

Cр. арифм. ai

10

xi : 2.6, 1.7, 3.4, 5.8, 2.7, 4.9, 3.5

Определить МIN yi и MAX yi, cр. арифм. yi

11

xi : 1.4, 2.3, 3.6, 4.2, 5.1, 6.7

Определить МAX si .

Cр. арифм. si

12

si : 0.35, 1.4, 2.7, 4.1, 5.2

Определить МAX yi .

Число отриц. эл-тов

13

ti : 2.5, 0.83, 15., 6.4

Определить МIN si .

Число отриц. эл-тов

14

xi : 1.05, 2.6, 4.2, 5.8, 9.2

Определить МAX yi .

Cр. арифм. yi

15

xi : 0.02, 0.17, 1.75, 31., 2.38

Определить МAX zi .

Число отриц. эл-тов

8.5. Вопросы для самопроверки

8.5.1. Что такое массив ?

8.5.2. Для чего в алгоритмическом языке БЭЙСИК служит оператор DIM ?

8.5.3. Могут ли быть индексы дробными числами ?

8.5.4. Как определяется среднее арифметическое значение положительных (отрицательных) элементов массива ?

8.5.5. На чем основывается поиск минимального и максимального элемента массива ?

8.5.6. Построить блок-схему алгоритма формирования одномерного массива.

    1. Лабораторная работа № 9 ( C:\USER\GROUP\NOF\lab 9.bas )

ФОРМИРОВАНИЕ ДВУМЕРНЫХ МАССИВОВ И ВЫПОЛНЕНИЕ

ОПЕРАЦИЙ С МАТРИЧНЫМИ ЭЛЕМЕНТАМИ

9.1. Цель работы. Получение практических навыков алгоритмизации и программирования процесса формирования и обработки двумерных массивов.

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

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

9.3. Пример. Подготовить и организовать вычисления на ПЭВМ значений элементов матрицы Zij (двумерного массива) по формуле:

( 9.1 )

где Xi = 0.25; -3.41; 2; -1.14; -1.53 , Yj = 1.25; 0; -0.25; 1 , а также предусмотреть вычисления количества отрицательных элементов в каждой строке и столбце и произведение положительных элементов главной диагонали матрицы Z.

9.3.1. Алгоритм формирования матрицы Z должен предусматривать вычисление двадцати элементов, состоящих из пяти строк, так как i = 1,...,5 ( массив Xi содержит пять компонент ), и четырех столбцов j = 1,...,4 (массив Yj содержит четыре компоненты), при этом нумерация элементов массивов Х и Y начинается с единицы. Нумерация и вычисления матричных элементов Zij достигается с помощью построения сложного циклического вычислительного процесса ( см. раздел 9.2 ).

Внутренний цикл по j = 1,...,4 при фиксированном значении параметра внешнего цикла i вычисляет элементы i строки матрицы Z ( Zi,1; Zi,2;Zi,3;Zi,4 ). Внешний цикл по i = 1,...,5, наложенный на внутренний цикл по j ( следует помнить, что для каждого значения индекса i индекс j пробегает значения от 1 до 4), обеспечивает формирование всех строк матрицы Z, т.е. формирование элементов всей матрицы. Отметим, что элементы, лежащие на главной диагонали, имеют одинаковые индексы i= j, над главной диагональю - i< j, а под главной диагональю - i > j.

Текст БЭЙСИК- программы алгоритма формирования матрицы Zi,j для примера 9.3 приводится ниже :

10 DIM X( 5 ), Y( 4 ), Z( 5 , 4 )

20 FOR I = 1 TO 5