Gốc chung của một số được định nghĩa là tổng các chữ số của một số cho đến khi chúng ta nhận được một chữ số duy nhất. Ví dụ:Gốc chung của một số trong c
gốc Generic 456: 4 + 5 + 6 = 15 kể từ khi 15 là hai số chữ số nên ta 1 + 5 = 6
Vì vậy, gốc chung của 456 = 6
tôi giải quyết vấn đề này bằng cách đệ quy thêm các chữ số của số cho đến khi một số chữ số thu được và chương trình làm việc tốt. Tôi đã tìm kiếm trên web và tìm thấy một giải pháp rất nhỏ cho nó mà tôi không thể hiểu được:
#include<stdio.h>
int main()
{ int n,x;
printf("Enter no");
scanf("%d",&n);
printf("Generic root: %d",(x=n%9)?x:9);
return 0;
}
Tôi không thể hiểu cách toán tử ternary hoạt động ở đây !? Làm thế nào là nó tính toán gốc Generic một số
Hoặc nó có thể được định nghĩa là n mod 9. (nhà điều hành ternary sửa chữa các trường hợp khi n% 9 == 0) –
nghĩa là (x = n% 9)! = 0? x: 9 – Exceptyon
Tôi nghĩ rằng OP đã tìm ra những gì '(x = n% 9)? x: 9' có nghĩa là trong C. OP có lẽ nhìn như thế nào dòng này là tính toán gốc, nói cách khác OP là tìm kiếm bằng chứng định lý này. – taskinoor