Преобразование в язык Си
#include <iostream> #include <cmath> using namespace std; unsigned numDigits(const unsigned n) { if (n < 10) return 1; return 1 + numDigits(n / 10); } unsigned rotated_number(const unsigned a,const unsigned n){ unsigned int e,divide_by,rotated_number,f; divide_by = pow(10,n - 1); e = a%10; f = a/10; rotated_number = e * divide_by + f; return rotated_number; // std::cout << rotated_number << std::endl; } unsigned square_sum(unsigned n){ int sum=0; while(n!=0) { sum = sum + (n%10) * (n%10); n = n/10; } // std::cout << sum << std::endl; return sum; } int main() { unsigned int a,length,ssd,number_obtained,r_n,_z,new_rpm=0,n=0,max_rpm; std::cin >> a; max_rpm = a * 8; while(n < 1 && a < max_rpm){ // std::cout << a << std::endl; number_obtained = square_sum(a) * 323; // std::cout << number_obtained << std::endl; length = numDigits(a); // std::cout << length << std::endl; r_n = rotated_number(a,length)%100; // std::cout << r_n << std::endl; new_rpm = number_obtained + r_n; // std::cout << _z << std::endl; // new_rpm = new_rpm + _z; // std::cout << new_rpm << std::endl; a = new_rpm; // std::cout << a << std::endl; n = n + 1; } std::cout << a << std::endl; }
Что я уже пробовал:
преобразование в язык Си
я пытался, но не смог.
так что преобразуйте этот код C++ в код C