Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Задача
- Да се намери сумата от квадратите на цифрите на числото 546810781. Да се напише функция с
- return тип bool, чрез която да се провери дали получената сума е просто число. В конзолата да се
- изведе сумата, 1 ако сумата е просто число или 0 ако не е, и цифрите на сумата в обратен ред.
- Изход: 256 0 652
- #include<iostream>
- #include"square.h"
- int count_sum_digits(long int number)
- {
- int sum = 0;
- while(number > 0)
- {
- sum += square(number % 10);
- number /= 10;
- }
- return sum;
- }
- bool isPrime(int number)
- {
- int counter = 0;
- for(int i=1;i<=number/2;i++)
- {
- if ( (number%i) == 0)
- counter++;
- }
- return (counter <= 2);
- }
- int revert_digits(int number)
- {
- int result = 0;
- while(number > 0)
- {
- result *= 10;
- result += number % 10;
- number /= 10;
- }
- return result;
- }
- int main()
- {
- long int number = 546810781;
- int sum_of_digits = count_sum_digits(number);
- std::cout << sum_of_digits << " " << isPrime(sum_of_digits)
- <<" "<< revert_digits(sum_of_digits);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment