Trong hướng dẫn này, chúng ta sẽ thảo luận về một chương trình tìm tối đa tổng và tích của các chữ số cho đến khi số được giảm xuống còn một chữ số
Đối với điều này, chúng tôi sẽ được cung cấp một số ngẫu nhiên. Nhiệm vụ của chúng ta là tìm và in ra tổng và tích tối đa của các chữ số của một số đã cho cho đến khi nó bao gồm một chữ số duy nhất
Ví dụ
#include<bits/stdc++.h> using namespace std; //converting number to single digit by adding long repeatedSum(long n) { if (n == 0) return 0; return (n % 9 == 0) ? 9 : (n % 9); } //converting number to single digit by multiplying long repeatedProduct(long n) { long prod = 1; while (n > 0 || prod > 9) { if (n == 0) { n = prod; prod = 1; } prod *= n % 10; n /= 10; } return prod; } //finding maximum long maxSumProduct(long N) { if (N < 10) return N; return max(repeatedSum(N), repeatedProduct(N)); } int main() { long n = 631; cout << maxSumProduct(n)<<endl; return 0; }
Đầu ra
8