Напишите функцию, принимающую любое значение. Если это целое число, то возвратить сумму его цифр. В противном случае возвращается фраза «Это не целое число».
using namespace std;
int check(string& str)
{
istringstream inp(str);
int num;
inp >> num;
if (inp.eof())
{
num = 0;
for (auto i : str) num += isdigit(i) ? i - '0' : 0;
}
else num = -1;
return num;
}
int main()
{
setlocale(0, "");
string str;
cout > str;
int res = check(str);
if (res != -1) cout
Зачем функции вообще что-то возвращать? Вот так вот нормально работает: #include
using namespace std;
void f(double x)
{
int n = x, s = 0;
if (x == n)
{
if (n < 0) n = -n;
while { s += n % 10; n /= 10; }
cout
еще 1 переменную создадим инт
if
если число - оно же != 0
то это не целое число
иначе
в цикле (пока число больше или равно 10)
переменная +=число%10
число = число /10
вернуть переменную