如何找到R中达到某个值的整数乘法的组合?

假设我们要查找两个数字的总数,例如1和2,然后将每个组合值相乘。这将导致以下组合-

1 1
1 2
2 1
2 2

并且乘法还将具有第三列,如下所示-

Multiplication
1 1 1
1 2 2
2 1 2
2 2 4

例1

for (i in 1:2) for (j in 1:2) cat(i,j,i*j, "\n")

输出结果

1 1 1
1 2 2
2 1 2
2 2 4

例2

for (i in 1:5) for (j in 1:5) cat(i,j,i*j, "\n")

输出结果

1 1 1
1 2 2
1 3 3
1 4 4
1 5 5
2 1 2
2 2 4
2 3 6
2 4 8
2 5 10
3 1 3
3 2 6
3 3 9
3 4 12
3 5 15
4 1 4
4 2 8
4 3 12
4 4 16
4 5 20
5 1 5
5 2 10
5 3 15
5 4 20
5 5 25

范例3

for (i in 1:5) for (j in 1:3) cat(i,j,i*j, "\n")

输出结果

1 1 1
1 2 2
1 3 3
2 1 2
2 2 4
2 3 6
3 1 3
3 2 6
3 3 9
4 1 4
4 2 8
4 3 12
5 1 5
5 2 10
5 3 15

例子4

对于(1:5中的i)对于(1:10中的j)cat(i,j,i * j,“ \ n”)

输出结果

1 1 1
1 2 2
1 3 3
1 4 4
1 5 5
1 6 6
1 7 7
1 8 8
1 9 9
1 10 10
2 1 2
2 2 4
2 3 6
2 4 8
2 5 10
2 6 12
2 7 14
2 8 16
2 9 18
2 10 20
3 1 3
3 2 6
3 3 9
3 4 12
3 5 15
3 6 18
3 7 21
3 8 24
3 9 27
3 10 30
4 1 4
4 2 8
4 3 12
4 4 16
4 5 20
4 6 24
4 7 28
4 8 32
4 9 36
4 10 40
5 1 5
5 2 10
5 3 15
5 4 20
5 5 25
5 6 30
5 7 35
5 8 40
5 9 45
5 10 50

范例5

for (i in 1:4) for (j in 1:6) cat(i,j,i*j, "\n")

输出结果

1 1 1
1 2 2
1 3 3
1 4 4
1 5 5
1 6 6
2 1 2
2 2 4
2 3 6
2 4 8
2 5 10
2 6 12
3 1 3
3 2 6
3 3 9
3 4 12
3 5 15
3 6 18
4 1 4
4 2 8
4 3 12
4 4 16
4 5 20
4 6 24