Скачать презентацию Лекция 3 Массивы Операторы цикла Даны Скачать презентацию Лекция 3 Массивы Операторы цикла Даны

Лекция 3-2014.pptx

  • Количество слайдов: 14

 Лекция 3 Массивы Операторы цикла Лекция 3 Массивы Операторы цикла

Даны значения переменных Х 1. . Х 10 Определить xi x 2 Yi = Даны значения переменных Х 1. . Х 10 Определить xi x 2 Yi = ── ─ ───── 10 ∑xi Π(xi-2) i=1

Тип данных Типы данных Простые стандартные Простые, определяемые программистом Структурные Целочисленные Перечисляемый Массив Вещественные Тип данных Типы данных Простые стандартные Простые, определяемые программистом Структурные Целочисленные Перечисляемый Массив Вещественные Диапазон Запись Логический Строковый Символьный Файл Множество Ссылочные

Массив Упорядоченная последовательность элементов одного типа, имеющих одно имя. Обращение к элементу массива производится Массив Упорядоченная последовательность элементов одного типа, имеющих одно имя. Обращение к элементу массива производится указанием его имени и индекса (номера) в квадратных скобках. Описание массива: Var имя_массива: array [нач. индекс. . кон. индекс] of тип_данных; var v: array[1. . 10] of integer; m: array[1. . 8, 1. . 8] of real; buk: array[1. . 2, 1. . 30, 1. . 40] of char; {текст на двух страницах, по тридцать строк на каждой, по сорок символов в каждой строке} stroka: string[40];

Оператор цикла FOR Цикл – многократно повторяемая группа операторов. for<параметр цикла>: =<список цикла> do Оператор цикла FOR Цикл – многократно повторяемая группа операторов. for<параметр цикла>: =<список цикла> do <оператор> <параметр цикла>: идентификатор <список цикла>: первое значение to послед. значение или первое значение downto послед. значен. первое значение: выражение последнее значение: выражение <оператор>: оператор, выполняемый в цикле (один или составной).

Оператор цикла FOR Примеры: for i: =1 to 25 do. . for k: =25 Оператор цикла FOR Примеры: for i: =1 to 25 do. . for k: =25 downto 1 do. . Параметры цикла, первое и последнее значение должны быть одного и того же типа (кроме типа real) и не должны изменяться внутри оператора for. Если параметр цикла - целое данное, то шаг для to - +1, для downto - -1. Если в случае to (downto) первое значение больше (меньше) последнего значения, то оператор for не выполняется ни разу.

Обозначение оператора for в схемах алгоритма (блок-схемах) i = 1. . 10 Обозначение оператора for в схемах алгоритма (блок-схемах) i = 1. . 10

Вычисление сумм и произведений Дан массив Х 1. . Х 10 Определить xi x Вычисление сумм и произведений Дан массив Х 1. . Х 10 Определить xi x 2 Yi = ── ─ ───── 10 ∑xi Π(xi-2) i=1 program lab 4; var x, y: array [1. . 10] of real; s, p: real; i: integer; begin for i: =1 to 10 do read(x[i]); s: =0; p: =1; for i: =1 to 10 do begin s: =s+x[i]; p: =p*(x[i]-2); end; for i: =1 to 10 do begin y[i]: =x[i]/s-x[2]/p; write(y[i]: 8: 3); end.

Организация циклов с использованием условных операторов program lab 4; var x, y: array [1. Организация циклов с использованием условных операторов program lab 4; var x, y: array [1. . 10] of real; s, p: real; i: integer; label 1, 2; begin s: =0; p: =1; i: =0; 1: i: =i+1; read(x[i]); s: =s+x[i]; p: =p*(x[i]-2); If i<10 then goto 1; i: =0; 2: i: =i+1; y[i]: =x[i]/s-x[2]/p; write(y[i]: 8: 3); If i<10 then goto 2; end.

Пример задачи № 4 Даны массив X 1, . . . , X 10 Пример задачи № 4 Даны массив X 1, . . . , X 10 и число C. Определить: program lab 4; var x, a: array [1. . 10] of real; c, y: real; i: integer; begin for i: =1 to 10 do read(x[i]); y: =0; for i: =1 to 10 do y: =y+(x[i]-c)/sqr(x[i]); writeln(y); for i: =1 to 10 do begin a[i]: =y-x[i]; write(a[i]: 8: 3); end.

Алгоритмы сортировки массивов Дан массив. Сортировать его элементы в порядке возрастания. program sort 1; Алгоритмы сортировки массивов Дан массив. Сортировать его элементы в порядке возрастания. program sort 1; var x: array[1. . 100] of real; i, j, n: integer; z: real; begin read(n); for i: =1 to n do read(x[i]); writeln; for i: =1 to n do write(x[i]: 4: 0); for i: =1 to n-1 do for j: =i+1 to n do if x[i]>x[j] then begin z: =x[i]; x[i]: =x[j]; x[j]: =z; end; writeln; for i: =1 to n do write(x[i]: 4: 0); end. _______________________ for i: =n-1 downto 1 do for j: =1 to i do if x[j]>x[j+1] then begin z: =x[j]; x[j]: =x[j+1]; x[j+1]: =z; end;

i j 5 6 3 1 2 3 3 6 5 1 2 4 i j 5 6 3 1 2 3 3 6 5 1 2 4 1 6 5 3 2 5 1 6 5 3 2 3 1 5 6 3 2 4 1 3 6 5 2 5 1 2 6 5 3 4 1 2 3 5 6 5 1 2 3 5 6 2 3 4 Элементы массива 1. . 5

Работа с матрицами Задана матрица 4 х4. Определить сумму ее элементов, среднее значение элементов Работа с матрицами Задана матрица 4 х4. Определить сумму ее элементов, среднее значение элементов и количество отрицательных чисел в матрице. program matr; var x: array[1. . 4, 1. . 4] of real; sum, sred: real; otr, i, j: integer; begin sum: =0; otr: =0; for i: =1 to 4 do for j: =1 to 4 do begin read (x[i, j]); if x[i, j]<0 then otr: =otr+1; sum: =sum+x[i, j]; end; sred: =sum/16; writeln (sum: 6: 2, sred: 6: 2, otr: 4); end. ________________________ Вывод матрицы на экран: for i: =1 to 4 do begin writeln; for j: =1 to 4 do write (x[i, j]: 6: 2); end

Контрольное задание Дано 200 вещественных чисел. Определить, сколько из них больше своих «соседей» , Контрольное задание Дано 200 вещественных чисел. Определить, сколько из них больше своих «соседей» , т. е. предыдущего и последующего чисел.