|
Заполнение массива датой
|
Я
|
|
bebibo 20.01.21 - 08:22 | Здравствуйте!
Задание: запросите у пользователя дату начала и дату окончания периода (в годах). Заполните массив в цикле этими годами и выведите его на экран.
Затем создайте программный код, определяющий, какие годы являются високосными. Выведите на экран результаты.
Как заполнить массив в цикле этими годами? Как определить високосный год? Подскажите пожалуйста.. |
Волшебник 1 - 20.01.21 - 08:27 | правило определения високосных годов:
год, номер которого кратен 400, — високосный;
остальные годы, номер которых кратен 100, — невисокосные (например, годы 1700, 1800, 1900, 2100, 2200, 2300);
остальные годы, номер которых кратен 4, — високосные;
остальные - невисокосные. |
bebibo 2 - 20.01.21 - 08:30 | ( 1) Блин, что то не совсем понятно)) |
Волшебник 3 - 20.01.21 - 08:32 | ( 2) Используй операцию "%" для получения остатка от деления. Если остаток от деления = 0, значит кратен делителю.
Если Год % 400 = 0 Тогда
Високосный = Истина;
ИначеЕсли Год % 100 = 0 Тогда
Високосный = Ложь;
ИначеЕсли Год % 4 = 0 Тогда
Високосный = Истина;
Иначе
Високосный = Ложь;
КонецЕсли; |
Bigbro 4 - 20.01.21 - 08:33 | в каком классе сейчас информатику преподают уже?
|
Волшебник 5 - 20.01.21 - 08:34 | Например, год 2000 был високосный, но не потому что он делится на 4, а потому что он делится на 400. Это важно!
Дело в том, что если год делится на 100, то он обычно не високосный. Это такое правило григорианского календаря, который пришёл на смену юлианскому.
|
bebibo 6 - 20.01.21 - 08:39 | |
bebibo 7 - 20.01.21 - 08:43 | А как получить 2 числа от пользователя?
|
bebibo 8 - 20.01.21 - 08:44 | ( 7) Как одно - я знаю:
&НаКлиенте
Процедура КакИнтерактивноВвестиЗначениеОпределенногоТипа(Команда)
Оповещение = Новый ОписаниеОповещения("ПослеВводаЗначения",
ЭтотОбъект);
ПоказатьВводЗначения(
Оповещение,
,// пропускаем начальное значение
"Введите значение",
"Число"
);
КонецПроцедуры
&НаКлиенте
Процедура ПослеВводаЗначения(Результат, Параметры) Экспорт
Если Не Результат = Неопределено Тогда
Сообщить(Результат);
КонецЕсли;
КонецПроцедуры |
bebibo 9 - 20.01.21 - 08:46 | Или лучше создать обработку и на ней 2 реквизита?
|
bebibo 10 - 20.01.21 - 08:51 | ( 9) Вывожу на форме обработки 2 реквизита с типом дата. Как мне из введённой пользователем даты получить только год? |
bebibo 11 - 20.01.21 - 08:55 | А как мне получить все года в заданном интервале?
|
ДенисЧ 12 - 20.01.21 - 08:55 | "Стаж: 1 год 11 месяцев 30 дней"
...
Открой книжку по 1с. Хотя Митичкина, если Радченко для тебя ещё недоступен... |
bebibo 13 - 20.01.21 - 08:55 | ( 11) Ввел 01.01.2010 и 01.01.2021 - как посчитать и вытащить все года в этом периоде? |
Sayan_mi 14 - 20.01.21 - 09:01 | Для получения Годп из даты есть функция Год(<Дата>) Все года в диапазоне от даты начала ДобавитьМесяц(ДатаНачала, 12) И проверяешь не больше ли даты конца.
|
Sayan_mi 15 - 20.01.21 - 09:02 | |
Kassern 16 - 20.01.21 - 09:09 | ( 0) Это походу одно из учебных заданий в какой нить франч. Если у тебя на данном этапе уже затык и сам не можешь решить, то дальше будет еще хуже. Почитай СП про функции работы с датами |
bebibo 17 - 20.01.21 - 09:14 | Всё получилось, спасибо!
|