Контакты

Правильное описание одномерного массива целых чисел. Одномерные массивы целых чисел описание заполнение вывод массива. V. Самостоятельное решение задач

Тема урока

Учебник: Босова Л. Л. Информатика: учебник для 9 класса - М. : БИНОМ. Лаборатория знаний, 2017. - 184 с. : ил.

Тип урока:

Цели урока :

  • обучающая
  • развивающая
  • воспитывающая

:

  1. Личностные УУД :
  2. Познавательные УУД :
  3. Коммуникативные УУД :
  4. Регулятивные УУД :

Оборудование

Программные средства

Просмотр содержимого документа
«Технологическая карта Одномерные массивы целых чисел»

Информационный блок

Тема урока : Одномерные массивы целых чисел.

Учебник: Босова Л. Л. Информатика: учебник для 9 класса – М. : БИНОМ. Лаборатория знаний, 2017. – 184 с. : ил.

Тип урока: урок изучения нового материала.

Цели урока :

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

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

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

Формируемые универсальные учебные действия (УУД) :

    Личностные УУД :

    1. фантазия и воображение при выполнении учебных действий;

      желание выполнять учебные действия.

    Познавательные УУД :

    1. логические действия и операции;

      создание и преобразование моделей и схем для решения задач;

      выбор наиболее эффективных способов решения задач в зависимости от конкретных условий.

    Коммуникативные УУД :

    1. формулирование собственного мнения и позиции.

    Регулятивные УУД :

    1. планирование своих действий в соответствии с поставленной задачей и условиями ее реализации.

Оборудование : персональный компьютер (ПК), мультимедийный проектор, экран.

Программные средства : презентация «Одномерные массивы целых чисел».

План урока

Этап

Время

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

    Актуализация знаний

    Изучение нового материала

    Закрепление изученного

    Подведение итогов

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

Ход урока

Деятельность учителя

Деятельность учащихся

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

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

Включаются в деловой ритм урока.

    Актуализация знаний

вещественный тип real 8 байт integer от -2147483648 до 2147483647 и занимают 4 байта Pascal ABC .

Вспоминают, типы данных.

    Изложение нового материала

Определение:

var a array тип элементов of integer .

const значения элементов массива .

100 элементов типа integer 4 байта 400 байт

инициализацией .

Для ввода массива n i n , она тоже будет типа integer n значение 5.

for . Запишем цикл для i от 1 до n .

i -того элемента массива read (a[i]) .

Изменённый цикл ввода массива

Пример работы программы

a[i]:= i randomize random randomize

Вывод for n for i:=1 to n do i

Цикл вывода массива

n n

n i a

n for i:=1 to n do i

for i:=1 to n do i

for

Исходный код программы

Записывают дат занятия и тем урока.

Записывают определение массива.

Рассматривают на слайде пример объявления массива.

Записывают его в тетради.

Рассматривают и записывают пример.

Рассчитывают и записывают размер оперативной памяти, которая потребуется для хранения массива.

Вместе с учителем рассматривают операции которые можно производить с массивами.

Записывают определение «Инициализации».

Рассматривают задачу.

Рассматривают задачу.

Рассматривают задачу.

Рассматривают задачу.

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

Рассматривают результат работы программы.

Рассматривают пример инициализации инициализировать при помощи команды присваивания.

Для удобства используем randomize.

Рассматривают пример вывода значения элементов массива.

Записывают программ вместе с учителем.

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

Поэлементно заполняют данный массив случайными числами от единицы до пятидесяти.

Проверяют правильность написания программы, делают трассировку.

Рассматривают результат выполнения программы.

    Закрепление изученного материала.

Теперь пересаживайтесь за компьютеры и самостоятельно выполните следующее задания:

Если останется время (если нет, то в домашнее задание).

Садятся за компьютеры и выполняют задания:

    Итог урока

Итак, чему вы научились и что узнали в течение сегодняшнего занятия?

Подводят итоги урока с учителем:

В течении сегодняшнего урока узнали:

Что такое:

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

    Узнали что такое «Инициализация ».

Научились:

    Объявлять массив.

    Заполнять его.

    Выводить на экран массив.

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

Записывают домашнее задание.

Выучить пункты 2.2.1 – 2.2.3(включительно).

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

    Организационный этап (1 мин).

    Актуализация знаний (4 мин).

    Изложение нового материала (10 мин).

    Проверочная работа (15 мин).

    Практическая часть (12 мин.).

    Итог урока, домашнее задание (3 мин).

Ход урока

    Организационный.

    Актуализация знаний.

На уроках информатики мы работали с отдельными переменными двух численных типов. Вспомним их. Один вещественный тип real , который имеет следующий диапазон значений и занимает 8 байт оперативной памяти. А также один целочисленный тип integer , переменные которого могут принимать значения в диапазоне от -2147483648 до 2147483647 и занимают 4 байта оперативной памяти. Диапазоны значений и размерность оперативной памяти приведены для среды программирования Pascal ABC .

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

    Изложение нового материала.

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

Мы будем рассматривать одномерные массивы.

Прежде чем выполнять какие-то действия с массивом, необходимо объявить его в разделе описания переменных var . Вначале записывается имя массива, например a , затем, после двоеточия, следует служебное слово array , что в переводе с английского языка и означает «массив». Далее в квадратных скобках нам необходимо записать диапазон индексов для его элементов , например от первого до десятого. После чего нам необходимо указать тип элементов массива, для этого записывается служебное слово of , после чего следует тип элементов, целые числа, то есть integer .

Объявление массива целых чисел в разделе описания переменных.

Если значения элементов массива известны заранее, и они не будут изменяться в процессе выполнения программы, то можно объявить его в разделе описания констант const . Это делается так же, как и в разделе описания переменных, но после указания типа следует знак «=», после которого в круглых скобках, через запятую, по порядку перечисляются значения элементов массива .

Важно помнить, что при объявлении массива выделяется некоторое количество оперативной памяти для его хранения . Например рассчитаем размер оперативной памяти, которая потребуется для хранения массива из 100 элементов типа integer . Так как переменная этого типа в Pascal ABC занимает 4 байта оперативной памяти, то для хранения 100 таких переменных требуется 400 байт . Столько оперативной памяти и потребуется для хранения заданного массива.

Рассмотрим некоторые операции с массивами. Чтобы можно было практически применять массивы, необходимо знать, как задать или ввести определённые значения их элементов.

Присваивание или ввод значения переменной или элемента массива называется инициализацией .

Для ввода массива нам необходимо знать, какое количество элементов требуется ввести. Объявим для этого отдельную целочисленную переменную, назовём её n . Также нам необходима переменная, со значением индекса элемента, с которым мы работаем в данный момент, назовём её i , так как её размер не будет превышать n , она тоже будет типа integer . Допустим, нам необходимо ввести последовательность из пяти целых чисел, для этого присвоим n значение 5.

Массивы вводятся поэлементно, в определённом порядке, например от первого к последнему. Здесь нам поможет цикл «для» или for . Запишем цикл для i от 1 до n . Далее между служебными словами begin и end запишем тело цикла. Можно просто считать значения элементов массива по одному, для этого в теле цикла достаточно одной команды считывания

i -того элемента массива read (a[i]) .

Программа, принимающая на ввод массив из 5 элементов

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

Изменённый цикл ввода массива

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

Пример работы программы

Также массив можно инициализировать при помощи команды присваивания, тогда тело цикла будет содержать только одну команду: a[i]:= i . Иногда удобно присвоить элементам массива набор случайных значений. Для этого записывается команда randomize , а элементам присваивается значение random , после которого, в круглых скобках и через запятую, указываются максимальное допустимое значение, увеличенное на единицу, например сто, в этом случае программа будет заполнять массив случайными числами от нуля до девяноста девяти. Обратим внимание, что использование команды randomize в среде Pascal ABC не обязательно. Если же в других средах пропустить эту команду, то при каждом новом запуске программы массив будет заполняться одинаково.

Часто требуется вывести значения элементов массива на экран. Вывод , так же, как и ввод, осуществляется поэлементно. При этом можно, также как и для ввода, использовать цикл for . Если массив заполнен от 1 до n -ного элемента, то записывается цикл for i:=1 to n do , а в теле данного цикла будет команда вывода i -того элемента массива. Сделаем вывод через пробел.

Цикл вывода массива

Итак, мы научились инициализировать элементы массива и выводить их значения на экран. Напишем программу, которая будет принимать на ввод с клавиатуры массив из n целочисленных элементов, а потом будет заполнять его случайными числами от 1 до 50 и выводить на экран. Значение n вводится с клавиатуры и не превышает 70.

Для данной программы нам понадобится переменная n , которая будет хранить размерность массива, а также переменная i , которая будет хранить значения индексов элементов, а также сам массив a , и так как его размерность не выше 70, то укажем диапазон индексов элементов от 1 до 70.

Теперь запишем тело программы. Выведем на экран запрос на ввод числа n , считаем его с переходом на следующую строку. Затем необходимо ввести значения элементов массива. Это делается поэлементно, с помощью цикла for i:=1 to n do . Тело цикла будет содержать вывод поясняющего сообщения с запросом на ввод i -того элемента массива, а также команду его считывания с переходом на следующую строку.

Теперь так же поэлементно заполним данный массив случайными числами от единицы до пятидесяти. Для этого запишем цикл «for i:=1 to n do , который будет содержать команду присваивания i -тому элементу массива суммы 1 и случайного числа от 0 до 49.

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

Исходный код программы

Запустим программу на выполнение. Пусть массив будет из 4 чисел. А значениями его элементов будут соответственно: 10, 20, 30, 40. В ответ наша программа вывела на экран массив из четырёх случайных чисел, находящихся в диапазоне от единицы до пятидесяти. Программа работает верно.

Ключевые слова:

  • массив
  • описание массива
  • заполнение массива
  • вывод массива
  • обработка массива
  • последовательный поиск
  • сортировка

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

Мы будем рассматривать одномерные массивы.

Решение разнообразных задач, связанных с обработкой массивов, базируется на решении таких типовых задач, как:

  • суммирование элементов массива;
  • поиск элемента с заданными свойствами;
  • сортировка массива.

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

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

var <имя_массива>: array [<мин_знач_индекса> .. <макс_знач_индекса>] of <тип__элементов>;

Пример

var a: array of integer;

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

Небольшой массив с постоянными значениями может быть описан в разделе описания констант:

const b: array of integer = (1, 2, 3, 5, 7);

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

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

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

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

for i:=l to 10 do read (a:=i;

В следующем фрагменте программы организовано заполнение целочисленного массива а, состоящего из 10 элементов, случайными числами, значения которых изменяются в диапазоне от 0 до 99:

4.7.3. Вывод массива

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

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

for i:=1 to 10 do write (a[i], ");

Более наглядным является следующий вариант вывода с комментариями:

for i:=1 to 10 do writeln ("a[", i, ")=", a[i]);

На основании рассмотренных примеров попытайтесь самостоятельно запишите программу, в которой осуществляется: заполнение случайным образом целочисленного массива а, состоящего из 10 элементов, значения которых изменяются в диапазоне от 0 до 99; вывод массива а на экран.

4.7.4. Вычисление суммы элементов массива

Суммирование элементов массива осуществляется по тому же принципу, что и суммирование значений простых переменных: за счёт поочерёдного добавления слагаемых:

  1. определяется ячейка памяти (переменная s), в которой будет последовательно накапливаться результат суммирования;
  2. переменной s присваивается начальное значение 0 - число, не влияющее на результат сложения;
  3. для каждого элемента массива из переменной s считывается её текущее значение и складывается со значением элемента массива; полученный результат присваивается переменной s.

Описанный процесс наглядно можно изобразить так:

Приведём основной фрагмент решения этой задачи:

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

4.7.5. Последовательный поиск в массиве

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

Можно выделить следующие типовые задачи поиска:

  1. найти наибольший (наименьший) элемент массива;
  2. найти элемент массива, значение которого равно заданному значению.

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

Рассмотрим подробно решение задач первого типа (нахождение наибольшего (наименьшего) элемента).

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

  1. возьмём верхнюю карточку (первый элемент массива), запомним имеющееся на карточке число (запишем его мелом на доске) как наибольшее из просмотренных; уберём карточку в сторону;
  2. возьмём следующую карточку; сравним числа, записанные на карточке и на доске; если число на карточке больше, то сотрём число, записанное на доске, и запишем там то же число, что и на карточке; если же новое число не больше, то на доске оставим имеющуюся запись; уберём карточку в сторону;
  3. повторим действия, описанные в п. 2, для всех оставшихся карточек в стопке.

В итоге на доске будет записано самое большое значение просмотренного массива.

Так как доступ к значению элемента массива осуществляется по его индексу, то при организации поиска наибольшего элемента в одномерном массиве правильнее искать его индекс. Обозначим искомый индекс imax. Тогда описанный выше алгоритм в сформированном нами массиве а на языке Паскаль можно записать так:

Самостоятельно запишите программу, в которой осуществляется формирование целочисленного массива а из 10 элементов, значения которых лежат в диапазоне от 0 до 99, и поиск наибольшего элемента этого массива.

Если в массиве несколько элементов, равных максимальному значению, то данная программа найдёт первый из них (первое вхождение). Подумайте, что следует изменить в программе, чтобы в ней находился последний из максимальных элементов. Как следует преобразовать программу, чтобы с её помощью можно было найти минимальный элемент массива?

Результатом решения задачи второго типа (нахождение элемента массива, значение которого равно заданному значению) может быть:

  • n - индекс элемента массива такой, что а[n] = х, где х - заданное число;
  • сообщение о том, что искомого элемента в массиве не обнаружено.

Алгоритм поиска в сформированном нами массиве а значения, равного 50, может выглядеть так:

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

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

Здесь выполнение алгоритма будет прервано в одном из двух случаев:

  1. в массиве найден первый из элементов, равный заданному;
  2. все элементы массива просмотрены.

Запишите полный текст программы и выполните её на компьютере.

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

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

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

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

Запишите полные тексты двух последних программ и выполните их на компьютере.

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

Под сортировкой (упорядочением) массива понимают перераспределение значений его элементов в некотором определённом порядке.

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

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

Цель сортировки - облегчить последующий поиск элементов: ис-кать нужный элемент в упорядоченном массиве легче.

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

Сортировка выбором (например, по убыванию) осуществляется следующим образом:

  1. в массиве выбирается максимальный элемент;
  2. максимальный и первый элементы меняются местами (первый элемент считается отсортированным);
  3. в неотсортированной части массива снова выбирается максимальный элемент; он меняется местами с первым неотсортированным элементом массива;
  4. действия, описанные в п. 3, повторяются с неотсортированными элементами массива до тех пор, пока не останется один неотсортированный элемент (его значение будет минимальным).

Рассмотрим процесс сортировки выбором на примере массива а = {0, 1, 9, 2, 4, 3, 6, 5}.

В этом массиве из восьми элементов операцию выбора максимального элемента мы проводили 7 раз. В массиве из n элементов такая операция будет проводиться n-1 раз. Объясните почему.

Приведём фрагмент программы, реализующий описанный алгоритм:

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

Запишите полный текст программы и выполните её на компьютере для рассмотренного в примере массива а.

На сайте «Интерактивные демонстрации по программированию» (http://informatika.kspu.ru/flashprog/demos.php) вы сможете поработать с интерактивными наглядными пособиями для того, чтобы более полно представить процесс сортировки выбором и другими способами.

Самое главное

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

Перед использованием в программе массив должен быть описан. Общий вид описания одномерного массива:

var <имя_массива>: array [<мин_знач_индекса> ..
<макс_знач_индекса>] of тип_элементов;

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

Решение разнообразных задач, связанных с обработкой массивов, базируется на таких типовых задачах, как: суммирование элементов массива; поиск элемента с заданными свойствами; сортировка массива.

Вопросы и задания


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

Индексы А 1 2 3 4 5 6 7 8 10 3 -8 14 25 12 10 1 Имя массива Элементы массива Рассмотрим запись: A=-8 A=10 A+А=10+3=13 А – имя массива 3 – номер элемента (индекс) A – обозначение 3 -го элемента массива -8 – значение третьего элемента массива

Src="http://сайт/presentation/60684111_437360737/image-4.jpg" alt=" Общий вид описания массива: : array [. . ] of Общий вид описания массива: : array [. . ] of ; Способы описания массивов: 1. В разделе описания переменных var а: array of integer; const n=5; var а: array of integer; 2. В разделе описания констант const b: array of integer = (1, 3, 5, 7, 9); 3. В разделе описания типов данных type mas: array of integer; var c: mas;

o Способы заполнения массива: 1. Ввод с клавиатуры for i: =1 to 10 do read (a[i]); 2. С помощью оператора присваивания for i: =1 to 10 do a[i]: =i; for i: =1 to 10 do begin readln (x); if x mod 2=0 then a[i]: =x; end; 3. Случайными числами randomize; for i: =1 to 10 do a[i]: =random(100) randomize; for i: =1 to 10 do a[i]: =-50+random(101)

Вывод массива на экран: for i: =1 to 8 do write (a[i], ’ ‘); Результат: 10 3 -8 14 25 12 10 1 Более наглядно: for i: =1 to 8 do writeln (‘a[‘, i, ’]=’, a[i]); Результат: a=10 a=3 a=-8 a=14 a=25 a=12 a=10 a=1

Задача 2. Заполнить массив из десяти элементов случайными целочисленными значениями, лежащими в диапазоне от -100 до 100.

САМОСТОЯТЕЛЬНАЯ РАБОТА Задача 4. Заполнить массив из восьми элементов следующими значениями: первый элемент массива равен 37, второй - 0, третий - 50, четвертый - 46, пятый - 34, шестой - 46, седьмой - 0, восьмой -13 Задача 5. Заполнить массив из 12 элементов следующим образом: 1 2 … 12 Задача 6. Массив хранит в себе рост 12 человек. С помощью датчика случайных чисел заполнить массив целыми значениями, лежащими в диапазоне от 160 до 190 включительно. Задача 7. Заполнить массив случайными числами в диапазоне от 0 до 33. Вывести элементы массива на экран в обратном порядке. Задача 8. Заполнить массив десятью первыми членами арифметической прогрессии с известным первым членом прогрессии а и её разностью d.

Массив Массив - это поименованная совокупность однотипных элементов, упорядоченных по индексам, определяющим положение элемента в массиве. Решение разнообразных задач, связанных с обработкой массивов, базируется на решении таких типовых задач, как: - суммирование элементов массива; - поиск элемента с заданными свойствами; - сортировка массива. Одномерный массив Значение элемента массива Индекс элемента массива


Описание массива Общий вид описания массива: vararray var: array [.. of ] of ; var aarrayof var a: array of integer; const barrayof const b: array of integer = (4, 2, 3, 5, 7); Тип элементов массива Имя массива Максимальное значение индекса Минимальное значение индекса Значение 1-го элемента массива Массив b с постоянными значениями описан в разделе описания констант.


Способы заполнения массива 1 способ. Ввод каждого значения с клавиатуры: forto doread for i:=1 to 10 do read (a[i]); 2 способ. С помощью оператора присваивания (по формуле): forto do for i:=1 to 10 do a[i]:=i; 3 способ. С помощью оператора присваивания (случайными числами): randomize randomize; forto do for i:=1 to 10 do a[i]:=random(100);


Вывод массива 1 способ. Элементы массива можно вывести в строку, разделив их пробелом: fortodo for i:=1 to 10 do write (a[i], " "); 2 способ. Вывод с комментариями: fortodo for i:=1 to 10 do writeln ("a[", i, "]=", a[i]); a=4a=1a=6a=3a=8a=5a=9a=4a=8a=7


Объявление массива Заполнение массива Вывод массива program n_1 ; var i: integer; a: arrav of integer; Заполнения массива A (10) случайными числами и вывод элементов массива begin for i:=1 to 10 do a[i]:=random(50); for i:=1 to 10 do write (a[i],` `); end.


Вычисление суммы элементов массива Суммирование элементов массива осуществляется за счёт поочерёдного добавления слагаемых: s Определяется ячейка памяти (переменная s), в которой будет последовательно накапливаться результат суммирования Присваивается переменной s начальное значение 0 - число, не влияющее на результат сложения s Для каждого элемента массива из переменной s считывается её текущее значение и складывается со значением элемента массива; s полученный результат присваивается переменной s.


Вычисление суммы элементов массива s = 0 Основной фрагмент программы: s:=0; s:=0; for i:=1 to n do s:=s+a[i]; for i:=1 to n do s:=s+a[i]; s = s + a s = 0+ a s = s + a s = 0+ a+ a s = s + a s = 0+ a+ a+ a …… s = s + a s = 0+a+a+a +a


Вычисление суммы элементов массива program n_2; var s, i: integer; a: arrav of integer; begin s:=0; s:=0; for i:=1 to 10 do a[i]:=random(50); for i:=1 to 10 do write (a[i],` `); for i:=1 to 10 do s:=s+a[i]; for i:=1 to 10 do s:=s+a[i]; writeln ("s=", s); end.




1) Взять верхнюю карточку, записать на доске (запомнить) число как наибольшее. 2) Взять следующую карточку, сравнить числа. Если на карточке число больше, то записать это число. Нахождение наибольшего элемента в стопке карточек с записанными числами: Повторить действия, описанные в пункте 2 для всех оставшихся карточек При организации поиска наибольшего элемента массива правильнее искать его индекс. !


Программа поиска наибольшего элемента в массиве program n_3; imax var s, i, imax: integer; a:arrav of integer; begin s:=0; s:=0; for i:=1 to 10 do a[i]:=random(50); for i:=1 to 10 do write (a[i],` `); imax:=1 imax:=1 i:=2 10 for i:=2 to 10 do a[i]>a imax:=i; if a[i]>a then imax:=i; write (" Наибольший элемент a[",imax,"]=", a) write (" Наибольший элемент a[",imax,"]=", a) end. a imax:=i; if a[i]>a then imax:=i; write (" Наибольший элемент a[",imax,"]=", a) write (" Наибольший элемент a[",imax,"]=", a) end.">


Нахождение элемента массива с заданными свойствами Результатом поиска элемента, значение которого равно заданному, может быть: n - a[n]= xх -n - индекс элемента массива такой, что a[n]= x, где х - заданное число; сообщение о том, что искомого элемента в массиве не обнаружено Здесь: трём равен 4-й элемент; десяти равны 1-й и 9-й элементы; нет элемента, равного 12.


Поиск элемента, равного 50 В программе найден последний из элементов, удовлетворяющих условию program n_4; var n, i: integer; a:arrav of integer; begin for i:=1 to 10 do a[i]:=random(60); for i:=1 to 10 do write (a[i],` `); n:=0; n:=0; for i:=1 to 10 do for i:=1 to 10 do if a[i]=50 then n:=i; if a[i]=50 then n:=i; if n=0 then write(" Нет ") else write (i) if n=0 then write(" Нет ") else write (i) end.


Поиск элемента, равного 50 program n_5; var n, i: integer; a:arrav of integer; begin for i:=1 to 10 do a[i]:=random(60); for i:=1 to 10 do write (a[i],` `); i:=0; i:=0; repeat i:=i+1; i:=i+1; until (a[i]=50) or (i=10); until (a[i]=50) or (i=10); if a[i]=50 then write(i) if a[i]=50 then write(i) else write(" Нет ") end. В программе найден первый из элементов, удовлетворяющих условию


Подсчет количества элементов Для подсчета вводится переменная, значение которой увеличивается на единицу каждый раз, когда найден нужный элемент. program n_6; var k, i: integer; a:arrav of integer; begin for i:=1 to 10 do a[i]:=random(60); for i:=1 to 10 do write (a[i],` `); k:=0; k:=0; i:=1 10 for i:=1 to 10 do if a[i]>50 k:=k+1; if a[i]>50 then k:=k+1; ("k=", k) write("k=", k) end 50 k:=k+1; if a[i]>50 then k:=k+1; ("k=", k) write("k=", k) end.">


Сумма значений элементов, удовлетворяющих условию program n_7; var s, i: integer; a:arrav of integer; begin for i:=1 to 10 do a[i]:=random(60); for i:=1 to 10 do write (a[i],` `); s:=0; s:=0; i:=1 10 for i:=1 to 10 do a[i]>10 (a[i] 10 and (a[i] 1"> 10 (a[i] 10 and (a[i]"> 1" title="Сумма значений элементов, удовлетворяющих условию 105013 1421501021 program n_7; var s, i: integer; a:arrav of integer; begin for i:=1 to 10 do a[i]:=random(60); for i:=1 to 10 do write (a[i],` `); s:=0; s:=0; i:=1 10 for i:=1 to 10 do a[i]>1"> title="Сумма значений элементов, удовлетворяющих условию 105013 1421501021 program n_7; var s, i: integer; a:arrav of integer; begin for i:=1 to 10 do a[i]:=random(60); for i:=1 to 10 do write (a[i],` `); s:=0; s:=0; i:=1 10 for i:=1 to 10 do a[i]>1">


Сортировка массива 1. В массиве выбирается максимальный элемент 2. Максимальный и первый элемент меняются местами (первый элемент считается отсортированным) 3. В неотсортированной части массива снова выбирается максимальный элемент; он меняется местами с первым неотсортированным элементом массива Действия пункта 3 повторяются с неотсортированными элементами массива, пока не останется один неотсортированный элемент (минимальный) Сортировка элементов массива по убыванию выбором осуществляется следующим образом:


Сортировка массива Индекс Значение Шаги Итог:


A then imax:=j; x:=a[i]; a[i]:=a; a:=x ; end; for i:=1 to 10 do write (a[i],` `); end; program n_8; imax var n, i, j, x, imax: integer; a:arrav o" title="Сортировка массива for i:=1 to 9 do begin imax:=i; for j:=i+1 to 10 do if a[j]>a then imax:=j; x:=a[i]; a[i]:=a; a:=x ; end; for i:=1 to 10 do write (a[i],` `); end; program n_8; imax var n, i, j, x, imax: integer; a:arrav o" class="link_thumb"> 21 Сортировка массива for i:=1 to 9 do begin imax:=i; for j:=i+1 to 10 do if a[j]>a then imax:=j; x:=a[i]; a[i]:=a; a:=x ; end; for i:=1 to 10 do write (a[i],` `); end; program n_8; imax var n, i, j, x, imax: integer; a:arrav of integer; begin for i:=1 to 10 do read (a[i]); for i:=1 to 10 do write (a[i],` `); a then imax:=j; x:=a[i]; a[i]:=a; a:=x ; end; for i:=1 to 10 do write (a[i],` `); end; program n_8; imax var n, i, j, x, imax: integer; a:arrav o"> a then imax:=j; x:=a[i]; a[i]:=a; a:=x ; end; for i:=1 to 10 do write (a[i],` `); end; program n_8; imax var n, i, j, x, imax: integer; a:arrav of integer; begin for i:=1 to 10 do read (a[i]); for i:=1 to 10 do write (a[i],` `); 01924365 96543210"> a then imax:=j; x:=a[i]; a[i]:=a; a:=x ; end; for i:=1 to 10 do write (a[i],` `); end; program n_8; imax var n, i, j, x, imax: integer; a:arrav o" title="Сортировка массива for i:=1 to 9 do begin imax:=i; for j:=i+1 to 10 do if a[j]>a then imax:=j; x:=a[i]; a[i]:=a; a:=x ; end; for i:=1 to 10 do write (a[i],` `); end; program n_8; imax var n, i, j, x, imax: integer; a:arrav o"> title="Сортировка массива for i:=1 to 9 do begin imax:=i; for j:=i+1 to 10 do if a[j]>a then imax:=j; x:=a[i]; a[i]:=a; a:=x ; end; for i:=1 to 10 do write (a[i],` `); end; program n_8; imax var n, i, j, x, imax: integer; a:arrav o">


Самое главное Массив - это поименованная совокупность однотипных элементов, упорядоченных по индексам, определяющим положение элементов в массиве. В языках программирования массивы используются для реализации таких структур данных, как последовательности и таблицы. Перед использованием в программе массив должен быть описан. Общий вид описания одномерного массива: var: array [ … ] of тип_элементов; Заполнять массив можно либо вводя значение каждого элемента с клавиатуры, либо присваивая элементам некоторые значения. При заполнении массива и его выводе на экран используется цикл с параметром. Решение разнообразных задач, связанных с обработкой массивов, базируется на таких типовых задачах, как: суммирование элементов массива; поиск элемента с заданными свойствами; сортировка массива.


Вопросы и задания Может ли массив одновременно содержать целые и вещественные значения? Для чего необходимо описание массива? Что вы можете сказать о массиве, сформированном следующим образом? а) for i:=1 to 10 do a[ i ]:= random(101)-50; б) for i:=1 to 20 do a[ i ]:= i ; в) for i:=1 to 5 do a[ i ]:= 2* i -1; Запишите на языке Паскаль программу решения задачи. В некотором населённом пункте N домов. Известно, сколько людей проживает в каждом из домов. Исходные данные (количество жильцов) представить с помощью линейной таблицы А, содержащей N элементов: A - количество жильцов дома 1, A - количество жильцов дома 2, …, A[N] - количество жильцов дома N. В общем случае А[ i ] количество жильцов дома i, где i принимает все значения от 1 до n (i =1,n). Результат работы обозначить через s. Считайте количество жильцов дома случайным числом из диапазона от 50 до 200 человек, а число домов n = 30. Запишите на языке Паскаль программу решения задачи. Объявлен набор в школьную баскетбольную команду. Известен рост каждого из N учеников, желающих попасть в эту команду. Подсчитайте количество претендентов, имеющих шанс попасть в команду, если рост игрока команды должен быть не менее 170 см. Считайте рост претендента в команду случайным числом из диапазона от 150 до 200 см, а число претендентов n = 50. Пример входных данныхПример выходных данных Введите температуру Понедельник >> 12 Вторник >> 10 Среда >> 16 Четверг >> 18 Пятница >> 17 Суббота >> 16 Воскресенье >> 14 Средняя температура за неделю: 14,71 Напишите программу, которая вычисляет среднюю за неделю температуру воздуха. Исходные данные вводятся с клавиатуры. Дан массив из десяти целых чисел. Определите, сколько элементов этого массива имеют максимальное значение. В классе 20 учеников писали диктант по русскому языку. Напишите программу, подсчитывающую количество двоек, троек, четвёрок и пятёрок, полученных за диктант. В целочисленных массивах a и b содержатся длины катетов десяти прямоугольных треугольников: a [ i ] - длина первого катета, b[ i ]длина второго катета i -го треугольника. Найдите треугольник с наибольшей площадью. Выведите его номер, длины катетов и площадь. Предусмотрите случай, когда таких треугольников несколько. Занесите информацию о десяти европейских странах в массивы n (название страны), к (численность населения), s (площадь страны). Выведите названия стран в порядке возрастания плотности их населения. > 12 Вторник >> 10 Среда >> 16 Четверг >> 18 Пятница >> 17 Суббота >> 16 Воскресенье >> 14 Средняя температура за неделю: 14,71 Напишите программу, которая вычисляет среднюю за неделю температуру воздуха. Исходные данные вводятся с клавиатуры. Дан массив из десяти целых чисел. Определите, сколько элементов этого массива имеют максимальное значение. В классе 20 учеников писали диктант по русскому языку. Напишите программу, подсчитывающую количество двоек, троек, четвёрок и пятёрок, полученных за диктант. В целочисленных массивах a и b содержатся длины катетов десяти прямоугольных треугольников: a [ i ] - длина первого катета, b[ i ]длина второго катета i -го треугольника. Найдите треугольник с наибольшей площадью. Выведите его номер, длины катетов и площадь. Предусмотрите случай, когда таких треугольников несколько. Занесите информацию о десяти европейских странах в массивы n (название страны), к (численность населения), s (площадь страны). Выведите названия стран в порядке возрастания плотности их населения.">


Опорный конспект Ввод с клавиатуры Массив - это поименованная совокупность однотипных элементов, упорядоченных по индексам, определяющим положение элементов в массиве. var array var: array [.. of ] of тип_элементов; Присваивание значений Заполнение массива Суммирование элементов Сортировка элементов массива Поиск элемента во свойствам Задачи по обработке массива


Источники информации 1. numbers.jpg -цифры numbers.jpg клавиатура случайные числа 4. – числа 5. content/uploads/2012/01/ _ jpg - числа content/uploads/2012/01/ _ jpg мальчик с числами 7. content/themes/rttheme9/timthumb.php?src= wp-content/uploads/mas-slider-two.jpg&w=940&h=320&zc=1 –цифры content/themes/rttheme9/timthumb.php?src= wp-content/uploads/mas-slider-two.jpg&w=940&h=320&zc= числа счёты мальчик сортировка матрёшки матрёшки

Конспект урока Одномерные массивы целых чисел. Описание, заполнение, вывод массива (9 класс, урок 44, учебник Босова Л.Л.).

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

Решаемые учебные задачи:
1) напомнить сущность понятия массив, одномерный массив;
2) рассмотреть правила описания одномерных целочисленных массивов в
среде программирования Паскаль;
3) рассмотреть несколько способов заполнения массивов;
4) рассмотреть возможности вывода массивов.

Основные понятия, изучаемые на уроке:
— массив;
— описание массива;
— заполнение массива;
— вывод массива.

Используемые на уроке средства ИКТ:
— персональный компьютер (ПК) учителя, мультимедийный проектор, экран;
— ПК учащихся.

Электронные образовательные ресурсы

Особенности изложения содержания темы урока

1. Организационный момент (1 минута)
Приветствие учащихся, сообщение темы и целей урока.

2. Повторение (3 минуты)
1) проверка изученного материала по вопросам (14-17) к §4.6;

3. Изучение нового материала (22 минут)
Новый материал излагается в сопровождении презентации «Одномерные массивы целых чисел. Описание, заполнение, вывод массива».

1 слайд - название презентации;

2 слайд - ключевые слова;
— массив
— описание массива таблица
— заполнение массива
— вывод массива

3 слайд - массив;
До сих пор мы работали с простыми типами данных. При решении практических задач данные часто объединяются в различные структуры данных, например, в массивы. В языках программирования массивы используются для реализации таких структур данных, как последовательности и таблицы.
Массив — это поименованная совокупность однотипных элементов, упорядоченных по индексам, определяющим положение элемента в массиве.
Решение разнообразных задач, связанных с обработкой массивов, базируется на решении таких типовых задач, как:
— суммирование элементов массива;
— поиск элемента с заданными свойствами;
— сортировка массива.

4 слайд - описание массива;
Перед использованием в программе массив должен быть описан, т. е. должно быть указано имя массива, количество элементов массива и их тип. Это необходимо для того, чтобы выделить в памяти под массив блок ячеек нужного типа. Общий вид описания массива:
var : array [ ..
] of ;
Пример
var a: array of integer;
Здесь описан массив а из десяти целочисленных значений. При выполнении этого оператора в памяти компьютера будет выделено десять ячеек целого типа.
Небольшой массив с постоянными значениями может быть описан в разделе описания констант:
const b: array of integer = (1, 2, 3, 5, 7);
В этом случае не просто выделяются последовательные ячейки памяти - в них сразу же заносятся соответствующие значения.

5 слайд - способы заполнения массива;
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);

6 слайд - вывод массива;
Элементы массива можно вывести в строку, разделив их пробелом:
for i:=1 to 10 do write (a[i], ‘ ‘);
Более наглядным является следующий вариант вывода с комментариями:
for i:=1 to 10 do writeln (‘a[‘, i, ‘]=’, a[i]);

7 слайд - заполнения массива A(10) случайными числами и вывод элементов массива;
program n_1 ;
var i: integer;
a: array of integer;
begin
for i:=1 to 10 do a[i]:=random(50);
for i:=1 to 10 do write (a[i],` `);
end.

8 слайд - самое главное.
Массив — это поименованная совокупность однотипных элементов, упорядоченных по индексам, определяющим положение элементов в массиве. В языках программирования массивы используются для реализации таких структур данных , как последовательности и таблицы.
Перед использованием в программе массив должен быть описан. Общий вид описания одномерного массива:
var : array [ …
] of тип_элементов;
Заполнять массив можно либо вводя значение каждого элемента с клавиатуры, либо присваивая элементам некоторые значения. При заполнении массива и его выводе на экран используется цикл с параметром.

Вопросы и задания
9 слайд – вопросы и задания;
Вопросы 1, 2, 3 параграфу 4.7.
№ 201, 202 в РТ.

4. Практическая часть (15 минут)
Задание 1.
Запишите программу, в которой осуществляется: заполнение случайным образом целочисленного массива а, состоящего из 10 элементов, значения которых изменяются в диапазоне от 0 до 99; вывод массива а на экран. Выполнить программу на компьютере в среде программирования PascalABC.NET.
Задание 2.
Выполнить, рассмотренные на уроке задачи № 201, 202 из рабочей тетради на компьютере в среде программирования PascalABC.NET. Скачать ее можно по ссылке на сайте (https://pascalabc.net/).

Все задания, которые не успели выполнить на уроке, задаются на дом.

5. Подведение итогов урока. Сообщение домашнего задания. Выставление оценок (4 минуты)
10 слайд - опорный конспект;
11 слайд - Д/з.
Домашнее задание.
§4.7 (1, 2, 3), вопросы № 1, 2, 3 к параграфу;
РТ: № 201, 202.

Архив включает в себя:
— конспект,
— ответы и решения на задания в учебнике и в рабочей тетради,
— презентация «Одномерные массивы целых чисел. Описание, заполнение, вывод массива».

Скачать (174 КБ, rar): Конспект урока

Понравилась статья? Поделитесь ей