Датчик случайных чисел на языке Паскаль

Слайд 2

Понятие таблицы и массива Линейная таблица – последовательность упорядоченных чисел (на


Понятие таблицы и массива

Линейная таблица – последовательность упорядоченных чисел

(на Алгоритмическом языке).
На языке программирования линейная таблица – это одномерный массив
Т – имя массива,
Т [3], Т [7], . . . . - индексированные имена элементов массива
индекс – это порядковый номер элемента в таблице (массиве), записывается в квадратных скобках
Значения индексов не должны выходить за допустимые границы (в нашем примере диапазон Т [ 1..12]) Индексы могут быть представлены не только в виде констант, но и в виде целых переменных и даже выражений целого типа: T [i], T [k + 1], T [I + k], T [2*k] . . . . .
Все элементы массива должны иметь одинаковый тип, который описывается в декларативной части алгоритма (программы).
Массив – это пронумерованная конечная последовательность однотипных величин.
Решение задач по обработке массива связано, как правило, с перебором элементов массива. Такой перебор происходит в цикле, в котором изменяются значения индексов от начальной до конечной величины.
Слайд 3

Описание и ввод значений в массив на Паскале начало конец i


Описание и ввод значений в массив на Паскале

начало

конец

i

:= 1, 12

вывод ” T [ i ] = ”

ввод T [ i ]

var имя массива : array [ нижняя граница индекса . . верхняя граница индекса ] of тип массива ;

PROGRAM

VAR

READLN

:

INTEGER

T

(

)

FOR

TO

Temperature

;

T [ i ]

;

END

.

:=

i

1

12

DO

BEGIN

WRITE

(

)

’ T [ ’ , i , ’ ] = ’

:

ARRAY

[ 1 . . 12 ]

OF

REAL

i

;

BEGIN

END

;

;

Слайд 4

Цикл с параметром в программе на Паскале начало конец i :=


Цикл с параметром в программе на Паскале

начало

конец

i :=

1, 12

вывод ” T [ i ] = ”

ввод T [ i ]

PROGRAM

VAR

READLN

:

INTEGER

T

(

)

FOR

TO

Temperature

;

T [ i ]

;

END

.

:=

i

1

12

DO

BEGIN

WRITE

(

)

’ T [ ’ , i : 2, ’ ] = ’

:

ARRAY

[ 1 . . 12 ]

OF

REAL

i

;

BEGIN

END

;

;

;

:

Tsred

;

REAL

:=

0

;

Tsred

FOR

TO

:=

i

1

12

DO

:=

;

Tsred

Tsred +

T [ i ]

:=

Tsred

Tsred /12

;

WRITELN

(

)

’ Среднегодовая температура = ’ ,

Tsred : 6 : 2 ,

’ градусов ’

Tsred := 0

i := 1, 12

Tsred := Tsred + T [i]

Tsred := Tsred / 12

вывод Tsred

Слайд 5

Алгоритм поиска числа в массиве i := 1, 20 вывод ”


Алгоритм поиска числа в массиве

i := 1, 20


вывод ” В массиве нет числа ” X

PROGRAM

VAR

,

INTEGER

Rand

FOR

TO

Example2

;

:=

i

1

20

DO

BEGIN

WRITE

(

)

:

ARRAY

[ 1 . . 20 ]

OF

i

;

BEGIN

;

:

NumberX

;

:=

WRITELN

(

’ Массив случайных чисел : ’

NamberX := 0

,

X

INTEGER

RANDOMIZE

;

) ;

Rand [ i ]

Random ( 50 )

Rand [ i ] : 4

;

;

READLN

(

)

;

END

.

END

;

0

WRITELN

;

WRITE

(

)

;

’ Введите X : ’

X

NumberX

;

FOR

TO

:=

i

1

20

DO

:=

IF

THEN

ELSE

Rand [ i ] = X

NumberX

:=

NumberX + 1

IF

NumberX = 0

THEN

WRITELN

WRITELN

(

’ В массиве нет числа ’ , X

)

(

’ Число ’ , X ,

’ в массиве присутствует ’ , NumberX , ’ раз’

)

NamberX := NamberX + 1

вывод ” Число ” X
” в массиве присутствует ”
NumberX ” раз ”

4

Слайд 6

Алгоритм поиска max и min в массиве i := 2, 16


Алгоритм поиска max и min в массиве

i :=

2, 16

MaxT := T [ 1 ] ; Nmax := 1

MaxT := T [ i ] ; Nmax := i

i := 2, 16

MinT:= T [ 1 ] ; Nmin := 1

MinT := T [ i ] ; Nmin := i

FOR i := 2 TO 16 DO

BEGIN

END ;

WRITELN (MaxT) ;

MaxT : = T[ 1 ] ; Nmax : = 1 ;

MinT : = T [ 1 ] ; Nmin : = 1 ;

FOR i := 2 TO 16 DO

BEGIN

END ;

IF T [ i ] > MaxT THEN

MaxT : = T [ i ] ; Nmax : = i ;

END ;

IF T [ i ] < MinT THEN

MinT: = T [ i ] ; Nmin : = i ;

END ;

WRITELN (Nmax) ;

WRITELN (MinT) ;

WRITELN (Nmin) ;

BEGIN

BEGIN