Образование Информатика

Нужен код на c++.
дано натуральное число n(n<=100)
a) Сколько цифр в числе n?
б) Чему равно сумма его чисел?
в) Найти последнюю цифру
г) первую цифру

Ответы
#include lt;iostreamgt;
using namespace std;
typedef unsigned short int USI;

USI DigitCount(USI n) {
USI a = (int) n / 100,
bc = n 100,
b = (int) bc / 10,
c = n 10;
if (a gt; 0) return 3;
if (b gt; 0) return 2;
if (c gt; 0) return 1;
return 0;
}

USI SumDigits(USI n, USI dc) {
USI sum = 0,
a,
bc,
b,
c;
switch (dc) {
case 3:
a = (int) n / 100;
sum += a;
case 2:
bc = n 100;
b = (int) bc / 10;
sum += b;
case 1:
c = n 10;
sum += c;
break;
default:
return 0;
break;
}
return sum;
}

USI LastDigit(USI n) {
return n 10;
}

USI FirstDigit(USI n, USI dc) {
switch (dc) {
case 1:
return n;
break;
case 2:
return (int) n / 10;
break;
case 3:
return (int) n / 100;
break;
default:
return 0;
break;
}
}

int main() {
USI n;
cout lt;lt; "n = ";
cin gt;gt; n;
USI dc = DigitCount(n);
cout lt;lt; "Число " lt;lt; n
lt;lt; ":\n"
lt;lt; "Цифр: "
lt;lt; dc lt;lt; \n
lt;lt; "Сумма цифр: "
lt;lt; SumDigits(n, dc) lt;lt; \n
lt;lt; "Последняя цифра: "
lt;lt; LastDigit(n) lt;lt; \n
lt;lt; "Первая цифра: "
lt;lt; FirstDigit(n, dc) lt;lt; \n;
return 0;
}
217
Для добавления нового ответа необходимо авторизоваться на сайте.
Смежные вопросы