Инфоурок Информатика Другие методич. материалыПрактическая работа №6 "Программирование циклов в языке 1С"

Практическая работа №6 "Программирование циклов в языке 1С"

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

Практическая работа №6

«Программирование циклов в языке 1С»

 

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

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

Ход работы:

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

К примеру, пусть нам требуется вывести на экран числа от 1 до 10. Можно, конечно, решить задачу уже известным нам способом

без применения циклов. Решение будет таким:

Сообщить(1);

Сообщить(2);

Сообщить(3);

Сообщить(4);

Сообщить(5);

Сообщить(6);

Сообщить(7);

Сообщить(8);

Сообщить(9);

Сообщить(10);

 

Но, согласитесь, это громоздко и неудобно. Чтобы решить такую простую задачу, нам понадобилось написать целых 10 строчек кода! К тому же почти одинаковых. Они отличаются лишь параметрами для команды Сообщить.

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

Цикл Для

Конструкция цикла выглядит вот так:

Для Имя = НачальноеЧисло По КонечноеЧисло Цикл Команда1();

Команда2();

...

КонецЦикла;

Команды, заключенные между словами Цикл и КонецЦикла, выполняются столько раз, сколько нужно шагов, чтобы НачальноеЧи- сло стало больше КонечногоЧисла.

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

Решение задачи вывода чисел от 1 до 10 с применением только что изученного цикла будет выглядеть так:

Для Шаг = 1 По 10 Цикл Сообщить(Шаг); КонецЦикла;

Всего три строчки вместо десяти.

Компьютер, встретив такую конструкцию, выполняет ее в следующей последовательности:

Компьютер инициализирует имя Шаг значением равным 1. Затем сравнивает это значение с 10. Значение 1 меньше 10. Выполняет Сообщить(1);

Увеличивает Шаг на единицу. Сравнивает с 10. Значение 2 меньше 10.Выполняет Сообщить(2);

Увеличивает Шаг на единицу. Сравнивает с 10. Значение 3 меньше 10.Выполняет Сообщить(3);

Увеличивает Шаг на единицу. Сравнивает с 10. Значение 4 меньше 10. Выполняет Сообщить(4);

Увеличивает Шаг на единицу. Сравнивает с 10. Значение 5 меньше 10. Выполняет Сообщить(5);

Увеличивает Шаг на единицу. Сравнивает с 10. Значение 6 меньше 10. Выполняет Сообщить(6);

Увеличивает Шаг на единицу. Сравнивает с 10. Значение 7 меньше 10. Выполняет Сообщить(7);

Увеличивает Шаг на единицу. Сравнивает с 10. Значение 8 меньше 10. Выполняет Сообщить(8);

Увеличивает Шаг на единицу. Сравнивает с 10. Значение 9 меньше 10. Выполняет Сообщить(9);

Увеличивает Шаг на единицу. Сравнивает с 10. Значение равно

Выполняет Сообщить(10);

Увеличивает Шаг на единицу. Сравнивает с 10. Стоп! 11 больше 10. Прекращает выполнение цикла.

 

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

 

А как вы думаете, сколько раз выполнится следующий цикл: Для Шаг = 10 По 1 Цикл

Сообщить("Привет, Мир!");

КонецЦикла;

 

А как насчет такого примера:

Для Шаг = 1 По 1 Цикл Сообщить("Привет, Мир!"); КонецЦикла;

Сколько раз выполнится Сообщить("Привет, Мир!")?

 

Задание 2. Напишите программу, которая выводит на экран числа от 10 до 1, используя Цикл Для. Программа должна занимать ровно три строчки.

 

Задание 3. В теме Типы Данных мы выводили таблицу умножения для числа 7? Она заняла у нас целых 10 строчек. Теперь, когда вы знаете, что такое циклы, перепишите решение этой задачи с использованием Цикла Для. Решение должно уместиться в три строчки.

Решение

Для Шаг = 1 По 10 Цикл

Сообщить("7 * " + Шаг + " = " + 7 * Шаг);

 КонецЦикла;

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

Для Шаг = 1 По 5 Цикл

Сообщить(Шаг);

КонецЦикла;

1.  Сколько раз выполнится Тело цикла?

2.   Сколько раз выполнится команда Сообщить(Шаг);

3.  К какому имени можно обратиться, чтобы узнать значение цикла?

4.  Значение связанное с именем Шаг в процессе выполнения цикла будет меняться…

5.  В результате работы цикла выведутся…

6.  Чтобы вывести 2 4 6 8 10 необходимо вместо Сообщить(Шаг) написать…

7.  Для того чтобы наряду с цифрами вывелось 5 раз слово Привет необходимо…

 

ЦИКЛ "ПОКА" В ЯЗЫКЕ

Конструкция цикла выглядит так:

Пока ЛогическоеВыражение Цикл Команда1();

Команда2();

...

КонецЦикла;

Команды, заключенные между словами Цикл и КонецЦикла выполняются пока ЛогическоеВыражение равно Истине.

В качестве логического выражения может быть любое условие. Пока это условие верно (то есть равно Истина), выполнение команд в цикле повторяется снова и снова, как только условие перестало быть верным, команды перестают выполняться.

Решение задачи вывода чисел от 1 до 10 с применением только что изученного цикла будет выглядеть так:

Шаг = 1;

Пока Шаг <= 10 Цикл Сообщить(Шаг); Шаг = Шаг + 1;

КонецЦикла;

 

Компьютер, встретив такую конструкцию, выполняет ее так:

Первой командой компьютер сопоставит имени Шаг значение равное 1. Так как имя Шаг на данном этапе равно единице условие цикла верно (Шаг<= 10) — компьютер выводит единицу и увеличивает имя Шаг до 2. Имя Шаг равно 2, но условие цикла по-прежнему верно, поэтому компьютер выводит 2 и увеличивает имя Шаг до 3.

...

Имя Шаг равно 10, условие цикла все еще верно — компьютер выводит 10 и увеличивает имя Шаг до 11. Стоп! Условие цикла пере стало выполняться, теперь Шаг (вернее его значение 11) больше 10. Команды цикла больше не выполняются.

 

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

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

А как вы думаете сколько раз выполнятся следующие циклы: Пока Истина Цикл

Сообщить("Привет!");

КонецЦикла;

 

Пока 1 = 1 Цикл

Сообщить("Привет!");

КонецЦикла;

 

Пока "Мир" = "Мир" Цикл Сообщить("Привет!");

КонецЦикла;

 

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

А вот следующие примеры циклов:

 

Пока Ложь Цикл Сообщить("Прощай!");

КонецЦикла;

 

Пока 1 = 2 Цикл Сообщить("Прощай!");

КонецЦикла;

 

Пока "Мир" = "Земля" Цикл Сообщить("Прощай!");

КонецЦикла;

 

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

Задание 5. Напишите программу, которая выводит на экран числа от 10 до 1, используя Цикл Пока. Программа должна занимать ровно пять строк.

 

Задание 6. Напишите вывод таблицы умножения для числа 7, используя Цикл Пока.

 

Задание 7. Перепишите предыдущее задание так, чтобы вывод таблицы умножения происходил в обратном порядке. То есть сначала 7 * 10, потом 7 * 9 и так далее.

        

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

Шаг = 1;

Пока Шаг < 10 Цикл

Сообщить (Шаг);

Шаг = Шаг + 1;

КонецЦикла;

 

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

2.   Сколько раз выполнится команда Сообщить(Шаг)?

3.   С каким именем связано текущее значение цикла?

4.   В результате цикла выведутся числа?

5.   Чтобы вывелось 1 3 5 7 9 необходимо…

6.   Чтобы на каждое выполнение тела цикла вывелось Привет необходимо дописать …

 

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

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

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

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

 

Литература:

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

 

Дополнительно:

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

Процедура Пример()

&НаКлиенте

Процедура ВыполнитьКод(Команда)

 

    /// Как организовать цикл в 1с 8.3, 8.2

 

    // Для Цикл

    Для Счетчик = 1 По 5 Цикл

        Сообщить(Счетчик); // 1 2 3 4 5

    КонецЦикла;

 

    // Для Каждого Цикл

 

    Дни = Новый Массив();

    Дни.Добавить("Понедельник");

    Дни.Добавить("Вторник");

    Дни.Добавить("Среда");

 

    Для Каждого Элемент Из Дни Цикл

        Сообщить(Элемент); // Понедельник Вторник Среда

    КонецЦикла;

 

    // Пока Цикл

    Счетчик = 0;

    Пока Счетчик < Дни.Количество() Цикл       

        Сообщить(Дни[Счетчик]); // Понедельник Вторник Среда

        Счетчик = Счетчик + 1;    

    КонецЦикла;    

 

    /// Как организовать обратный цикл в 1с 8.3, 8.2    

 

    Счетчик = Дни.Количество() - 1;    

    Пока Счетчик >= 0 Цикл

        Сообщить(Дни[Счетчик]); // Среда Вторник Понедельник

        Счетчик = Счетчик - 1;

    КонецЦикла;

 

    /// Как прервать цикл в 1с 8.3, 8.2

 

    Для Счетчик = 1 По 5 Цикл

        Если Счетчик > 2 Тогда

            Прервать;

        КонецЕсли;

        Сообщить(Счетчик); // 1 2

    КонецЦикла;

 

    /// Как принудительно продолжить цикл в 1с 8.3, 8.2

 

    Для Счетчик = 1 По 5 Цикл

        Если Счетчик <> 3 Тогда

            Продолжить;

        КонецЕсли;

 

        Сообщить(Счетчик); // 3

    КонецЦикла;  

 

КонецПроцедуры

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Практическая работа №6 "Программирование циклов в языке 1С""

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

Скачать материал
    • 16.05.2024 87
    • DOCX 31.5 кбайт
    • Оцените материал:
  • Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

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

    Клименко Галина Петровна
    Клименко Галина Петровна
    • На сайте: 21 день
    • Подписчики: 0
    • Всего просмотров: 2336
    • Всего материалов: 65

Презентация "Основы программирования и конфигурирования 1С"

Файл будет скачан в форматах:

  • pdf
  • pptx
527
6
16.01.2025
«Инфоурок»

Материал разработан автором:

Паклин Андрей

В этой презентации мы погрузимся в основы программирования и конфигурирования на платформе 1С. Узнаем, какие инструменты и технологии используются, а также рассмотрим базовые принципы. 9 слайдов. Презентацию можно скачать в формате pptx и отредактировать по своему усмотрению.

Краткое описание методической разработки

В этой презентации мы погрузимся в основы программирования и конфигурирования на платформе 1С.  

 

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

 

9 слайдов. 

Презентацию можно скачать в формате pptx и отредактировать по своему усмотрению.

Развернуть описание
Смотреть ещё 5 645 курсов

Методические разработки к Вашему уроку:

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

Скачать

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

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

7 248 895 материалов в базе

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

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

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

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

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

Оформите подписку «Инфоурок.Маркетплейс»

Вам будут доступны для скачивания все 225 173 материалы из нашего маркетплейса.

Мини-курс

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

2 ч.

699 руб.
Подать заявку О курсе

Мини-курс

Семантическое ядро: теория и практика сбора

8 ч.

699 руб.
Подать заявку О курсе

Мини-курс

Оптимизация логистических процессов

2 ч.

699 руб.
Подать заявку О курсе
Смотреть ещё 5 645 курсов