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

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

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

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

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

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

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

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

Итоги урока

Знакомство с типами данных в языке 1С

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

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

Практическая работа «Знакомство с типами данных в языке 1С»

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

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

Просмотр содержимого документа
«Знакомство с типами данных в языке 1С»

Практическая работа №2 «Знакомство с типами данных в языке 1С»

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

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

Ход работы:

Одна из главных задач программирования — обработка данных, поэтому необходимо разобраться, какие основные типы данных используются в языке 1С:

  • Строка. Отличный пример таких данных — цитата из стихотворения "Буря мглою небо кроет,". Обратите внимание, что данные типа Строка всегда заключаются в двойные кавычки.

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

  • Дата. Дата вашего рождения и есть пример данных такого типа. Она включает в себя год, месяц и день. Например, первый полет человека в космос состоялся 12 апреля 1961 года. На языке компьютера эти данные будут выглядеть так: '19610412 '. Дата всегда заключается в одинарные кавычки.

Задание 1. Запишите в формате компьютера (используя нужный тип данных) ответы на следующие вопросы:

  1. Когда был запущен первый искусственный спутник?

  2. Как звали первого космонавта?

  3. Сколько планет в солнечной системе?

Проверьте себя

'19571004'

"Юрий Гагарин"

8

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

Проверьте себя Сообщить('19571004’);

Сообщить ("Юрий Гагарин");

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

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

Обработка данных

Какие операции мы можем совершать над данными? Это зависит от их типа.

Например, строки мы можем соединять одну с другой при помо щи знака сложения:

Сообщить ("Юрий" + " " + "Гагарин");

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

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

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

Сообщить(100 - 50);

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

Для более сложных арифметических выражений использовать скобки:

Сообщить((2 + 2) * (9 / 3) + (10 - 5) * 2);

К дате можно прибавлять и отнимать секунды: Сообщить('19561025' + 1);

Задание 3. Выполните указанные примеры на компьютере.

Задание 4. Запишите в формате компьютера следующую дату: 26 февраля 2022 года. Напишите программу, которая прибавит к этой дате столько секунд, чтобы в результате получилось 27 февраля 2022 года.

Проверьте себя

Сообщить('20220226' + 60 * 60 * 24);

Почему прибавляются именно столько секунд?

Преобразование данных

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

Сообщить("3 * 4 = " + 3 * 4);

Какой ответ компьютер выведет на экран?

Часто возникают вопросы по определению типов данных у выражений. Рассмотрим эти примеры подробнее.

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

"123" + 456?

Перед нами выражение, в котором складываются два значения: левое (строка "123") и правое (число 456).

Компьютер смотрит сначала на левое значение и видит там строку "123". Из этого он делает вывод, что результатом всего выражения тоже будет строка.

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

Какой тип будет иметь результат следующего выражения 100 + "001"?

Перед нами выражение, в котором складываются два значения: левое (число 100) и правое (строка "001"). Компьютер смотрит сначала на левое значение и видит там число 100. Из этого он делает вывод, что результатом всего выражения тоже будет число. Поэтому он и правое значение (строка "001") пытается превратить в число. И ему это удается, ведь строка "001" без ошибок переводится в число 1. Таким образом, результатом этого выражения является значение 101, то есть число.

Задание 5. Напишите программу, которая выводит на компьютер таблицу умножения для числа 7.

Описание:

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


Свойства:

КвалификаторыДаты

Содержит квалификаторы даты — объект, используемый для описания допустимых значений типа Дата.

КвалификаторыДвоичныхДанных Содержит квалификаторы двоичных данных.

КвалификаторыСтроки

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

КвалификаторыЧисла

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


Методы:

ПривестиЗначение()

Формирует значение на основании описания типа и переданного значения. Если значение передано, то выполняется проверка на соответствие значения описанию типа. Если значение соответствует, то метод возвращает переданное значение. Если значение не соот- ветствует, то оно приводится к типу, доступному в описании типа.

Если значение не передано, то выдается значение по умолчанию для данного описания типа.

СодержитТип()

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

Типы()

Получает массив типов, используемых в объекте.


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

Новый ОписаниеТипов(, емыеТипы, , , лификаторыСтроки, , рыДвоичныхДанных)

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

Новый ОписаниеТипов(, , лификаторыСтроки, , рыДвоичныхДанных)

Создает описание типов на основании заданных типов и квалификаторов для типов Число, Строка, Дата.


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


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

  1. В какие кавычки заключается данные типа строка?

  2. В какие кавычки заключается данные типа дата?

  3. Чем отделяется дробная от целой части?

  4. Запишите на языке компьютера: 31 декабря 1568 года.

  5. Какой тип будет иметь результат следующего выражения: “123”+”456”?

  6. Какой тип будет иметь результат следующего выражения: 100+”001”?


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

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

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

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


Интернет – ресурс:

https://online.1c.ru/catalog/free/18610119/



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


&НаКлиенте

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

 

    /// Как сделать описание типа строки (числа, даты, булево)

    /// в 1с 8.3, 8.2

 

ОписаниеЧисла = Новый ОписаниеТипов("Число");

 

ОписаниеСтроки = Новый ОписаниеТипов("Строка");

 

ОписаниеДаты = Новый ОписаниеТипов("Дата");

 

ОписаниеБулева = Новый ОписаниеТипов("Булево");

 

    /// Как сделать описание типа структуры (соответствия,

    /// массива) в 1с 8.3, 8.2

 

ОписаниеСтруктуры = Новый ОписаниеТипов("Структура");

 

ОписаниеСоответствия = Новый ОписаниеТипов("Соответствие");

 

ОписаниеМассива = Новый ОписаниеТипов("Массив");

 

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

 

ОписаниеКонтрагента =

Новый ОписаниеТипов("СправочникСсылка.Контрагенты");

 

    /// Как сделать описание составного типа в 1с 8.3, 8.2

 

СписокТипов = Новый Массив;

СписокТипов.Добавить("Строка");

СписокТипов.Добавить("Структура");

СписокТипов.Добавить("СправочникСсылка.Контрагенты");

ОписаниеСоставногоТипа = Новый ОписаниеТипов(СписокТипов);

 

    /// Как уточнить описание числа, строки, даты при помощи

    /// квалификаторов в 1с 8.3, 8.2

 

// общее число разрядов - 10, число дробной части - 2

КвалификаторыЧисла =

Новый КвалификаторыЧисла(10, 2, ДопустимыйЗнак.Любой);

ОписаниеЧисла = Новый ОписаниеТипов("Число", КвалификаторыЧисла);

 

// максимальная длина строки - 20 символов

КвалификаторыСтроки = Новый КвалификаторыСтроки(20);

ОписаниеСтроки = Новый ОписаниеТипов("Строка", ,КвалификаторыСтроки);

 

// храниться только дата, без времени

КвалификаторыДаты = Новый КвалификаторыДаты(ЧастиДаты.Дата);

ОписаниеДаты = Новый ОписаниеТипов("Дата", , ,КвалификаторыДаты);

 

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