Определить является ли введенный шестизначный номер «счастливым» - C (СИ)

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

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

Помогите кому не сложно) Язык Си. Составить программу, определяющую является ли введенный шестизначный номер «счастливым» (совпадает ли у него сумма трех начальных и трех конечных цифр). Для выделения отдельных цифр во введенном номере можно использовать операции mod и div.

Решение задачи: «Определить является ли введенный шестизначный номер «счастливым»»

textual
Листинг программы
#include <stdio.h>
 
int GetDigitSum(int digit)
{
  int sum = 0;
 
  while (digit > 0)
  {
    sum = sum + (digit % 10);
    digit = digit / 10;
  }
 
  return sum;
}
 
int IsValidTicketNumber(const int number)
{
  int isValid = 0;
 
  if ((number >= 100000) && (number <= 999999))
  {
    isValid = 1;
  }
 
  return isValid;
}
 
int IsTicketLucky(const int ticketNumber)
{
  int isLucky = 0;
 
  if (GetDigitSum(ticketNumber % 1000) == GetDigitSum(ticketNumber / 1000))
  {
    isLucky = 1;
  }
 
  return isLucky;
}
 
int main(void)
{
  int a = 0;
 
  scanf("%d", &a);
 
  if (IsValidTicketNumber(a) && IsTicketLucky(a))
  {
    printf("This is a lucky ticket :)\n");
  }
  else
  {
    printf("No luck :(\n");
  }
 
  return 0;
}

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

  1. Ввод числа с помощью функции scanf.
  2. Проверка введенного числа на валидность с помощью функции IsValidTicketNumber.
  3. Проверка счастливое ли число с помощью функции IsTicketLucky.
  4. Вывод сообщения о том, является ли билет счастливым или нет.

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


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

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

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