СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

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

Проверка знаний

Объяснение материала

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

Итоги урока

Практическая работа "Массивы в языке 1С"

Категория: Информатика

Нажмите, чтобы узнать подробности

В ходе практической работы обучающиеся знакомятся с типом данных «Массив» в языке 1С, учатся создавать массивы фиксированного размера и динамические массивы, а также осваивают способы заполнения массивов данными и их обработки с использованием циклов. Выполняя задания различной сложности (поиск суммы, произведения, минимального и максимального элемента), студенты закрепляют навыки работы с индексами элементов и методами массивов. Работа направлена на формирование понимания преимуществ использования коллекций для хранения и обработки однотипных данных по сравнению с хранением в отдельных переменных.

Просмотр содержимого документа
«Практическая работа "Массивы в языке 1С"»

Практическая работа №8 «Массивы в языке 1С»

Цель: научиться использовать массивы в языке 1С.

Оборудование, ПО и нормативные документы: ПК с выходом в Интернет, учебная версия 1С: Предприятие 8.3.

Ход работы:

Познакомимся с новым типом данных языка 1С, который называется Массив.

Что такое массивы и зачем они вообще нужны программисту? Давайте представим, что у нас есть 4 разных числа. К примеру: 25, 84, 31 и 96. Если бы мы захотели использовать их в своей программе, то нужно было бы дать имя каждому из чисел. А что, если хранить их все вместе, под одним общим именем, к примеру, СлучайныеЧисла. И обращаться к ним как СлучайныеЧисла0, СлучайныеЧисла1, Случай- ныеЧисла2 и так далее.

Значений много, а имя одно. И чтобы получить конкретное значение мы бы указывали имя и порядковый номер (начиная с нуля). Это и был бы массив.

Еще полезно представлять себе массив как шкаф, у которого множество нумерованных ящиков (начиная с нуля). Шкаф — это массив, а ящики — это номера. Содержимое ящиков — элементы массива. Доступ к содержимому конкретного ящика осуществляется по имени шкафа и номеру ящика.

В языке 1С это будет выглядеть так:

СлучайныеЧисла = Новый Массив(4); // завели массив для

//хранения 4 чисел СлучайныеЧисла[0] = 25; // поместили в ящик №0 первое

// число

СлучайныеЧисла[1] = 84; // поместили в ящик №1 второе

//число СлучайныеЧисла[2] = 31; // и так далее СлучайныеЧисла[3] = 96;

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

В массивах можно хранить значения разных типов, а не только числа:

РазличныеЗначения = Новый Массив(3); // массив для

// хранения 3 значений РазличныеЗначения[0] = 100; // поместили в ящик №0

// число РазличныеЗначения[1] = "Солнечный день."; // поместили

//в ящик №1 строку РазличныеЗначения[2] = '19991231'; // поместили в ящик

// №2 дату


В ящики массива значения можно не только класть, но и доставать:


Сообщить(РазличныеЗначения[0]); // выведем содержимое ящика №0 Сообщить(РазличныеЗначения[1]); // выведем содержимое ящика №1 Сообщить(РазличныеЗначения[2]); // выведем содержимое ящика №2

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

Для Шаг = 0 По 2 Цикл // делаем цикл от 0 до 2 Сообщить(РазличныеЗначения[Шаг]);

//обращаемся

// к ящику массива по номеру

КонецЦикла;


Задание 1. Необходимо ввести от пользователя 5 чисел, найти их сумму и вывести результат.

Давайте решим эту задачу двумя способами. Сначала без использования массива:

Число1 = 0;

Число2 = 0;

Число3 = 0;

Число4 = 0;

Число5 = 0;

ВвестиЧисло(Число1);

ВвестиЧисло(Число2);

ВвестиЧисло(Число3);

ВвестиЧисло(Число4);

ВвестиЧисло(Число5);

СуммаЧисел = Число1 + Число2 + Число3 + Число4 + Число5; ОткрытьЗначение("Сумма чисел равна " + СуммаЧисел);


А теперь с использованием массива:


Числа = Новый Массив(5);// объявили массив с 5 ящиками Для Шаг = 0 По 4 Цикл

ВвестиЧисло(Числа[Шаг]); //в каждый ящик вводим число КонецЦикла

СуммаЧисел = 0; // в этом имени будем накапливать

// сумму чисел

Для Шаг = 0 По 4 Цикл // пробегаемся циклом от 0 до 4

СуммаЧисел=СуммаЧисел+Числа[Шаг];//суммируем числа

// из массива

КонецЦикла;

ОткрытьЗначение("Сумма чисел равна " + СуммаЧисел);

Вроде бы сэкономили всего три строки. А если бы нужно было ввести не 5, а 100 чисел?


Задание 2. Переделайте приведенный выше пример, чтобы вводилось 10 чисел и находилось произведение.


Задание 3. Необходимо ввести от пользователя 5 чисел, найти наименьшее из них и вывести его.

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

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


МассивНа5Ящиков = Новый Массив(5);


Это означает, что у этого массива есть ящики под номерами 0, 1, 2, 3, 4.

Если необходимо объявить пустой массив:


ДругойМассив = Новый Массив; //мы не указали никакого

// числа в скобках


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


Сообщить(ДругойМассив[0]); // ОШИБКА!!! Массив пока

// не содержит ящиков!

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


ДругойМассив.Добавить(123); // первый ящик ДругойМассив.Добавить(456); // второй ящик ДругойМассив.Добавить(789); // третий ящик


Только теперь мы можем обращаться к этим ящикам по их номерам (помните, что в 1С массивы нумеруются с нуля):


Сообщить(ДругойМассив[0]); // выведет 123 Сообщить(ДругойМассив[1]); // выведет 456 Сообщить(ДругойМассив[2]); // выведет 789


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


Сообщить(ДругойМассив.Количество()); // выведет 3


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


Описание:

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

Элементы коллекции: Произвольный

Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются значения элементов массива.

Возможно обращение к значению элемента посредством оператора [...]. В качестве аргумента передается индекс значения (нумерация с 0).

Методы:

ВГраница()

Получает наибольший индекс элемента массива.

Вставить(Индекс,   Значение)

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

Добавить(Значение)

Добавляет элемент в конец массива.

Количество()

Получает количество элементов в массиве.

Найти(Значение)

Выполняет поиск элемента в массиве. Если элемент найден, возвращается его индекс. Если элемент не найден, возвращается Неопределено.

Очистить()

Удаляет все значения из массива.

Получить(Индекс)

Получает значение по индексу. Работает аналогично оператору [].

Удалить(Индекс)

Удаляет значение из массива по указанному индексу.

Установить(Индекс,   Значение)

Устанавливает значение по индексу. Работает аналогично оператору [].


Конструкторы:

Новый Массив(ФиксированныйМассив)

На основании фиксированного массива.

Новый Массив(КоличествоЭлементов1,   ... , КоличествоЭлементовN)

По количеству элементов. Создает массив из указанного количества элементов. Если задано несколько параметров, то будет создан массив, элементами которого являются массивы (и так далее в зависимости от количества параметров). Фактически конструктор позволяет создать массивы массивов, которые могут являться аналогом многомерного массива.


Контрольные вопросы:

  1. Массивы — это коллекции, в которых можно хранить…

  2. Чтобы обратиться к элементу массива необходимо указать после имени массива номер элемента в …

  3. Индекс первого элемента массива всегда равен…

  4. Чтобы объявить массив на 10 элементов нужно написать…

  5. Чтобы объявить пустой массив нужно написать…

  6. Чтобы добавить в массив М новый элемент (число 123) нужно написать…

  7. Чтобы перебрать все значения массива подойдет…

  8. Чтобы изменить пятый элемент в массиве М на 25 нужно написать…


Порядок оформления отчета:

  1. Запишите дату, номер, тему и цель практической работы в тетрадь.

  1. Согласно порядку работы, последовательно выполните все задания.

  2. Запишите вывод о проделанной работе.


Литература:

Дадян, Э.Г. Конфигурирование и моделирование в системе «1С:Предприятие» : учебник / Э.Г. Дадян. — М. : Вузовский учебник : ИНФРА-М, 2018. — 417 с. + Доп. материалы [Электронный ресурс; Режим доступа http:// www.znanium.com]. — (Высшее образование: Магистратура). — www. dx.doi.org/10.12737/textbook_5a0c1bcccc76f5.69529307.