Инфоурок Информатика ПрезентацииПрезентация к уроку информатики Одномерные массивы в Pascal

Презентация к уроку информатики Одномерные массивы в Pascal

Скачать материал

Выберите документ из архива для просмотра:

Выбранный для просмотра документ Массивы.ppt

Скачать материал

Рабочие листы
к вашим урокам

Скачать

Рабочие листы к Вашему уроку:

Описание презентации по отдельным слайдам:

  • Презентация по программированиюАвтор: учитель информатики
МОУ Плесской СОШ
Юд...

    1 слайд

    Презентация по программированию
    Автор: учитель информатики
    МОУ Плесской СОШ
    Юдин А.Б.
    2012 год
    Одномерные
    массивы

  • Массив –  пронумерованная совокупность ячеек памяти, названная одним  именем4...

    2 слайд

    Массив – пронумерованная совокупность ячеек памяти, названная одним именем
    44
    22
    10
    11
    14
    30
    19
    1 2 3 4 5 6 7
    А
    A [ 4 ] := 11;
    Имя массива
    Индекс (порядковый номер) элемента массива
    Значение элемента массива
    Определение 1

  • Описание массива...

    3 слайд

    Описание массива 2
    Var имя:ARRAY[1..N] OF тип;
    Объявление массива в разделе описания переменных:
    Например:
    Var A:Array[1..10] of Integer;
    Var Tem:Array[1..100] of Real;
    Имя массива
    Количество элементов
    Тип элементов

  • Type t=array[1..10] of integer; 
Var    a : t; Const  m=10; Var  a : array...

    4 слайд

    Type t=array[1..10] of integer;
    Var a : t;
    Const
      m=10;
    Var a : array [1.. m] of integer;
    Количество элементов можно описать в разделе констант
    Иногда массив объявляют как пользовательский тип данных
    Описание массива 3

  • Сonst a:array[1..5] of  integer =...

    5 слайд

    Сonst a:array[1..5] of  integer =
    (3,-2,1,4,3);
    Массив констант
    Описание массива 4
    Var N:Array ['A'..'Z'] of Integer;
    Var R:Array [-20..20] of Real;
    В зависимости от задачи индексы элементов могут начинаться не только с единицы или быть символьного типа

  • 1. Заполнение массива с клавиатурыFor i:=1 to N do begin...

    6 слайд

    1. Заполнение массива с клавиатуры
    For i:=1 to N do begin
    Write(' a [ ' , i , ' ] = ' );
    ReadLn ( a [ i ] );
    End;
    i , 1, N
    Ввод a i
    Заполнение массива 5

  • 2. Заполнение массива случайными числами.m[i]:=RANDOM (А) 
случайное число из...

    7 слайд

    2. Заполнение массива случайными числами.
    m[i]:=RANDOM (А)
    случайное число из интервала [0; А)
    m[i] :=RANDOM(B-A)+A;
    случайное число из интервала [A ; B)
    m[i] :=RANDOM(B-A+1)+A;
    случайное число из интервала [A ; B]
    Заполнение массива 6
    Например:
    Случайное число из интервала [-5 ; 8).
    А = - 5, В = 8,
    подставим в формулу
    m[i] :=RANDOM(B-A)+A;
    m[i] :=RANDOM(8-(-5))+(-5);
    такую запись нужно упростить
    m[i] :=RANDOM(13)-5;
    For i:=1 to N do begin
    a[i]:=Random(B-A)+A;
    WriteLn(a[i]:10:5);
    End;
    i , 1, N
    Вывод a i
    a i = случайное [A ; B)

  • 3. Заполнение массива при помощи прогрессии.Заполнить массив числами 3,5,7,9,...

    8 слайд

    3. Заполнение массива при помощи прогрессии.
    Заполнить массив числами 3,5,7,9,11 и т.д.
    На первом месте стоит 3
    На втором 3+2 = 5
    На третьем 5+2 = 7 и т.д.
    То есть ai = ai - 1 + 2
    Это арифметическая прогрессия.
    Заполнение массива 7
    a[1]:=3;
    Writeln(a[1]);
    For i:=2 to N do begin
    a[i]:=a[i-1] + 2;
    Writeln(a[i]:5);
    End;
    i , 2, N
    Вывод a i
    ai = ai-1 + 2
    Вывод a 1
    a1 = 3

  • а) в столбик: 
For i:=1 to N do Writeln(a[i]:4:2); б) в строку
For i:=1 to N...

    9 слайд

    а) в столбик:
    For i:=1 to N do Writeln(a[i]:4:2);
    б) в строку
    For i:=1 to N do Write(a[i]:4:2);
    2.23
    3.19
    1.44
    4.93
    5.58
    2.23 3.19 1.44 4.93 5.58

    i , 1, N
    Вывод a i
    Вывод массива 8

  • Вывод массива в две строки...

    10 слайд

    Вывод массива в две строки 9
    Задача 1. Заполнить массив из 10 элементов случайными числами из интервала от -10 до 10, вывести на экран, а затем увеличить каждый элемент массива на 1 и повторно вывес­ти на экран.
    var A:array [1..10] of integer;
    i:integer;
    Begin
    Clrscr;
    for i:=1 to 10 do begin
    a[i]:= random(21)-10;
    write(a[i]:5);
    end;
    writeln;
    for i:=1 to 10 do begin
    a[i]:=a[i]+1;
    write(a[i]:5);
    end;
    end.
    Оператор вывода без LN, вывод осуществляется в строку
    Пустой оператор вывода с LN, когда первая строка закончена, переход на вторую
    Оператор вывода без LN, вывод осуществляется в строку

  • Вывод массива в две строки...

    11 слайд

    Вывод массива в две строки 10
    i , 1, 10
    Вывод a i
    a i = a i + 1
    Конец
    i , 1, 10
    Вывод a i
    a i = случайное [-10 ; 10]
    Начало
    1
    1
    Пустой Writeln между циклами обычно в блок-схеме не изображают.
    Разрыв блок-схемы, если она целиком на лист не убирается

  • Заполнение массива...

    12 слайд

    Заполнение массива 11
    Задача 2. Составить программу заполняющую массив из 10 элементов, числовой последовательностью: 1,4,9,16…
    (где A i = i 2 )
    Program n2;
    Uses Crt;
    var a:array[1..10] of integer;
    i:integer;
    begin
    clrscr;
    for i:=1 to 10 do begin
    a[i]:=i*i;
    write(a[i]:5);
    end;
    end.
    Значение элемента массива зависит только от порядкового номера

  • Заполнение  массива...

    13 слайд

    Заполнение массива 12
    Задача 3. Составить программу заполняющую массив из 10 элементов, числовой последовательностью: 2, 3, 5, 9, 17 и т.д.
    Uses Crt;
    var a:array[1..10] of integer;
    i:integer;
    begin
    clrscr;
    a[1]:=2;
    write(a[1]:5);
    for i:=2 to 10 do begin
    a[i]:=2*a[i-1]-1;
    write(a[i]:5);
    end;
    end.
    Значение элемента массива зависит от предшествующего элемента

  • Изменение элементов массива удовлетворяющих условию For i:=1 to N do  If (усл...

    14 слайд

    Изменение элементов массива удовлетворяющих условию
    For i:=1 to N do If (условие) then a[i]:=значение:
    Условия:
    a [ i ] > 0 – положительный элемент массива
    a [ i ] Mod 2 = 0 – четный элемент массива
    a [ i ] = int(a [ i ]) – целый элемент массива
    a [ i ] = i – элемент массива равен своему порядковому номеру
    i Mod 2 = 0 – четные порядковые номера
    a [ i ] = К – элемент массива равный числу К
    Изменения:
    a [ i ] :=5 – заменить i-ый элемент на число 5
    a [ i ] := - a [ i ] – заменить i-ый элемент на противоположный по знаку
    a [ i ] := a [ i ] * 2 – удвоить каждый элемент массива
    a [ i ] := a [ i - 1]+3 –заменить i-ый элемент предшествующим плюс 3
    Обработка массива 13

  • i , 1, Nai = значениеусловиенетдаБлок-схема обработки массиваБлок-схема обраб...

    15 слайд

    i , 1, N
    ai = значение
    условие
    нет
    да
    Блок-схема обработки массива
    Блок-схема обработки и вывода
    в одном цикле
    Обработка массива 14
    i , 1, N
    Вывод a i
    ai = значение
    условие
    нет
    да
    Цикл обработки и вывода элементов массива на экран

    For i:=1 to N do begin
    If (условие) then a[i]:=значение:
    Writeln(a[i]:5);
    end;

  • Нахождение суммы  элементов массива удовлетворяющих условию: s:=0;
For i:=1 t...

    16 слайд

    Нахождение суммы элементов массива удовлетворяющих условию:
    s:=0;
    For i:=1 to N do If (условие) then s:=s+ a[i];
    WriteLn ('Сумма = ', s:10:5);
    Нахождение суммы и произведения элементов массива 15
    Предполагаем, что сумма равна нулю
    Если элемент подходит по условию, добавляем его к сумме
    Нахождение произведения элементов массива удовлетворяющих условию:
    p:=1;
    For i:=1 to N do If (условие) then p:=p* a[i];
    WriteLn('Произведение = ', p:10:5);
    Если элемент подходит по условию, добавляем его к произведению
    Предполагаем, что произведение равно единице

  • Подсчет количества элементов удовлетворяющих условию: k:=0;
For i:=1 to N do...

    17 слайд

    Подсчет количества элементов удовлетворяющих условию:
    k:=0;
    For i:=1 to N do If (условие) then k:=k+1;
    WriteLn('Кол-во=',k:10);
    Предполагаем, что таких элементов нет
    Если такой элемент есть, то К увеличиваем на 1.
    i , 1, N
    Вывод k
    k := k + 1
    условие
    нет
    да
    k := 0
    Подсчет количества элементов удовлетворяющих условию 16

  • Задача 4. Дан массив из 15 целых чисел заполненный случайными числами из инте...

    18 слайд

    Задача 4. Дан массив из 15 целых чисел заполненный случайными числами из интервала [0; 20]. Выведите этот массив в строку и найдите количество четных элементов массива, которые меньше среднего арифметического его элементов.
    ClrScr;
    s:=0;
    For i:=1 to 15 do begin
    a[i]:=Random(21);
    write (a[i]:10);
    S:=S+a[i];
    end;
    Предполагаем, что сумма равна нулю
    Организуем цикл из 15 повторений
    Нахождение суммы элементов массива 17
    Определяем число случайным образом
    Выводим его на экран
    Добавляем к сумме

  • Writeln;
  s:=s/15;
  Writeln('Среднее арифметическое = ',s:10:5);
  k:=0;...

    19 слайд

    Writeln;
    s:=s/15;
    Writeln('Среднее арифметическое = ',s:10:5);
    k:=0;
    For i:=1 to 15 do
    if (a[i] Mod 2 = 0) and (a[i]<s) then k:=k+1;
    Writeln('Четных чисел меньших среднего арифметического ', k:8);
    Находим среднее арифметическое
    Выводим его на экран
    Предполагаем, что таких элементов нет
    Организуем цикл из 15 повторений
    Если элемент четный и меньше среднего арифметического, увеличиваем К на единицу
    Выводим К на экран
    Нахождение суммы элементов массива 18

  • Нахождение максимального элемента в массиве и его номера:max:=a[1]; 
k:=1;
fo...

    20 слайд

    Нахождение максимального элемента в массиве и его номера:
    max:=a[1];
    k:=1;
    for i:=2 to N do if (a[i]>max) then begin
    max:=a[i];
    k:=i;
    end;
    WriteLn(‘Max=’,max:10:5);
    WriteLn(‘Номер=’,k:5);
    Предполагаем, что наибольший элемент стоит на первом месте
    Если находится больший элемент
    Он становится максимальным
    Когда массив закончился, выводим наибольший элемент и его номер
    Максимальный и минимальный элемент массива 19

  • max:= 1;
 for i:=2 to N do if a[i] &gt; a[max] then  max:=i;
 writeln(&#039;Максимал...

    21 слайд

    max:= 1;
    for i:=2 to N do if a[i] > a[max] then max:=i;
    writeln('Максимальный элемент ',а[max]);
    writeln('Его номер ', Max);
    Иногда в задаче достаточно определить индекс наибольшего элемента
    Максимальный и минимальный элемент массива 20
    Предполагаем, что наибольший элемент стоит на первом месте
    Если i-ый элемент больше стоящего на месте max
    то, запоминаем его индекс в переменной max

  • Сортировка элементов массива по возрастаниюFor i:=1 to N-1 do
            For...

    22 слайд

    Сортировка элементов массива по возрастанию
    For i:=1 to N-1 do
    For j:=i to N do
    if (a[i]>a[j]) then begin
    p:=a[i];
    a[i]:=a[j];
    a[j]:=p;
    end;
    Сортировка массива 21
    Перебираем элементы от первого до предпоследнего
    Перебираем от i-ого элемента до конца
    Если в оставшейся строке находится элемент меньше чем i-ый …
    То меняем их местами
    Сортировка массива:
    4; -2; 6; -5
    по возрастанию с изменениями происходящими в массиве

  • Сортировка массива...

    23 слайд

    Сортировка массива 22
    i, 1, N-1
    j, i, N
    ai>aj
    p=ai
    ai=aj
    aj=p

    Да
    Нет
    Общая идея алгоритма:
    Берем i-ый элемент
    Последовательно сравниваем его со всеми элементами с права
    Если находится элемент меньший чем i-ый, то они меняются местами
    Так на i-ом месте окажется самый маленький элемент
    i увеличиваем на единицу и повторяем процесс…

  • Сортировка массива...

    24 слайд

    Сортировка массива 23

    Упорядочить по возрастанию: 4 -2 6 -5

  • Вставка элемента с номером p в последовательность For i:=N downto p do a[i+1]...

    25 слайд

    Вставка элемента с номером p в последовательность
    For i:=N downto p do a[i+1]:=a[i];
    a[p]:=значение;
    N:=N+1;
    За каждый оборот цикла смещаем элементы на один номер в право.
    12
    11
    14
    7
    Вставка и удаление элементов массива 24
    Перебираем элементы от последнего до места на которое нужно вставить,
    На место с индексом Р ставим нужное значение и увеличиваем на 1 количество элементов
    9
    14
    11
    12
    7
    100
    N
    p
    9

  • 91211147Удаление элемента с номером p из массива:for i:=p to (N-1) do a[i]:=a...

    26 слайд

    9
    12
    11
    14
    7
    Удаление элемента с номером p из массива:
    for i:=p to (N-1) do a[i]:=a[i+1];
    N:=N-1;
    Вставка и удаление элементов массива 25
    Перебираем элементы от места которое удаляем до предпоследнего элемента
    Уменьшаем на 1 количество элементов
    За каждый оборот цикла смещаем элементы на один номер в лево.
    14
    11
    12
    7
    p
    9
    N
    100

  • Вставка элементов удовлетворяющих условию в другой массив. Пусть нам дан масс...

    27 слайд

    Вставка элементов удовлетворяющих условию в другой массив. Пусть нам дан массив с именем А, а переместить элементы нужно в массив В
    j:=0;
    For i:=1 to N do
    if (а[i]…) then begin
    j:=j+1;
    b[j]:=a[i];
    end;
    K:=j;
    Порядковый номер элемента в массиве В
    Если элемент из А удовлетворяет условию
    То, увеличиваем количество элементов в В, и под этим индексом помещаем элемент из А
    Количество элементов в массиве В будет равно последнему порядковому номеру перенесенного элемента
    Выбор элементов массива в другой массив 26

  • Задача 5. Дан массив из 10 целых, положительных не повторяющихся чисел. Прове...

    28 слайд

    Задача 5. Дан массив из 10 целых, положительных не повторяющихся чисел. Проверить образуют ли его элементы арифметическую прогрессию. Если образуют, то вывести разность прогрессии.
    // заполнить массив
    r:= a[2]-a[1];
    flag:=true;
    For i:=2 to 9 do if (a[i+1]-a[i]<>r) then flag:=false;
    If flag then Begin
    Writeln('Арифметическая прогрессия');
    Writeln('Разность = ',r:8);
    End
    else
    Writeln('Не арифметическая прогрессия');
    Проверка массива 27
    Находим разность между первым и вторым элементом
    Предполагаем, что массив – арифметическая прогрессия
    Организуем цикл от второго до предпоследнего элемента
    Если находится пара элементов, у которых другая разность, то это не арифметическая прогрессия
    Если значение истинно
    То выводим разность и соответствующее сообщение
    Иначе – выводим соответствующее сообщение

  • НачалоПроверка массива...

    29 слайд

    Начало
    Проверка массива 28
    r:= a2-a1;
    flag:=true
    i, 2, 9
    ai+1-ai ≠ r
    flag:=false
    flag=true
    1
    Вывод:
    Прогрессия
    Вывод:
    Не прогрессия
    Конец
    Заполнение массива и вывод его на экран
    1
    Нет
    Нет
    Да
    Да
    Цикл в котором проверяется разность между соседними элементами
    Условие проверяющее изменилась ли переменная Flag

  • Задача 6. Дан массив из 10 случайных чисел из интервала от -10 до 10. Найти н...

    30 слайд

    Задача 6. Дан массив из 10 случайных чисел из интервала от -10 до 10. Найти номер первого отрицательного элемента (Он обязательно существует)
    Поиск элемента 29
    // заполнить массив
    i:=1;
    while (a[i]>=0) do i:=i+1;
    write('Первое отрицательное ',a[i]:4);
    Пока элемент массива положителен или ноль берем следующий элемент

  • Заполнение массива...

    31 слайд

    Заполнение массива 30
    Задача 7. Заполнить массив из 10 элементов случайными числами из интервала [0; 10), так, чтобы числа не повторялись.
    For i:=1 to 10 do
    begin
    repeat
    flag:=false;
    a[i]:=random(10);
    for j:=1 to i-1 do if a[i]=a[j] then flag:=true;
    until flag=false;
    write(a[i]:5);
    end;
    Цикл отвечающий за количество чисел в массиве
    Цикл возвращающий процесс назад если такое число уже было
    Цикл в котором проверяется не встречалось ли такое число

  • Заполнение массива...

    32 слайд

    Заполнение массива 31
    i,1,10
    flag=false
    a i = случайное[0;10)
    j, 1, i-1
    ai=a j
    flag=true
    flag=false
    Вывод
    a i
    Да
    Нет
    Да
    Нет
    Цикл возвращающий процесс назад если такое число уже было
    Цикл отвечающий за количество чисел в массиве
    Цикл в котором проверяется не встречалось ли такое число

Рабочие листы
к вашим урокам

Скачать

Выбранный для просмотра документ Описание_Одномерные_массивы.doc

Презентация с методическим сопровождением «Одномерные массивы в языке программирования Pascal»

 

            Презентация предназначена для использования на уроках информатики в 9 или 10 классах (в зависимости от программы) при изучении темы «Программирование на языке Pascal». Данная презентация не является электронным учебником, а служит иллюстративным материалом к объяснению учителя.  Презентация состоит из 31 слайдов объединенных в 6 блоков.

 

Блок 1.

Описание и способы заполнения массива.

 

            Слайд 1. Иллюстрирует определение массива. Показана операция присваивания для индексированной переменной.

            Слайд 2. Показаны примеры самого простого случая описания массива.

            Слайд 3. Показаны примеры описания массива,  когда количество элементов задается через раздел констант, и описание массива как пользовательский тип данных.

            Слайд 4. Показан пример массива констант, заданного непосредственно из программы. А также примеры диапазонов индексов элементов массива начинающихся не с единицы. Показан пример, когда индексами могут быть целые числа от -20 до 20 или заглавные латинские буквы.

            Слайд 5. Показан фрагмент программы и блок-схема заполнения массива с клавиатуры.

            Слайд 6. Показаны формулы для присваивания элементу массива случайных (псевдослучайных) чисел из интервалов [0; A) , [A; B) и [A; B]. Показан пример использования одной из формул. А так же фрагмент программы и блок-схема заполнения массива случайными числами.

            Слайд 7.  Показан способ заполнения массива числами, являющимися членами арифметической или геометрической прогрессии.

            Слайд 8. Показаны фрагменты программы и блок-схема вывода элементов массива на экран. На слайде показывается, как окончание LN в процедуре Writeln  влияет на вывод массива в столбик или строчку.

            Слайд 9. Показан пример решения простейшей задачи на заполнение изменение и вывод массива на экран:        Заполнить массив из 10 элементов случайными числами из интервала от -10 до 10, вывести на экран, а затем увеличить каждый элемент массива на 1 и повторно вывести на экран.

            Приводится текст решения данной задачи. Отдельно делается упор на использование пустой процедуры Writeln межу циклом заполнения и циклом обработки с выводом. Такая организация программы позволяет выводить небольшие массивы в две строки, исходный  массив, а под ним измененный массив.

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

            Слайд 10. Показана блок-схема к задаче из слайда 9.

            Слайд 11.  Показано решение задачи: Заполнить массив числовой последовательностью 1, 4, 9, 16, 25, … (ai = i2). В этом примере значение элемента массива зависит только от его порядкового номера.

            Слайд 12. Показано решение задачи: Заполнить массив числовой последовательностью 2, 3, 5, 9, 17… (ai =  2ai - 1 -1). В этом примере последовательность начинается с 2, а каждый следующий получается из предыдущего по формуле.

 

Задачи для самостоятельного решения:

1.       Заполнить массив целыми положительными и отрицательными числами из интервала [-10, 10] и вывести его в строчку. Поменять знаки элементов массива на противоположные и повторно вывести массив на экран в строчку.

2.      Написать программу, осуществляющую заполнение и вывод на экран массива состоящего из 10 элементов последовательностью 1,3,5,7,... (Удвоенный порядковый номер минус 1)

3.      Написать программу, осуществляющую заполнение и вывод на экран массива состоящего из 10 элементов последовательностью 4,7,13,25,... (Удвоенное значение минус 1)

4.      Написать программу, осуществляющую заполнение и вывод на экран массива состоящего из 10 элементов последовательностью 1,-1,1,-1,...

5.      Написать программу, осуществляющую ввод значений массива с клавиа­туры (10 элементов) и вывод их в строчку.

6.      Написать программу, осуществляющую заполнение массива из 10 элементов случайными числами из интервала от -5 до 5 и вывода их в строчку.

7.      Написать программу, заполняющую массив из 10 элементов по следую­щему правилу: А(i) = (2*i – 1)/sin (i);

8.       Найдите 6-ой член последовательности A(i)=A(i-1)*A(i-1)+1 , если А(1)=5.

9.      Заполнить массив из 10 элементов случайными числами из интервала от -10 до 10, вывести на экран, а затем увеличить каждый элемент массива на 1 и повторно вывес­ти на экран.

10.  Заполнить массив из 5 элементов случайными числами из интервала от -15 до 15, вывести на экран, а затем увеличить каждый элемент в два раза и повторно вывести на экран.

11.  Заполнить массив из 15 элементов числами из интервала от -10 до 10 вывести в строчку и повторно вывести в строчку, но в обратном поряд­ке.

12.  Заполнить массив из 15 элементов числами из интервала от -10 до 10 вывести в строчку и поменять пары элементов стоящие на четных мес­тах с элементами стоящими на нечетных местах , массив вывести повтор­но.

Блок 2.

Обработка элементов массива согласно условию.

 

            Слайд 13. Дан фрагмент программы выборочной обработки элементов массива, согласно условию. Приведены примеры различных условий и некоторые приемы обработки элементов массива.

            Слайд 14. Показаны блок-схемы обработки элементов массива согласно условию и блок-схема обработки совместно с выводом элементов массива на экран. Дан фрагмент программы реализующей обработку элементов массива согласно условию и вывод их на экран.

 

Задачи для самостоятельного решения:

13.  Заполнить массив  из 10 элементов с клавиатуры целыми положительными и отрицательными числами и вывести на экран в строчку только отрицательные числа.

14.  Написать программу , осуществляющую заполнение массива случайными числами из интервала от -10 до 10, вывести его на экран, а затем все элементы из интервала от -5 до 5 увеличить на 1, массив повторно вы­вести на экран.

15.  Заполнить массив из 15 элементов числами из интервала от -10 до 10 вывести в строчку и повторно вывести в строчку, заменив положитель­ные элементы на число 0.

16.  Заполнить массив из 15 элементов числами из интервала от -10 до 10 вывести в строчку, и повторно вывести в строчку заменив все элементы большие 5 на 0.

17.  Заполнить массив из 15 элементов числами из интервала от -10 до 10 вывести в строчку, и повторно вывести в строчку заменив элементы не большие 3 их кубами.

18.  Заполнить массив из 15 элементов числами из интервала от -10 до 10 вывести в строчку и повторно вывести в строчку, заменив все четные элементы на число 100.

19.  Заполнить массив из 15 элементов числами из интервала от -10 до 10 вывести в строчку и повторно вывести в строчку заменив все элементы стоящие на четных местах на число 5.

20.  Заполнить массив из 15 элементов целыми числами с клавиатуры,  и вывести на экран те элементы, у которых номер совпадает со значением.

21.  Заполнить массив из 15 элементов числами из интервала от -10 до 10 вывести в строчку и вывести на экран порядковые номера :

a)      нулевых элементов

b)      отрицательных элементов,

c)       положительных элементов,

d)      ненулевых элементов,

e)      элементов больше заданного числа М

f)       элементов равных заданному числу М

g)      элементов не меньше заданного числа М

h)     элементов не равных заданному числу М

i)       равных первому элементу массива

j)       равных последнему элементу массива.

22.  Составить программу определяющую сколько раз число К встречается среди элементов массива А(5) . Число и массив ввести с клавиатуры.

23.  Заполнить с клавиатуры массив из 10 чисел целыми и дробными чис­лами и вывести на экран порядковые номера целых элементов массива.

24.  Заполнить с клавиатуры массив из 10 чисел целыми числами и вывес­ти на экран номера рядом стоящих нулей.

25.  Дан массив А размера N, введенный с клавиатуры. Найти его локальные максимумы. (Локальный максимум – это элемент массива, который больше любого из своих соседей.)

 

Алгоритм решения задачи поиска элементов по заданному условию вытекает из предшествующего алгоритма:

For i:=1 to N do  begin

                              If (условие) then a[i]:=значение:

                              Writeln(a[i]:5);

                             end;

 

For i:=1 to N do  begin

                              If (условие) then   Writeln(a[i]:5);

                             end;

Отдельного слайда в презентации по поиску элементов нет. Но, как правило, учащиеся достаточно легко производят данное преобразование.

 

Блок 3.

Нахождение суммы, произведения и количества элементов массива удовлетворяющих условию.

 

            Слайд 15. Показаны фрагменты программы нахождения суммы и произведения элементов массива согласно условию.

 

Задачи для самостоятельного решения:

 

26.  Дан массив из 40 случайных чисел из интервала [-10; 10]. Вывести его в строку и найти:

      а)     б)     в)     г)

27.    Дан массив из 10 случайных чисел из интервала [-25; 25]. Вывести его в строку и найти:

            а)        б)          в)           г)

В****************************************************************

28.  Заполнить массив из 10 целых чисел с клавиатуры положительными и отрицательными числами. Найти сумму положительных элементов массива.

29.  Дан массив из 15 целых чисел заполненный случайными числами из интервала [0; 20].  Найти сумму элементов массива, значения которых не превышает 10.

30.  Дан массив из 15 целых чисел заполненный случайными числами из интервала [0; 20]. Определить сумму элементов имеющих четные порядковые номера.

31.  Дан массив из 20 целых чисел заполненный случайными числами из интервала [-15; 15]. Найти сумму элементов от элемента с номером А до элемента с номером В. А и В вводятся с клавиатуры.

 

            Слайд 16. Показан фрагмент программы и блок-схема подсчета количества элементов массива удовлетворяющих условию.

 

Задачи для самостоятельного решения:

 

32.  Составить программу определяющую сколько раз число К встречается среди элементов массива А(5) . Число и массив ввести с клавиатуры.

33.  Заполнить с клавиатуры массив из 10 чисел целыми и дробными чис­лами и вывести на экран порядковые номера целых элементов массива.

34.  Заполнить с клавиатуры массив из 10 чисел целыми и дробными чис­лами и вывести на экран количество целых и дробных чисел.

35.  В массив из 10 элементов записаны оценки группы учащихся. Составить программу, выводящую на экран количество оценок 2,3,4 и 5.

36.  В массиве из 20 элементов заполненном целыми числами  из интервала [0; 15] найти число пар соседних элементов являющихся четными числами.

37.  В массиве из 20 элементов заполненном целыми числами  из интервала [10; 100] найти количество чисел оканчивающихся на 0.

38.  В массиве из 20 элементов заполненном целыми числами  из интервала [10; 100] найти количество четных  чисел оканчивающихся на цифру 4.

39.  В массиве из 20 элементов заполненном целыми числами  из интервала [0; 1000] найти количество четных двузначных чисел.

 

            Слайд 17. Приведен пример комбинированной задачи: Дан массив из 15 целых чисел заполненный случайными числами из интервала [0; 20]. Выведите этот массив в строку и найдите количество четных элементов массива, которые меньше среднего арифметического его элементов.

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

            Слайд 18. Продолжение решения задачи из слайда 17.

 

Задачи для самостоятельного решения:

40.  Дан массив из 10 целых чисел заполненный случайными числами из интервала [0; 15]. Определить является ли сумма элементов массива четным числом.

41.  Дан массив из 10 целых чисел заполненный случайными числами из интервала [-15; 15]. Определить является ли сумма элементов массива положительным числом.

42.  Дан массив из 10 целых чисел заполненный случайными числами из интервала [-15; 15]. Определить является ли произведение  элементов массива имеющих нечетные порядковые номера  четным числом.

43.  Дан массив из 10 целых чисел заполненный случайными числами из интервала [0; 15]. Определить является ли сумма элементов массива, значение которых меньше 8,  четным числом.

44.  Дан массив из 20 целых чисел заполненный случайными числами из интервала [0; 15]. Определить среднее арифметическое элементов  массива больших некоторого числа P.

45.  Дан массив из 20 целых чисел заполненный случайными числами из интервала [0; 15]. Определить среднее арифметическое нечетных элементов массива.

46.  Дан массив из 20 целых чисел заполненный случайными числами из интервала [-15; 15]. Определить среднее арифметическое элементов массива стоящих на четных местах.

47.        Дан массив из 15 целых чисел заполненный случайными числами из интервала [0; 20]. Выведите этот массив в строку и найдите количество четных элементов массива, которые меньше среднего арифметического его элементов

48.        Дан массив из 15 целых чисел заполненный случайными числами из интервала [-20; 20]. Определить частное от деления суммы положительных элементов массива  на модуль суммы отрицательных элементов.

49.          Дан массив из 15 целых чисел заполненный случайными числами из интервала [-20; 20]. Определить что больше сумма положительных элементов или модуль суммы отрицательных элементов.

50.        . Дан массив из 15 целых чисел заполненный случайными числами из интервала [-20; 20]. Определить, что больше среднее арифметическое элементов массива стоящих на четных местах или среднее арифметическое положительных элементов массива.

51.          Дан массив из 15 целых чисел заполненный случайными числами из интервала [-20; 20]. Определить, количество элементов больших суммы всех элементов массива  и вывести из порядковые номера на экран.

52.        Дан массив из 15 целых чисел заполненный случайными числами из интервала [-20; 20]. Определить, что больше сумма или произведение элементов массива.

           

Блок 4.

Максимальный, минимальный элемент массива. Сортировка массива.

           

            Слайд 19. Приведен фрагмент программы нахождения максимального элемента массива.

            Слайд 20. Приведен более простой вариант программы нахождения максимального элемента массива.

 

Задачи для самостоятельного решения:

53.  Заполнить массив из 15 элементов числами из интервала от -10 до 10 вывести в строчку и вывести на экран порядковый номер наибольшего элемента массива.

54.  Дан массив из 20 элементов заполненный случайными  целыми числами из интервала [-10, 10]. Выведите этот массив в строку и найдите наибольший элемент, лежащий между 5 и 15 элементами данного массива.

55.  Дан массив из 20 элементов заполненный случайными  целыми числами из интервала [-10, 10]. Выведите этот массив в строку и найдите наибольший элемент среди четных элементов массива.

56.  Дан массив из 20 элементов заполненный случайными  целыми числами из интервала [-10, 10]. Выведите этот массив в строку и найдите наибольший элемент среди отрицательных элементов массива.

57.  Дан массив из 20 элементов заполненный случайными  целыми числами из интервала [-10, 10]. Выведите этот массив в строку и найдите наименьший элемент среди элементов с нечетными порядковыми номерами.

58.  Дан массив из 20 элементов заполненный случайными  целыми числами из интервала [-10, 10]. Выведите этот массив в строку и найдите сколько раз в данном массиве встречается максимальный по величине элемент.

59.  Дан массив из 20 элементов заполненный случайными  целыми числами из интервала [-10, 10]. Выведите этот массив в строку, найдите минимальный элемент, и если их несколько, выведите их порядковые номера.

60.  Дан массив из 10 целых положительных чисел, заполненный с клавиатуры. Найти максимальный и минимальный элемент в массиве и определить, на сколько максимальный элемент больше минимального.

61.  Заполнить массив из 15 элементов числами из интервала от -10 до 10 вывести в строчку , найти наименьший элемент и при повторном выводе на экране этот элемент не выводить.

62.  Дан массив из 10 целых положительных чисел, заполненный с клавиатуры. Найти максимальный и минимальный элемент в массиве и поменять их местами.

63.  Дано число R и массив А размера N, заполненный с клавиатуры. Найти элемент массива, который наиболее близок к числу R.  (то есть такой элемент Ai, для которого величина |Ai - R| является минимальной.

64.  Дан массив А размера N, заполненный с клавиатуры. Найти два соседних элемента, сумма которых максимальна.

65.  Дано число R и массив А размера N, заполненный с клавиатуры. Найти два соседних элемента массива, сумма которых наиболее близка к числу R.  (то есть такие элементы Ai и Аi+1 для которых величина |(Ai + Аi+1)- R| является минимальной.

66.  Дан массив А размера N, введенный с клавиатуры. Найти наибольший из  его локальные минимумов. (Локальный минимум  – это элемент массива который меньше любого из своих соседей.)

67.  Дан массив А размера N, введенный с клавиатуры и заполненный нулями и единицами. Найти наибольшее количество идущих подряд единиц.

 

            Слайд 21. Приведен фрагмент программы сортировки элементов массива по возрастанию.

            Слайд 22. Представлена блок-схема сортировки по возрастанию, а так же общая идея этого алгоритма.

            Слайд 23. Представлена трассировка сортировки массива из четырех элементов, содержащего положительные и отрицательные числа.

Алгоритмов сортировки существует достаточно много. По этому в качестве самостоятельной работы  по этой теме можно предложить самостоятельное изучение других алгоритмов. Результатом изучения должен стать доклад. Который может состоять из следующих разделов:

1.      Кем и когда предложен, где используется. (Если это конечно можно узнать из Интернета)

2.      Общая идея метода сортировки.

3.      Программа, реализующая данный метод.

4.      Блок-схема к ней.

5.      Таблица трассировки небольшого примера.

 

           

Блок 5.

Вставка и удаление элементов массива.

 

            Слайд 24. Представлен фрагмент программы вставки элемента в массив, со сдвигом в право. Наглядно представлен процесс вставки происходящий в памяти компьютера. 

            Слайд 25. Представлен фрагмент удаления элемента массива со сдвигом в лево.  Наглядно представлен процесс вставки происходящий в памяти компьютера. 

 

Задачи для самостоятельного решения:

 

68.  Удалите из массива, состоящего из 10 элементов, заполненного с клавиатуры: (элементы, про которые говорится в задачах, обязательно присутствуют в массиве)

a)      Последняя цифра которых 5

b)       Последняя цифра которых четная и само число делится на нее

c)      Кратные 7 из интервала от [a, b], (a и b вводятся с клавиатуры)

d)      Значения которых меньше нуля

e)      Больше числа А введенного с клавиатуры

f)       Четные элементы, стоящие на нечетных местах

g)      Кратные 3 или 5

69.  Вставьте число k в массив состоящий из 10 элементов, заполненный с клавиатуры: (элементы, про которые говорится в задачах, обязательно присутствуют в массиве)

a)      После всех элементов кратных своему номеру

b)      Перед всеми элементами заканчивающимися на цифру 1

c)      Перед всеми элементами кратными числу 3

d)      После максимального элемента

e)      После всех отрицательных элементов

f)       Перед всеми элементами большими k

 

            Слайд 26. Представлена общая идея программы переноса элементов удовлетворяющих условию  из одного массива в другой.

 

Задачи для самостоятельного решения:

 

70.   Дан массив из 10 целых положительных и отрицательных чисел. Перепишите в другой массив элементы, стоящие на четных местах.

71.  Дан массив из 10 целых положительных и отрицательных чисел. Перепишите в другой массив четные положительные элементы.

72.  Дан массив из 20 целых положительных и отрицательных чисел. Сформируйте два массива в первый перепишите положительные числа, во второй отрицательные. Оба новых массива выведите на экран.

73.  Дан массив из 10 целых положительных и отрицательных чисел. Сформируйте второй массив такого же размера по правилу: если на i-ом месте в первом массиве стоит положительное число, во втором массиве на этом месте должна быть 1, если отрицательное- 2, если 0, то во втором массиве должна быть на этом месте  цифра 3.

74.  Дан массив из 10 целых положительных и отрицательных чисел. Сформируйте второй массив такого же размера по правилу: если в первом массиве на i-ом месте стоит четный элемент, то удвоить его и записать во второй массив на это же место, а вместо нечетных элементов записать 0.

 

Блок 6.

Проверка массива.

 

            Слайд 27. Показано решение задачи: Дан массив из 10 целых чисел. Проверить, являются ли эти числа арифметической прогрессией. Если да, то вывести разность прогрессии.

            Подобные задачи используют понятие «флагов» или «флажков», при помощи которых фиксируется то или иное утверждение. В данном примере флаги имеют логический тип. Но с таким же успехом можно использовать и числа, например Integer  (А:=1 вместо  A:=true и А:=0 вместо  A:=false)

            Слайд 28. Приведена блок-схема к задаче из слайда 27.

 

            Задачи для самостоятельного решения:

 

75.  Дан массив из 10 целых положительных и отрицательных чисел, заполненный с клавиатуры. Проверить чередуются ли в нем положительные и отрицательные числа.

76.  Дан массив из 10 целых положительных и отрицательных чисел, заполненный с клавиатуры. Проверить все ли элементы этого массива четные.

77.  Дан массив из 10 целых положительных и отрицательных чисел, заполненный с клавиатуры. Проверить, расположены ли его элементы по возрастанию или убыванию и вывести соответствующее сообщение. Предусмотреть случай, когда элементы массива не рассортированы.

78.  Дан массив из 10 целых положительных и отрицательных чисел, заполненный с клавиатуры. Проверить состоит ли данный массив только из положительных чисел кратных 2.

79.  Дан массив из 10 целых положительных и отрицательных чисел, заполненный с клавиатуры. Проверить, есть ли в нем три подряд идущих положительных элемента.

 

            Слайд 29. Дан фрагмент решения задачи: Дан массив из 10 случайных чисел из интервала от -10 до 10. Найти номер первого отрицательного элемента (Он обязательно существует)

            Особенностью данных задач является использование циклов с пред или постусловием.

 

Задачи для самостоятельного решения:

 

80.  Известно, что в массиве, состоящем из 10 элементов, заполненном с клавиатуры, есть несколько чисел 5. Найти порядковые номера первого и последнего из них.

81.  Известно, что в массиве, состоящем из 10 элементов, заполненном с клавиатуры, есть несколько нулей. Вывести на экран порядковые номера всех нулей кроме первого и последнего.

82.  Дан массив, заполненный с клавиатуры и состоящий из 10 элементов. Вывести на экран все элементы, стоящие перед первым отрицательным элементом.

83.  Вставить в массив, состоящий из 10 элементов, заполненный с клавиатуры число k перед последним отрицательным элементом.

84.  Вставить в массив, состоящий из 10 элементов, заполненный с клавиатуры число k перед первым положительным элементом.

 

 

            Слайд 30. Показано решение задачи: Заполнить массив из 10 элементов случайными числами из интервала [0; 10), так, чтобы числа не повторялись.

            Слайд 31. Приведена блок-схема к задаче из слайда 30.

             

Для закрепления темы необходимо решать как можно больше задач. Их количество напрямую зависит от количества часов отведенных на изучение данной темы и курса программирования в целом. 

На мой взгляд самыми удачными задачниками по программированию являются:

1.            Сборник задач по программированию. 2-е издание. Автор Д.М. Златопольский. Изданный в СПб «БХВ-Петербург» в 2007 году.

2.        Электронная версия задачника Programming Taskbook Версия 4.6. Автор М.Э.Абрамян. Распространяемый с системой программирования Pascal ABC.

В них представлены задачи по всем темам курса программирования.

Мною на основе этих задачников и некоторых других источников сделан собственный мини задачник с делением задач на три группы сложности А,В и С.

Ссылка на задачник:  

http://privples.iv-edu.ru/informatica/1/Mater/SBORNIK_ZADAS.doc

 

 

 

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал

Рабочие листы
к вашим урокам

Скачать

Рабочие листы
к вашим урокам

Скачать

Краткое описание документа:

Информа́тика (фр. Informatique; англ. Computer science) — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений[1].

Информатика включает дисциплины, относящиеся к обработке информации в вычислительных машинах и вычислительных сетях: как абстрактные, вроде анализа алгоритмов, так и конкретные, например разработка языков программирования и протоколов передачи данных.

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 367 067 материалов в базе

Материал подходит для УМК

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

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

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 31.05.2018 9332
    • RAR 135.7 кбайт
    • 518 скачиваний
    • Рейтинг: 5 из 5
    • Оцените материал:
  • Настоящий материал опубликован пользователем Бровкова Альбина Геннадьевна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Бровкова Альбина Геннадьевна
    Бровкова Альбина Геннадьевна
    • На сайте: 8 лет и 2 месяца
    • Подписчики: 1
    • Всего просмотров: 855660
    • Всего материалов: 842

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Создание и обеспечение электронного архива с использованием информационно-коммуникационных технологий

Специалист по формированию электронного архива

600 ч.

9500 руб. 4750 руб.
Подать заявку О курсе
  • Сейчас обучается 32 человека из 22 регионов

Курс повышения квалификации

Применение компьютерных моделей при обучении математике и информатике в рамках ФГОС ООО

72 ч. — 180 ч.

от 2200 руб. от 1100 руб.
Подать заявку О курсе
  • Сейчас обучается 31 человек из 21 региона

Курс повышения квалификации

Теоретические и методологические основы преподавания информатики с учётом требований ФГОС ООО

72 ч. — 180 ч.

от 2200 руб. от 1100 руб.
Подать заявку О курсе
  • Сейчас обучается 176 человек из 58 регионов