Обработка массива

Содержание

Слайд 2

При каждом бросании кубика выпадение какого-либо числа есть случайное событие

С равной вероятностью

При каждом бросании кубика выпадение какого-либо числа есть случайное событие С равной
может выпасть любое число от 1 до 6

Результат бросания кубика – случайное число

Слайд 3

В языках программирования есть аналог подобного «игрального кубика», позволяющий получать случайные числа

Датчик

В языках программирования есть аналог подобного «игрального кубика», позволяющий получать случайные числа
случайных чисел:
Random(x) – встроенная функция Паскаля
X – целое число

=

Результат – целое число в диапазоне от 0 до X

Слайд 4

Работа датчика случайных чисел на Паскале:

Program Rand;
Var
i:integer;
Begin
For i : = 1 to

Работа датчика случайных чисел на Паскале: Program Rand; Var i:integer; Begin For
10 do
Write(random(50):4);
end.

На экран выводится десять случайных чисел из диапазона от 0 до 50

Таким способом удобно выполнять заполнение массива, который имеет любое количества элементов

Результат выполнения программы 0 3 17 20 27 7 31 16 37 41

Слайд 5

Поиск в массиве Rand числа X с подсчетом числа его вхождений в

Поиск в массиве Rand числа X с подсчетом числа его вхождений в
массив в переменной NumberX

Переменная NumberX играет роль счетчика.
Вначале ей присваивается нулевое значение.
Затем в цикле производится перебор всех элементов массива, и при каждом выполнении условия равенства к счетчику добавляется единица.

В результате выполнения программы на

будет выведен 1 из 2 вариантов ответа :

Слайд 6

Program Example2;
Var Rand: array [1..20] of integer;
I, X, NumberX, : integer;
Begin
Randomize;
For

Program Example2; Var Rand: array [1..20] of integer; I, X, NumberX, :
i:=1 to 20 do
Begin
Rand [i] := (random(50);
Write(Rand [i] : 4)
End;
Writeln;
Write(‘ Введите х: ‘); readln(x);
NumberX:=0; for i:=1 to 20 do
If rand(i)=x then NumberX:= NumberX + 1;
If NumberX=0
Then writeln(‘ В массиве нет числа ‘, x)
Else writeln(‘ Число ’ ,x, ’ в массиве присутствует ’ ,Number, ’ раз ’)
End.

Заполнение массива
случайными числами
и вывод их на экран

Ввод числа х

Подсчёт числа
вхождений х в массив

Анализ и вывод
результатов

Х – переменная, которую мы ищем в массиве
NumberX - считает сколько раз встречается
в массиве х
I – параметр цикла

Слайд 7

Поиск в массиве Rand числа X с подсчетом числа его вхождений в

Поиск в массиве Rand числа X с подсчетом числа его вхождений в
массив в переменной NumberX

В программе на предыдущем слайде оператор Randomize – производит установку начального состояния датчика случайных чисел.
В случае отсутствия этого оператора, функция Random(x) при многократном повторении выполнения программы всегда будет выдавать одну и ту же последовательность чисел

Слайд 8

Ввод элементов массива осуществляется в цикле:
Writeln(‘Введите элементы массива а: 1-20’);
For i: =

Ввод элементов массива осуществляется в цикле: Writeln(‘Введите элементы массива а: 1-20’); For
1 to 20 do
Readln(a[i]);
Вывод элементов массива также осуществляется в цикле:
Writeln(‘Элементы массива а: 1-20’);
For i: = 1 to 20 do
writeln(‘a[‘, i, ‘]=’, a[i]);
В данном случае на экран будет выведено:
a[1] =, a[2] =, a[3] =, … a[20] =знач. элемента массива

Слайд 9

Обратите внимание, что случайные числа задаются функцией random(x).
Для того чтобы задать

Обратите внимание, что случайные числа задаются функцией random(x). Для того чтобы задать
случайные числа из промежутка от a до b есть формула
x:=random(b-a+1)+a
Пример, из промежутка  от 5 до 22
x:=random(18)+5
из промежутка от 0 до 6
х:=random(7);
из промежутка от -23 до 34
х:= random(58)-23;

Слайд 10

Пример. Составьте программу, задающую одномерный массив размерность 10, состоящий из случайных чисел

Пример. Составьте программу, задающую одномерный массив размерность 10, состоящий из случайных чисел
из промежутка от 5 до 22. Оформите вывод элементов на экран в строчку.
текст программы
var m: array [1..10] of integer;
  i: integer;
begin
for i:=1 to 10 do
begin
m[i]:= Random(18)+5;
write(m[i],' ');
end;
end.
Имя файла: Обработка-массива.pptx
Количество просмотров: 28
Количество скачиваний: 0