Официальный сайт ruskorinfo 24/7/365

НФПК
Проект реализуется
Национальным фондом подготовки кадров
Вы не зарегистрированы

Авторизация



Одномерные массивы

Размещено: Елена Витальевна Иванова - сб, 17/11/2012 - 17:31
Данные об авторе
Автор(ы): 
Иванова Елена Витальевна
Место работы, должность: 
МАОУ "Лицей №4" г. Чебоксары
Регион: 
Республика Чувашия
Характеристики урока (занятия)
Уровень образования: 
основное общее образование
Целевая аудитория: 
Учащийся (студент)
Целевая аудитория: 
Учитель (преподаватель)
Класс(ы): 
8 класс
Класс(ы): 
9 класс
Предмет(ы): 
Информатика и ИКТ
Тип урока: 
Комбинированный урок
Используемые учебники и учебные пособия: 
  •  
Краткое описание: 
план-конспект с презентацией

 

Тема урока:«Одномерные массивы».

 

Тип урока:комбинированный.

 

Продолжительность урока:45 минут.

 

Возраст учащихся:IX класс.

 

Цели урока:

  • формирование знаний и умений учащихся по теме “Массивы”;
  • выработка первичных навыков решения задач с применением одномерных массивов.

 

Задачи урока:

образовательные:

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

развивающие:

  • развитие структурного мышления учащихся;
  • развитие учебно-познавательную деятельность учащихся на основе самостоятельного анализа фактов, предлагаемых учителем;
  • развитие способностей к формализации;

воспитательные:

  • привитие исследовательского подхода в познании нового;
  • воспитание чувства ответственности за результаты своего труда;
  • воспитание сотрудничества.

 

Программное обеспечение:программа Turbo Pascal 7.0, программа создания презентаций PowerPoint.

 

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

 

Структура урока:

  1. Организационный момент – 1 мин.
  2. Сообщение темы и цели урока – 1 мин.
  3. Актуализация знаний и умений учащихся – 3 мин.
  4. Ввод основных понятий темы – 16 мин.
  5. Закрепление (применение полученных знаний) – 20 мин.
  6. Подведение итогов урока – 2 мин.
  7. Домашнее задание – 2 мин.

 

Ход урока

 

1. Организационный момент.

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

 

2. Сообщение темы и цели урока.

Сегодня на уроке мы с вами познакомимся с новым понятием «одномерные массивы», узнаем, что же это такое, как их формировать, как выводить на экран, для чего они нужны и научимся с ними работать. Итак, записываем тему урока «Одномерные массивы».

 

3. Актуализация знаний и умений учащихся.

Для изучения новой темы нам понадобятся ранее приобретенные знания. Давайте вспомним некоторые моменты:

  • Что называется циклом? (Цикл - это специальная конструкция языка, позволяющая запрограммировать многократное выполнение определённого блока команд.)
  • С какими операторами цикла в Pascalвы знакомы?(Оператор цикла с параметром (FOR..TO..DO); с предусловием (WHILEDO…); с постусловием (REPEATUNTIL…).)
  • Какой из данных операторов является универсальным? (WHILE)
  • При использовании какого оператора цикл выполнится как минимум один раз? (REPEAT)
  • Каково главное отличие условных операторов цикла от оператора цикла с параметром? (В теле условных циклов необходимо изменять переменные, входящие в условие, а в теле цикла с параметром параметр изменять нельзя)

 

4. Ввод основных понятий темы.

В программах очень часто приходится обрабатывать большие объёмы однотипных данных. Применять обычные переменные для этого очень неудобно. Представьте себе: вам нужно найти сумму 1000 целых чисел, притом ни одного из них не потерять. Для этого вам придется ввести 1000 переменных с разными именами и одинакового типа, которые невозможно обработать в цикле. Или вывести на экран эту тысячу чисел. Прописывать каждое число было бы глупо и трудоемко. Как же поступить в этом случае?

На самом деле эту проблему позволяет решить использование массивов.

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

Такой тип данных применяется в программировании для обозначения объектов, аналогичных числовым последовательностям в математике, где сразу целая группа чисел обозначается одним именем (чаще всего буквой), а для обращения к каждому отдельному числу данной последовательности используются различные индексы (номера элементов). В математике это может выглядеть, например, так: a1, а2, а3, …, аn. Другой пример –  список класса в журнале.

Массивы бывают одномерные (например, ряд чисел), двумерные (например, матрицы, таблицы умножения) и многомерные. На практике чаще всего встречаются первые два вида. Сегодня мы рассмотрим только одномерные массивы.

Одномерный массив– это фиксированное количество элементов одного и того же типа, объединенных одним именем, причем каждый элемент имеет свой уникальный номер, и номера элементов идут подряд (линейный массив).

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

Как было сказано ранее, массив – это тип данных, и поэтому переменная типа «массив» описывается в разделе программы Varследующим образом (для одномерных):

VAR<Имя переменной>: ARRAY[<минимальное значение индекса>..<максимальное значение индекса>] OF<тип элементов>.

Например, VAR Mass1: ARRAY [1..100] OF Integer.

Индексы – переменные порядкового типа. Они могут быть различными, но чаще всего для этого используется ограниченный тип (диапазон) целых чисел, например, 1..100.  Тип же самих элементов может быть любым, в том числе и составным. Количество элементов массива называется его размерностью. Несложно подсчитать, что при последнем способе описания множества индексов размерность массива равна:

максимальное значение индекса – минимальное значение индекса + 1.

Индексы элементов массива могут начинаться с любого целого числа, в том числе и отрицательного, например: Type b = Array [-5..3] Of Boolean. Массивы данного типа будут содержать 9 логических переменных, пронумерованных от -5 до 3”.

var A : array[ 1 .. 15 ] of integer

var X, Y: array [1..10] of real

var Q: array [0..9] of real

var A: array ['A'..'Z'] of real

 Также можно использовать константу для описания размера массива.

 const N=5;

var A : array[ 1 .. N] ofinteger

Можно выделить три этапа работы с массивом:

  1. Заполнение массива данными.
  2. Действия с элементами массива.
  3. Вывод массива или отдельных данных на экран.

Способы ввода данных в массив.

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

  1. Склавиатуры:

for i:=1 to N do

    begin

      write ('введитеa[', i, ']=');

      read ( a[i] );

    end;

Как вы уже заметили вызов i–го элемента массива aосуществляется следующим образом: a[i].

  1. С помощью генератора случайных чисел.

Например, массив заполнится случайными числами в интервале [50,150) в результате выполнения фрагмента

 for i:=1 to N do

    a[i] := random(100) + 50;

Вспомним, что функция

Random(x)– возвращает случайное целое число в диапазоне от 0 до x-1.

            Random– возвращает случайное вещественное число из [0; 1).

  1. С помощью вычисления элементов по формуле.

for i:=1 to N do

    a[i] := I + 50;

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

Блок вывода массива в большинстве случаев присутствует в программе. Так же как и блок ввода, он использует цикл.

writeln('МассивA:');

for i:=1 to N do      

      write(a[i]:4);

 

5. Закрепление (применение полученных знаний).

Задача 1.Заполнить массив элементами последовательности Фибоначчи (по формуле). Последовательность Фибоначчи определяется так (a1)=1, a(2)=1, при i>2 a(i)=a(i-1)+a(i-2)

program chisla_fibonachi;

const n=10;

var i:integer;

      a:array[1..n] of real;

begin

      a[1]:=1;

      a[2]:=1;

      for i:=3 to n do

                      a[i]:=a[i-1]+a[i-2];

      writeln("числафибоначчи');

      for i:=1 to n do

                      writeln('a[',i,']=',a[i]:4:1);

end.

Результатом будет последовательность чисел Фибоначчи.

Далее рассмотрим следующую задачу

 Задача 2. Массив предназначен для хранения ростов двенадцати человек.

С помощью датчика случайных чисел заполнить массив целыми значениями, лежащими в диапазоне от 163 до 190 включительно.

program massiv_rosta;

var a,b,i:integer;

      r:array[1..12] of integer;

begin

writeln('ввестиначальноезначениедиапазона');

read(a);

writeln('ввести конечное значение диапазона');

read(b);

writeln('сформированный массив');

for i:=1 to 12 do

                        begin

                              r[i]:=random(b-a)+a;

                              write ('r[',i,']=',r[i],' ');

                        end;

end.

Мы получим массив, в котором рост выбран случайным образом.

Задача 3.(резерв) Вычислить сумму элементов массива (к задаче 2).

program massiv_rosta;

var a,b,i:integer;

      r:array[1..4] of integer;

      S:real;

begin

writeln('ввести начальное значение диапазона');

read(a);

writeln('ввести конечное значение диапазона');

read(b);

writeln('сформированный массив');

for i:=1 to 4 do

                        begin

                              r[i]:=random(b-a)+a;

                              write ('r[',i,']=',r[i],' ');

                        end;

            S:=0;

For i:=1 to n do

S:=S+r[i];

writeln;

write(‘Сумма всех элементов массива =’,S);

readln;

end.

 

Задача 4. (резерв)Найти наибольший элемент в массиве (к задаче 2).

program massiv_rosta;

var a,b,I, max:integer;

      r:array[1..12] of integer;

begin

writeln('ввестиначальноезначениедиапазона');

read(a);

writeln('ввести конечное значение диапазона');

read(b);

writeln('сформированный массив');

for i:=1 to 12 do

                        begin

                              r[i]:=random(b-a)+a;

                              write ('r[',i,']=',r[i],' ');

                        end;

            max:=r[1];

for i:=2 to n do

if max<r[i] then max:=r[i];

write(‘наибольший элемент массива =’,max);

readln;

end.

 

6. Подведение итогов урока.

Провести фронтальный опрос. Отметить наиболее активных учеников.

 

  1. Домашнее задание.

Конспект, составить  алгоритм и программу для определения минимального элемента в массиве размером 15.


»  Тэги к этому документу:

Поиск

Loading

Оценка материала

...

Смотреть видео онлайн


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн