Выяснить: является ли сумма цифр двузначным числом (правильно ли решена задача?) - C (СИ)

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

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

Дано двузначное число. Выяснить: является ли сумма цифр двузначным числом. Больше ли числа N их сумма.
Листинг программы
  1. #include <stdio.h>
  2. int main ()
  3. { float s, z, b;
  4. int d;
  5. scanf ("%d", &d);
  6. z=d%10;
  7. b=d/10;
  8. s=z+b;
  9. printf("%f",s);
  10. return 0;
  11. }

Решение задачи: «Выяснить: является ли сумма цифр двузначным числом (правильно ли решена задача?)»

textual
Листинг программы
  1. #include <stdlib.h>
  2. #include <stdio.h>
  3.  
  4. int main() {
  5.  
  6.     int value;
  7.     printf( "Введите двузначное число " );
  8.  
  9.     scanf( "%d", &value ); // отсутствует проверка ввода
  10.  
  11.     int currValue = abs( value );
  12.  
  13.     if( currValue > 99 || currValue < 10 ){
  14.         puts( "Данное число не является двузначным!" );
  15.         return EXIT_FAILURE;
  16.     }
  17.  
  18.     int n;
  19.     printf( "Введите число N ");
  20.     scanf( "%d", &n ); // отсутствует проверка ввода
  21.  
  22.     // находим сумму цифр двузначного числа
  23.     int sum =  currValue % 10 + ( currValue / 10 );
  24.  
  25.     if( sum > 9 )
  26.         printf( "Сумма цифа числа %d равна %d является двузначным числом ", value, sum );
  27.     else
  28.         printf( "Сумма цифа числа %d равна %d НЕ является двузначным числом ", value, sum );
  29.  
  30.  
  31.     if( sum > n )
  32.         printf( "и больше числа %d\n", n );
  33.     else
  34.         printf( "и НЕ больше числа %d\n", n );
  35.  
  36.     return EXIT_SUCCESS;
  37. }

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

  1. Подключение необходимых библиотек: stdlib.h и printf.h
  2. Объявление переменной value типа int для хранения двузначного числа
  3. Вывод сообщения с просьбой ввести двузначное число
  4. Считывание двузначного числа с помощью функции scanf в переменную value
  5. Преобразование введенного числа в абсолютное значение с помощью функции abs и сохранение результата в переменную currValue
  6. Проверка, является ли число двузначным: если число меньше 10 или больше 99, то выводится сообщение о том, что число не является двузначным и программа завершается с кодом ошибки EXIT_FAILURE
  7. Объявление переменной n типа int для хранения числа N
  8. Вывод сообщения с просьбой ввести число N
  9. Считывание числа N с помощью функции scanf в переменную n
  10. Вычисление суммы цифр двузначного числа: currValue % 10 возвращает последнюю цифру числа, а (currValue / 10) возвращает число без последней цифры. Полученные значения складываются и сохраняются в переменную sum
  11. Проверка, является ли сумма цифр двузначным числом: если сумма цифр больше 9, то выводится сообщение о том, что сумма цифр является двузначным числом, иначе выводится сообщение о том, что сумма цифр не является двузначным числом
  12. Проверка, является ли сумма цифр больше числа N: если сумма цифр больше N, то выводится сообщение о том, что сумма цифр больше числа N, иначе выводится сообщение о том, что сумма цифр не больше числа N
  13. Возвращение значения EXIT_SUCCESS, указывающего на успешный конец работы программы

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


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

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

5   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы