Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #define N 9
- double check(void);
- void printResult(void);
- void warm(int k);
- int a[N];
- int f[10];
- int main(void)
- {
- warm(0);
- return 0;
- }
- double check(void){
- int x, y, z, chk;
- chk = (a[3] * 10 + a[4]) % a[5];
- x = a[0] * 10 + a[1] - a[2];
- y = (a[3] * 10 + a[4]) / a[5];
- z = a[6] + a[7] * a[8];
- return chk == 0 && x == y && y == z;
- }
- void printResult(void)
- {
- printf("%d%d-%d=%d%d÷%d=%d+%d×%d\n", a[0], a[1], a[2], a[3], a[4], a[5], a
- [6], a[7], a[8]);
- }
- void warm(int k)
- {
- int i;
- if (k == N) {
- if (check()) printResult();
- }
- else {
- for (i = 1; i <= 9; i++) {
- if (f[i]) continue;
- a[k] = i;
- f[i] = 1;
- warm(k + 1);
- f[i] = 0;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment