首页 > 试题广场 >

数列的和

[编程题]数列的和
  • 热度指数:15229 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解

数列的定义如下:数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。


输入描述:
输入数据有多组,每组占一行,由两个整数n(n<10000)和m(m<1000)组成,n和m的含义如前所述。


输出描述:
对于每组输入数据,输出该数列的和,每个测试实例占一行,要求精度保留2位小数。
示例1

输入

81 4
2 2

输出

94.73
3.41
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<math.h>
int main()
{
    double n = 0.00;
    long long m = 0;
    while (scanf("%lf %lld", &n, &m) != -1)
    {
        double q = n;
        for (long long i = 1; i < m; i++)
        {
            q += sqrt(n);
            n = sqrt(n);
        }
        printf("%.2f\n", q);
    }
    return 0;
}
发表于 2024-01-11 17:12:25 回复(1)
#include <stdio.h>
#include <math.h>
int main() {
    int m, n;
    while(scanf("%d%d", &n, &m)!= EOF)
    {
        double n1 = n;
        double sum = 0;
        for (int i = 1; i <= m; i++)
        {
            sum += n1;
            n1 = sqrt(n1);
        }
        printf("%.2lf\n", sum);
    }
    return 0;
}

发表于 2023-11-20 10:24:33 回复(0)
#include<stdio.h>
#include<math.h>

double sum(int n,int m){
    double num=n,sum=0;
    for(int i=0;i<m;i++){
        sum+=num;
        num=sqrt(num);
    }
    return sum;
}

int main()
{
    int n=0,m=0;
    while(scanf("%d %d",&n,&m)!=EOF){
        printf("%.2f\n",sum(n,m));
    }
    return 0;
}

发表于 2022-07-28 18:00:24 回复(0)
#include<stdio.h>
#include<math.h>
int main()
{
    int n,m;
   while(scanf("%d%d",&n,&m)!=EOF)
   {
       double count=0;//double精确度更高
       double k=n;
       for(int i=0;i<m;i++)
       {
           count+=k;
           k=sqrt(k);//进行迭代运算
       }
       printf("%.2f\n",count);
   }
    return 0;
}

发表于 2022-02-21 17:58:52 回复(0)
#include<stdio.h>
#include<math.h>
int main()
{
    double n,m;
     while(scanf("%lf%lf",&n,&m)!=EOF)
     {
         double sum=0.0;
         for(int i=0;i<m;i++)
         {
             sum+=n;
             n=sqrt(n);
         }
         printf("%.2lf\n",sum);
     }
    return 0;
}

发表于 2022-02-02 00:59:51 回复(0)
#include<stdio.h>
#include<math.h>
int main()
{
    int n=0;
    int m=0;
    while(scanf("%d %d",&n,&m)!=EOF)
    {
        double sum=0;//这里用float不行
        double t=n;
        int i=0;
        for(i=0;i<m;i++)
        {
            sum+=t;
            t=sqrt(t);
        }
        printf("%.2f\n",sum);
    }
    return 0;
}

发表于 2022-01-21 21:14:58 回复(0)

问题信息

上传者:小小
难度:
7条回答 4373浏览

热门推荐

通过挑战的用户

查看代码
数列的和