====================================================
=====================================================================
ИНТЕРАКТИВНЫЕ УПРАЖНЕНИЯ
=====================================================================
ТЕСТЫ
=====================================================================
ПРЕЗЕНТАЦИИ
=====================================================================
КРОССВОРДЫ
=====================================================================
ТЕСТЫ
=====================================================================
ПРЕЗЕНТАЦИИ
=====================================================================
КРОССВОРДЫ
=====================================================================
ВИДЕОУРОКИ
УРОК 6. Основные алгоритмические конструкции и типы данных (9 класс)
УРОК 7-8. Строковые величины (9 класс)
УРОК 9-10. Стандартные процедуры и функции для работы со строковыми величинами (9 класс)
ТЕОРЕТИЧЕСКИЙ МАТЕРИАЛ
=====================================================================
Интерактивное пособие для IX класса «Программируем с увлечением» (автор Пузиновская С. Г., учитель информатики; Брагинец И., учащийся; ГУО «Средняя школа № 4 г. Дзержинска» можно скачать на сайте Национального института образования
===========================================
Массив – это обозначаемая одним именем последовательность однотипных элементов.
Место каждого элемента в этой последовательности определяется его индексом.
Массив является структурированным (составным) типом данных. Это означает, что величина, описанная как массив, состоит из конечного числа других величин.
Массивы, обращение к элементам которых осуществляется при помощи только одного индекса, называют одномерными.
Индексов может быть несколько, тогда массив называют многомерным.
Описаниея массива
имя: array[инд1..индN] of тип_элементов;
Размер массива – это максимально возможное количество элементов в массиве.
Примеры описаний массива.
Var А: array[1..25] of integer; Или Const n1=1; n2=25;
Var А: array[n1..n2] of integer;
Значения элементов, которые не изменяются при работе программы (констант), можно задавать в разделе описаний.
Например, Const А: array[1..8] of integer=(2, 3, 5, 6, 7, 8, 55, 9);
С помощью команды присваивания: A[4]:=9.
Для ввода нескольких элементов массива в процессе исполнения программы используют цикл For (если количество элементов массива известно заранее) или While (если количество элементов заранее не известно)
Способы заполнения массива:
1 способ . Ввод каждого значения с
клавиатуры:
for i
:=1 to 10 do read (a[i]);
2
способ .
С помощью оператора присваивания (по формуле):
for i
:=1 to 10 do a[i]:=i;
3
способ .
С помощью оператора присваивания (случайными числами): randomize;
for i:=1 to 10 do a[i]:=random(100);
Вывод массива
1 способ. Элементы массива можно вывести в
строку, разделив их пробелом:
for i:=1 to 10 do write
(a[i], ' ');
2 способ . Вывод с комментариями:
for i:=1 to 10 do writeln
('a[', i, ']=', a[i]);
3 способ. Заполнение
случайным образом:
For i:=1 to n do
begin
a[i]:=random(m);
Write(a[i],’ ‘);
End;
Вывод значений массива на экран по
горизонтали (в строку);
For i:=1 to n do
Write(a[i]:5);
Вывод значений массива на экран по вертикали (в столбец);
For i:=1 to n do
Writeln(a[i]);
Вычисление суммы элементов массива
s := 0
s = 0
s := s + a [1]
s = 0+ a [1]
s := s + a [2]
s = 0+ a [1]+ a [2]
s := s + a [3]
s = 0+ a [1]+ a [2]+ a [3]
…
…
s := s + a [n]
s = 0+ a [1]+ a [2]+ a [3]+…+ a [n]
Основной фрагмент программы:
s:=0;
for i:=1 to n do s:=s+a[i];
Задача. Вычисление
суммы элементов массива
program n_3;
var s, i: integer;
a:array[1..10] of integer;
begin
s:=0;
for i:=1 to 10 do
a[i]:=random(100);
for i:=1 to 10 do write (a[i],'
');
for i:=1 to 10 do s:=s+a[i];
writeln ('s=', s)
end.
Задание: Заполнить
массив с именем X случайными значениями и вывести эти значения на экран.
Размерность массива 12, все элементы целого типа. Удвоить значение каждого
элемента массива и вывести на экран.
program n_3;
var s, i:
integer;
x: array [1..12] of integer;
begin
s:=1;
for i:=1 to 12 do x[i]:=random(100);
for i:=1 to 12 do write
(x[i],' ');
for i:=1 to 12 do s:=x[i]*x[i];
writeln ('s=', s)
end .
Нахождение наибольшего элемента
в стопке карточек с записанными числами :
1) Взять верхнюю карточку,
записать на доске (запомнить) число как
наибольшее.
2) Взять следующую
карточку, сравнить числа. Если на карточке число больше,
то записать это число.
Повторить действия,
описанные в пункте 2 для всех оставшихся карточек
При организации поиска
наибольшего элемента массива правильнее искать его индекс.
Программа поиска наибольшего элемента
в массиве
program n
_4;
var s, i,
imax : integer;
a: array[1..10] of integer;
b egin
s:=0;
for i:=1 to
10 do a[i] :=random(100) ;
for i:=1 to 10 do write
(a[i] ,` `) ;
imax:=1 ;
for i:=2 to 10 do
if a[i]a[imax] then imax:=i;
write ( 'Наибольший элемент
a[',imax,']=', a[imax])
end .
Поиск элемента, равного 50
program n
_ 5 ;
var n, i:
integer;
a: array[1..10] of integer;
b egin
randomize;
for i:=1 to 10 do a[i]
:=random(100) ;
for i:=1 to 10 do write
(a[i] ,` `) ;
n := 0;
for i:= 1 to
10 do
if a[i] =50 then n :=i;
if n=0 then write( 'Нет' ) else write (i)
end .
Будет найден последний из
элементов, удовлетворяющих условию.
10
50
1
3
50
14
21
50
10
21
Поиск элемента, равного 50
program n
_5_1;
var n, i:
integer;
a: array[1..10] of integer;
b egin
randomize;
for i:=1 to 10 do a[i]
:=random(100) ;
for i:=1 to 10 do write
(a[i] ,` `) ;
i := 0;
repeat
i:=i+1;
until (a[i]=50) or (i=10);
if a[i]=50 then write(i) else write('Нет')
end .
Будет найден первый из
элементов, удовлетворяющих условию.
10
50
1
3
50
14
21
50
10
21
Подсчет количества элементов
Для подсчета вводится
переменная, значение которой увеличивается на единицу каждый раз, когда найден
нужный элемент.
program kolich ;
var k, i:
integer;
a: array[1..10] of integer;
b egin
randomize;
for i:=1 to 10 do a[i]
:=random(100) ;
for i:=1 to 10 do write
(a[i] ,` `) ;
k := 0;
for i:=1 to 10 do
if a[i]50 then k:=k+1;
write ('k=', k)
end .
10
6 0
2 1
5 3
5 8
14
2 8
50
10
5 1
Сумма значений элементов,
удовлетворяющих условию
program sum ;
var s, i:
integer;
a: array[1..10] of integer;
b egin
randomize;
for i:=1 to 10 do a[i]
:=random(100) ;
for i:=1 to 10 do write
(a[i] ,` `) ;
s := 0;
for i:=1 to 10 do
if a[i] 1 0 and (a[i]then s := s + a[i];
write (‘ s =', s )
end .
10
50
1
3
50
14
21
50
10
21
Сортировка массива
Сортировка элементов
массива по невозрастанию выбором осуществляется следующим образом:
1. В массиве выбирается
максимальный элемент
2. Максимальный и первый элемент
меняются местами (первый элемент считается отсортированным)
3. В неотсортированной
части массива снова выбирается максимальный элемент; он меняется местами с
первым неотсортированным элементом массива
Действия пункта 3
повторяются с неотсортированными элементами массива, пока не останется один неотсортированный
элемент (минимальный)
Интерактивное пособие для IX класса «Программируем с увлечением» (автор Пузиновская С. Г., учитель информатики; Брагинец И., учащийся; ГУО «Средняя школа № 4 г. Дзержинска» можно скачать на сайте Национального института образования
Задачи повышенной сложности по теме "Массивы"
Интерактивное пособие для IX класса «Программируем с увлечением» (автор Пузиновская С. Г., учитель информатики; Брагинец И., учащийся; ГУО «Средняя школа № 4 г. Дзержинска» можно скачать на сайте Национального института образования
Задачи повышенной сложности по теме "Массивы"
Комментариев нет:
Отправить комментарий