Основные процедуры об-ки 2-х массивов.ppt
- Количество слайдов: 14
Разработка и отладка ПАСКАЛЬ - программы со сложным циклом Лабораторная работа № 6
Сложные циклы n Сложными называются такие циклические вычислительные процессы, которые состоят из двух и более включенных друг в друга циклов. n При этом циклы, объемлющие другие циклы, принято называть внешними, а циклы, входящие во внешние циклы, внутренними (вложенными).
Схема алгоритма сложного цикла внешний цикл i=1, n j=1, m Р 1, P 2, . … For i: =1 to n do внутренний цикл For j: =1 to m do Begin Процедура Р 1 Процедура Р 2 ……… end;
Двухмерный массив y 11 y 12 y 13 y 21 y 22 y 23
Описание массива VAR Y: ARRAY [1. . 20, 1. . 10] OF REAL; Например: y[1, 3], y[2, 5], y[10, 10] - соответствует индексированным переменным y 1, 3, y 2, 5, y 10, 10 y[k, l]
Задание n Выполнил: студент Иванов А. , 11 -ИЭ n Цель работы: получение практических навыков при алгоритмизации и программировании сложных циклических вычислительных процессов при работе с массивами. n Модифицировать полученную при выполнении работы № 5 программу таким образом, чтобы на ПК автоматически осуществлялись многократные решения задачи при изменении значений двух исходных переменных n Численные результаты должны быть получены в виде двухмерного массива данных
Пример B 1 A 2 A 3 B 2 B 3 B 4 S 1, 1 S 1, 2 S 1, 3 S 1, 4 S 2, 1 S 2, 2 S 2, 3 S 2, 4 S 3, 1 S 3, 2 S 3, 3 S 3, 4
Вывод результата Сторона А Сторона В Площадь Соотношение сторон А и В A 1 B 1 S 1, 1 …. A 1 B 2 S 1, 2 …. A 1 B 3 S 1, 3 …. A 1 B 4 S 1, 4 …. A 2 B 1 S 2, 1 …. A 2 B 2 S 2, 2 …. A 2 B 3 S 2, 3 …. A 2 B 4 S 2, 4 …. ….
Схема алгоритма лабораторной работы № 6 H Ввод n, m i=1, n Ввод ai j=1, m Ввод bj 1
1 i=1, n j=1, m Вывод ai, bj Ai<0 Вывод ‘a<0' Bj<0 Вывод ‘b<0' Sij=ai*bj Вывод Sij K
Программа (описание переменных) program labrab 6 ; {Иванов А. , 11 -ИЭ, лаб. раб. 6, вариант 28} VAR a, b: ARRAY [1. . 10] of real; s: ARRAY [1. . 10, 1. . 10] of real; I, j, n, m: integer;
Программа (ввод данных) BEGIN writeln (‘введите количество элементов массива a и массива b‘); readln (n, m); writeln (‘введите элементы массива a‘); for i: =1 to n do readln (a[i]); writeln (‘введите элементы массива b‘); for j: =1 to m do readln (b[j]);
writeln ('___________________________'); writeln ('!Сторона A!Сторона В!Площадь! Соотношение сторон А и В!'); writeln ('___________________________'); for i: =1 to n do for j: =1 to m do Begin write ('! ', a[i]: 9: 2, '!’, b[j]: 9: 2, '!'); if (a[i]<=0) then writeln (' a<=0 ! !‘) else begin if (b[j]<=0) then writeln (' b<=0 ! !‘) else begin s[i, j]: =a[i]*b[j]; write (s[i, j]: 7: 2, '!'); If (a[i]>b[j]) then writeln (' сторона a больше b ' : 24, '!') else if (a[i]<b[j]) then writeln (' сторона a меньше b ' : 24, '!') else writeln (' сторона a равна b ' : 24, '!'); end; writeln ('___________________________'); end.
Вывод результата Сторона А 11. 00 Сторона В Площадь Соотношение сторон А и В -15. 36 b<=0 11. 00 13. 00 … сторона a меньше b 11. 00 0. 01 … сторона a больше b 2. 56 -15. 36 b<=0 2. 56 13. 00 … сторона a меньше b 2. 56 0. 01 … сторона a больше b -2. 00 -15. 36 a<=0 120. 00 -15. 36 b<=0 ….
Основные процедуры об-ки 2-х массивов.ppt