Реализовать функцию, которая из целого числа вида DDMMYY получает дату - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Реализовать функцию, которая из целого числа вида DDMMYY получает дату, месяц и год. Предусмотреть обработку лшибочных входных данных.

Решение задачи: «Реализовать функцию, которая из целого числа вида DDMMYY получает дату»

textual
Листинг программы
d = N/10000;
m = (N - 10000*d)/100;
y = n%100;
if (m< 1 || m>12) printf("Error month");
if (d < 1 || d > 31) printf("Error Day\n");
// Ну и отдельно проверить для апреля, июня, сентября, ноября d<=30
// а для февраля с учетом високосности

Объяснение кода листинга программы

В данном коде представлена функция, которая принимает на вход число вида DDMMYY и возвращает дату. Разберем каждый шаг кода:

  1. d = N/10000; В этом шаге переменной d присваивается результат деления числа N на 10000. Это позволяет получить день месяца из числа вида DDMMYY.
  2. *m = (N - 10000d)/100;** Здесь переменной m присваивается результат вычитания из числа N произведения 10000 на d, разделенный на 100. Это позволяет получить месяц из числа вида DDMMYY.
  3. y = n%100; В этом шаге переменной y присваивается остаток от деления числа n на 100. Это позволяет получить последние две цифры числа, которые соответствуют году.
  4. if (m< 1 || m>12) printf(Error month); Здесь проверяется, является ли значение переменной m числом от 1 до 12. Если это не так, то выводится сообщение об ошибке Error month.
  5. if (d < 1 || d > 31) printf(Error Day\n); В этом шаге проверяется, является ли значение переменной d числом от 1 до 31. Если это не так, то выводится сообщение об ошибке Error Day.
  6. Комментарий: Здесь представлены дополнительные проверки для определенных месяцев (апрель, июнь, сентябрь, ноябрь), где d <= 30, и для февраля, где нужно учесть високосность. Таким образом, данный код выполняет следующие действия:
  7. Из числа вида DDMMYY извлекает день месяца и сохраняет его в переменной d.
  8. Из числа вида DDMMYY извлекает месяц и сохраняет его в переменной m.
  9. Из числа вида DDMMYY извлекает последние две цифры, которые соответствуют году, и сохраняет их в переменной y.
  10. Проверяет, является ли значение переменной m числом от 1 до 12. Если это не так, выводит сообщение об ошибке Error month.
  11. Проверяет, является ли значение переменной d числом от 1 до 31. Если это не так, выводит сообщение об ошибке Error Day.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.786 из 5
Похожие ответы