永发信息网

C语言数学问题求教

答案:3  悬赏:60  手机版
解决时间 2021-12-22 12:39
  • 提问者网友:黑米和小志
  • 2021-12-21 12:18
题目描述 Description
对一个给定的自然数M,求出所有的连续的自然数段,这些连续的自然数段中的全部数之和为M。
例子:1998+1999+2000+2001+2002 = 10000,所以从1998到2002的一个自然数段为M=10000的一个解。
输入输出格式 Input/output
输入格式:
包含一个整数的单独一行给出M的值(10 <= M <= 2,000,000)。
输出格式:
每行两个自然数,给出一个满足条件的连续自然数段中的第一个数和最后一个数,两数之间用一个空格隔开,所有输出行的第一个按从小到大的升序排列,对于给定的输入数据,保证至少有一个解。
输入输出样例 Sample input/output
样例测试点#1
输入样例: 在线IDE

输出样例:

#include

int main()
{
unsigned sum, tmp, i;

scanf("%d", sum);
tmp = i = 0;
while (tmp != sum)
tmp += ++i;

printf("1\t%d\n", i);
return 0;
}
为什么我的代码错了
最佳答案
  • 五星知识达人网友:执傲
  • 2021-12-21 13:19
while (tmp != sum)
tmp += ++i;

结果是从1开始累加和;自然数段未必从1开始
全部回答
  • 1楼网友:上分大魔王
  • 2021-12-21 16:00
#include #include double fun1(double x) { return x+sin(x); } double fun2(double x) { return 2*x/(1+x*x); } double fun3(double x) { return (2*x+x*x)/(1+x+cos(x)); } double integ(double (*fp)(double),double x1,double x2,double n) { double sum,h; sum=(fp(x1)+fp(x2))/2; h=(x2-x1)/n; for(int i=1;i
  • 2楼网友:孤独入客枕
  • 2021-12-21 14:24
按要求写·~~~ 输出格式你就不对~~~
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯