这个程序应该怎么编,谢谢各位高手。

一个这样的程序,输入N个数,任意取中间的几个数,数值相加的值为M的倍数,输出每组数,输出的形式可以用类似a1,a1a2,a1a4a7........这样的形式。上学时候学... 一个这样的程序,输入N个数,任意取中间的几个数,数值相加的值为M的倍数,输出每组数,输出的形式可以用类似a1, a1a2, a1a4a7........这样的形式。
上学时候学过编程,现在已经忘得差不多了,朋友让我帮他写个小程序,希望大家帮帮忙,或者给点提示也行,谢谢。分有的是,我会加到最高分。
嗯 在dos界面下运行就可以 谢谢你

谢谢大家 用c语言编写最好 其他的也可以 n的值不确定 但是不会太多 m的值是手动指定的
我举个例子吧
比如说
先输入 1 3 5 4 2 5 6 2 这几个数 (分别对应为a1 a2 a3 a4 a5 a6 a7 a8) 回车 然后再输入3 回车 也就是找3的倍数 然后输出每种组合, a2,a7,a1a3,a1a6.......
这样 不知道表述清楚没有 谢谢各位
展开
 我来答
忘至白葬不情必0T
2011-11-07 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:90%
帮助的人:1.2亿
展开全部
//以下程序先输入一个数,表示N。N不超过10。当然这个值可以由你自己用define来定义
//然后输入N个数,再输入M,程序会在N个数中找到和为M的倍数的所有数的组合
//程序的算法:用一个长度同样为N的标志数组tag,来模拟N位的二进制数从0变化到2^n-1的过程
//如果某个二进制数第i位为1,那么就表示输入的N个数中的第i个数在所要求的组合中。
//用这个方法,可以遍历N个数的全部可能的2^n种排列组合。

#include "stdio.h"
#include "stdlib.h"

#define N 10

main()
{
int a[N],n,i,m;
char tag[N];
long s;

//这段代码是用于处理输入和初始化的
printf("input N:");
scanf("%d",&n);
printf("input %d numbers:",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
printf("input M:");
scanf("%d",&m);
for(i=0;i<n-1;i++)
tag[i]=0;
tag[n-1]=1; //一个数都不选,这种组合肯定不是答案,所以直接从选一个数开始
printf("\n");

while(1)
{
s=0;
for(i=0;i<n;i++)
if(tag[i])
s+=a[i]; //如果二进制数的第i位是1,选中第i个数
if(s%m==0)
{
for(int j=0;j<n;j++)
if(tag[j])
printf("%d ",a[j]);
printf("\n");
}

//这段是模拟将一个N位二进制数加1的过程
tag[n-1]++;
i=n-1;
while(i>0 && tag[i]==2)
{
tag[i]=0;
tag[i-1]++;
i--;
}
if(i==0 && tag[0]==2) //如果已经将模拟的二进制数遍历到2^n,结束遍历
break;
}

return 0;
}
杭州一知智能科技有限公司
2022-03-17 广告
电话机器人主要就是用来模拟人工通话的一组程序,一般由,CRM系统,语义识别,转换文字,话术体系,这是软的部分,再加上底层软交换和通信模块一起,合并起来就是一套完整的电话机器人系统。电话机器人可以代替真人进行电话工作的,像是电话营销、售后回访... 点击进入详情页
本回答由杭州一知智能科技有限公司提供
平阳大叔
2011-11-07 · 超过29用户采纳过TA的回答
知道答主
回答量:263
采纳率:8%
帮助的人:40.9万
展开全部
这个你要告诉大家让具体的题目,就是变量M的值要确定。然后再让大家编写,还有用什么误言编写也要说清楚。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
澄宕og
2011-11-07
知道答主
回答量:8
采纳率:0%
帮助的人:4万
展开全部
不好意思,编程倒是没有问题,可是我理解能力差。请问M是多少?中间几个数是不是从这些数中随机取的?输出形式到底是怎样的?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-11-07
展开全部
N的范围多少的 如果大的话我的思路写出来的程序比较慢!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zzsjzj
2011-11-07
知道答主
回答量:99
采纳率:0%
帮助的人:33万
展开全部
这个 你来找我吧 我帮你写
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-11-07
展开全部
程序是可以在dos界面下运行的嘛?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式