Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Программирование алгоритмов обработки двумерных массивов




End.

Begin

End.

Begin

Программирование алгоритмов обработки одномерных массивов

BEGIN

End.

Begin

С постусловием

Программирование циклических алгоритмов

End.

Begin

writeln('-------------------------');

writeln(' a | x | y |');

writeln('-------------------------');

a:=0.1;

while a<=0.31 do

begin

writeln(a:5:2);

x:=0.5;

while x<=0.91 do

begin

y:=a*sin(x/4)/cos(x/4);

writeln(x:12:2,' | ', y:10:2);

x:=x+a;

end;

writeln('-------------------------');

a:=a+0.1

end;

Задание 2 (программа 4_2)

Модифицировать (изменить) программу 3_2 для вычисления функций F1(x) и F2(x) с применением вместо счетного цикла оператора цикла с предусловием. Выполнить ее и сравнить результаты с полученными в пре­дыдущей работе.

 

 

Лабораторная работа 5

 

Ст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;

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;

Пример 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 - счетчик слагаемых}

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;

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);

Если элементы массива вводятся с клавиатуры, то текст программы изменится:

program lr6_2;

var a: array[1..10] of integer;

i, min, n: integer;

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);

Задание 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

Цель работы: научиться разрабатывать и отлаживать программы с использованием матриц.

 

Описание двумерного массива (матрицы):




Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 592; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.02 сек.