发现的总数组合使用三个数的整数 [英] Finding the total number combinations for an integer using three numbers
本文介绍了发现的总数组合使用三个数的整数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
对于一个给定的整数, N 的,我需要打印长度为3的所有列出了总和的 N 的。所述列表的成员必须为非负整数。打印所有这些名单后,必须再打印中发现,清单的数量。
For a given integer, n, I need to print all the lists of length 3 which sum to n. The members of the list must be non-negative integers. After printing all these lists, it must then print the number of lists that were found.
例如,如果的 N = 2 的:
- 1 + 0 + 1 = 2
- 1 + 1 + 0 = 2
- 0 + 1 + 1 = 2
- 2 + 0 + 0 = 2
- 0 + 0 + 2 = 2
- 0 + 2 + 0 = 2
下面是我为长度为2的列表,而不是长度3列出了程序:
Here is the program I did for lists of length 2 rather than lists of length 3:
#include <stdio.h>
int main (void)
{
int total;
int c1=0;
int c2=0;
int c3=0;
int count;
printf("Welcome friends and mainly enemies to the thingy. Only postive intergers!!!\n That's right just enter a number here:");
scanf ("%d",&total);
printf ("\n\n\nWhy pick %d? Here is the list if combinations anyway,",total);
for (count=0;count<=total;count++)
{
printf ("\n");
for (c1=count;c1==count;c1--)
{
printf("%d ",c1);
}
for (c2=total-count;c2<=total-count;c2++)
{
printf("%d",c2);
}
}
printf ("\n\nThere are %d number combinations that total %d",count,total);
}
的目标是从长度的两个列表扩展这对长度为3的列表。
The goal is to extend this from lists of length two to lists of length 3.
附加信息: 我只能用另外一个变量C3。
Additional Info: I can only use one other variable c3.
推荐答案
希望这有助于:
int c3 = 0;
for (int c1 = 0; c1 <= total; c1++) {
for (int c2 = total - c1; c2 >= 0; c2--){
printf("%d %d %d \n", c1, c2, total - c1 - c2);
c3++;
}
}
printf("there are %d ways to sum to %d", c3, total);
这篇关于发现的总数组合使用三个数的整数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文