ЮНИТ 3. ТИПЫ ДАННЫХ В ЯЗЫКЕ 1С

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

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

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

  • 1. Когда был запущен первый искусственный спутник?
  • 2. Как звали первого космонавта?
  • 3. Сколько планет в солнечной системе?

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

'19571004'

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

К дате можно прибавлять и отнимать секунды:

Сообщить('19561025'+ 1);

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

Задание №9. Запишите в формате компьютера следующую дату: 19 июля 1980 года. Напишите программу, которая прибавит к этой дате столько секунд, чтобы в результате получилось 20 июля 1980 года.

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

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

Почему прибавляются именно столько секунд? В сутках — 24 часа, в часе — 60 минут, в минуте — 60 секунд. Все просто.

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

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

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

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

Подсказка

В результате мы увидим строку: 3*4= 12

Компьютер видит, что мы пытаемся прибавить к строке "3*4 = " результат выполнения арифметической операции, а так как к строке можно прибавить только строку — он преобразует число 12 к строковому типу данных.

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

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

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

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

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

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

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

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

Проверьте себя(решение)

Сообщить("7 * 1 = " + 7 * 1);

Сообщить("7 * 2 = " + 7 * 2);

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

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

Сообщить("7 * 5 = " + 7 * 5);

Сообщить("7 * 6 = " + 7 * 6);

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

Сообщить("7 * 8 = " + 7 * 8);

Сообщить("7 * 9 = " + 7 * 9);

Сообщить("7 * 10 = " + 7 * 10);

 
< Пред   СОДЕРЖАНИЕ     След >