Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Программирование циклических алгоритмов↑ Стр 1 из 2Следующая ⇒ Содержание книги
Поиск на нашем сайте
С постусловием
Стpуктуpа оператора цикла с постусловием REPEAT <оператор 1>; (повторять) <оператор 2>; ... <оператор N> UNTIL <условие окончания цикла>; (до тех поp, пока) Пример. Вычислить 15 значений функций y1(x) = tg(x); и y2(x) = ctg(x) при a ≤ x ≤ b, a=0.6*Pi, b=0.7*Pi. Для вычислений разработана следующая программа: Program Lab5; Const n = 14; a = 0.6*Pi; b = 0.7*Pi; Var x, y1, y2, dx: real; Begin dx:=abs((a-b)/n); x:=a; Repeat y1:=sin(x)/cos(x); y2:=1/y1; writeln('x=', x:6:4,' y1= ', y1:7:4,' y2=', y2:7:4); x:=x+dx Until x>b; End. Пример 2. Вычислить сумму элементов s = 1+1/4+1/9+1/16+... c точностью до E = 0.00001
PROGRAM sum; CONST E=0.00001; {точность} VAR s,r: REAL; {s - сумма, r – слагаемое} i:INTEGER; {i - счетчик слагаемых} BEGIN s:=0; i:=1; REPEAT r:=1/sqr(i); {вычисление слагаемого} s:=s+r; i:=i+1 {счет слагаемых} UNTIL r<E; {сравнение слагаемого с Е} WRITELN ('Сумма=',s:9:5); {вывод суммы} END.
Задание 1 (программа 5_1) Модифицировать программу 3_2 для вычисления функций F1(x) и F2 (x) с применением оператора цикла с постусловием. Выполнить ее и сравнить результа-ты с полученными ранее.
Лабораторная работа 6 Программирование алгоритмов обработки одномерных массивов Цель работы: научиться разрабатывать и отлаживать программы с использованием регулярных типов (векторов). Массив - упорядоченная структура однотипных данных, хранящихся последовательно. Массив обязательно имеет размеры, определяющие, сколько в нем хранится элементов. Описывается в разделе TYPE (или VAR). Структура описания одномерного массива: <имя> = ARRAY[диапазон _ индексов] OF <базовый _ тип>; Диапазон указывает значения индексов первого и последнего элементов в массиве.
Пример. Найти значение и номер наименьшего элемента в одномерном массиве. При задании элементов исходного массива типизированной константой используется следующая программа:
Program lr6_1; const a: array[1..10] of integer=(5,2,7,1,8,3,4,5,6,6); var i, min, n: integer; Begin min:=a[1]; n:=1; for i:=2 to 10 do if a[i]<min then begin min:=a[i]; n:=i; end; writeln('минимальный элемент равен ',min, ' n=',n); End. Если элементы массива вводятся с клавиатуры, то текст программы изменится: program lr6_2; var a: array[1..10] of integer; i, min, n: integer; Begin read(a[1]); min:=a[1]; n:=1; for i:=2 to 10 do begin read(a[i]); if a[i]<min then begin min:=a[i]; n:=i; end; end; writeln('минимальный элемент равен ', min, ' n=',n); End. Задание 1 Написать и отладить программу для одной из следующих задач. 1. Дан массив из N чисел (8<N<12). Вычислить их среднее геометрическое значение. 2. Дан массив из N чисел (10<N<15). Найти максимальное значение. 3. Дано 20 чисел. Найти их среднее арифметические значение. 4. Дана последовательность из 15 целых чисел. Определить количество отрицательных чисел в ней. 5. Дано 15 целых чисел. Найти минимальное из них. 6. Дан массив из N чисел (8<N<12). Вычислить сумму элементов с нечетными индексами. 7. Дано 10 вещественных чисел. Вычислить разность между максимальным и минимальным из них. 8. Дан целый массив из 10 чисел. Найти максимальный отрицательный элемент. 9. Задан массив из восьми вещественных чисел. Определить количество положительных чисел. 10. Дан массив из 10 целых чисел. Найти сумму четных элементов этого массива. 11. Дан массив из 12 вещественных чисел. Найти сумму тех элементов этого массива, индексы которых чётные. 12. Дано 10 целых чисел. Найти произведение отрицательных чисел.
Лабораторная работа 7 Программирование алгоритмов обработки двумерных массивов Цель работы: научиться разрабатывать и отлаживать программы с использованием матриц.
Описание двумерного массива (матрицы): TYPE <имя> = ARRAY[диап1,диап2] OF <базовый_тип>; где [диап] - диапазон для одного индекса. Пример. Вычислить суммы элементов в столбцах двумерного числового массива А размером [1..3,1..4]. Текст программы: Program lr7_1; CONST a: array[1..3,1..4] of integer = ((1,2,3,4),(1,2,3,4),(1,2,3,4)); VAR s: array[1..4] of integer; {массив сумм} i, j: integer; BEGIN for j:=1 to 4 do begin s[j]:=0; for i:=1 to 3 do s[j]:=s[j]+a[i,j]; write(' s[',j,']=',s[j]) end; END. Задание 1 (программа 7_1) 1. Даны матрицы A,B: array [1..4,1..4] of real. Вычислить матрицу С поэлементным сложением соответствующих элементов матриц А и В. 2. Даны матрицы A,B: array [1..5,1..5] of real. Вычислить матрицу С поэлементным вычитанием соответствующих элементов матриц А и В. 3. Дана матрица B: array [1..5,1..5] of integer. Элементы главной диагонали этой матрицы заменить на 0. 4. Даны матрица A: array [1..4,1..4] of real и константа К. Вычислить матрицу С=А*К. 5. Дана матрица A: array [1..6,1..6] of integer и переменная Х. Нечётные элементы матрицы А заменить на Х. 6. Дана двумерная матрица D(5;6) вещественных чисел. Найти сумму тех элементов матрицы, индексы которых чётные. 7. Дана двумерная матрица J(5;7) целых чисел. Найти произведение чётных элементов этой матрицы. 8. Дана двумерная матрица J(5;7) вещественных чисел. Найти произведение отрицательных элементов этой матрицы. 9. Дана двумерная матрица J(5;7) вещественных чисел. Найти сумму отрицательных элементов этой матрицы. 10. Дана квадратная матрица J(6;6) натуральных чисел. Найти произведение элементов главной диагонали этой матрицы. 11. Дана квадратная матрица J(6;6) натуральных чисел. Найти сумму элементов главной диагонали этой матрицы. 12. Дана двумерная матрица K(6;7) целых чисел. Найти сумму элементов пятой строки этой матрицы.
|
||||
Последнее изменение этой страницы: 2016-12-16; просмотров: 248; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.224.38.170 (0.007 с.) |