数字の 1 から 9 を使用して、同じ数字を繰り返さずに、2 つの数字を足し合わせて、各合計の可能なすべての組み合わせで構成された合計の表を作成しました。C でプログラムを作成して、2 桁とそれぞれの組み合わせを加算してすべての合計を見つけ、このグラフを印刷しようとしています。for ループを使用してこのプログラムを作成しようとしていますが、スタックしてしまいました。最初の最初の合計を印刷することはできますが、今は困惑している組み合わせを取得しています。正しい軌道に乗っているかどうかはわかりません。どんな提案や助けも大歓迎です。私のチャート、これまでに作成されたコード、および現在のコードの出力は以下のとおりです。
これが私のプログラムでやりたいことです:
このチャートには、2 桁で構成されるすべての合計と、各合計を構成するすべての可能な組み合わせがリストされています。
2 Digit Sums
Sum Combinations
3 1+2
4 1+3
5 1+4, 2+3
6 1+5, 2+4
7 1+6, 2+5, 3+4
8 1+7, 2+6, 3+5
9 1+8, 2+7, 3+6, 4+5
10 1+9, 2+8, 3+7, 4+6
11 2+9, 3+8, 4+7, 5+6
12 3+9, 4+8, 5+7
13 4+9, 5+8, 6+7
14 5+9, 6+8
15 6+9, 7+8
16 7+9
17 8+9
これは私がうまく書くことができたコードです:
/* Thus program uses the digits 1 - 9 to find all possible sums composed of two
digits, non repeating, and all possible combinations of digits to obain the sums. */
#include<stdio.h>
int main(void)
{
int S, A, B;
A = 1;
B = A + 1;
S = A + B;
printf("\t\t2 Digit Sums\n\n");
printf("Sum\tCombinations\n");
for(B; B <= 8; ++B)
{
S = A + B;
printf("%d\t%d + %d\n", S, A, B);
}
for(A; (A < B && A !=B); ++A)
{
S = A + B;
printf("%d\t%d + %d\n", S, A, B);
}
return(0);
}
これは私のコードの出力です:
2 Digit Sums
Sum Combinations
3 1 + 2
4 1 + 3
5 1 + 4
6 1 + 5
7 1 + 6
8 1 + 7
9 1 + 8
10 1 + 9
11 2 + 9
12 3 + 9
13 4 + 9
14 5 + 9
15 6 + 9
16 7 + 9
17 8 + 9
Press any key to continue...