понедельник, 9 ноября 2009 г.

Урок 16. Пошук у масиві. Алгоритми пошуку.

Тема урока: Пошук у масиві. Алгоритми пошуку.

Цель Д: посредством решения задач на поиск в массиве, достичь полного понимания методов сортировок массива

Тип урока: урок закрепления знаний

Ход уроку

* Найти произведение трех наибольших отрицательных чисел

Назначение переменных

А – исходный массив

N – количество элементов в массиве

P – произведение трех наибольших отрицательных чисел

K – количество отрицательных чисел

L – порядковый номер наибольшего отрицательного числа

I – порядковый номер элемента в массиве, номер просмотра

J – порядковый номер просматриваемого элемента

X – промежуточная переменная

Program n1;

Type

Massiv=array [1..100] of real;

Var

A: massiv;

N: integer;

P: real;

Procedure Sort(n: integer; Var a:massiv);

Var

I, j: integer;

X: real;

Begin

For i:=2 to n do

For j:=n downto I do

If a[j]'<'a[j-1] then Begin X:=a[j]; A[j]:=a[j-1]; a[j-1]:=x; End; End; Procedure Work(n: integer; Var a : massiv; Var p:real); Var K,l,i: integer; Begin K:=0; For I:=1 to n do If a[i]'<'0 then Begin K:=k+1; L:=I; End; If k'>'3 then

Begin

P:=a[L]*a[L-1]*a[L-2];

Writeln(p:8:2);

End

Else

Writeln(‘невозможно найти’);

End.

* Найти сумму трех наименьших положительных чисел

Что изменится в программе, если нужно найти 3 наименьших положительных числа?

Как иначе можно изменить программу, чтобы алгоритм был более эффективным?

While(a[i]<=0) and (i<=n) do I:=i+1; If a[i]>0 then S:=S+a[i]+a[i-1]+a[i-2]

4. Практическая часть урока - проверить программі за компьютером, отослать на почтовій ящик преподавателю
5. Домашнее задание - Дан массив из n чисел. Определить, представляет ли массив чисел возрастающую последовательность?

Комментариев нет:

Отправить комментарий