求多项式的和

多项式的描述如下:
1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 + ...
现在请你求出该多项式的前n项的和。

Input

输入数据由2行组成,首先是一个正整数m(m<100),表示测试实例的个数,第二行包含m个正整数,对于每一个整数(不妨设为n,n<1000),求该多项式的前n项的和。

Output

对于每个测试实例n,要求输出多项式前n项的和。每个测试实例的输出占一行,结果保留2位小数。

Sample Input

2
1 2

Sample Output

1.00
0.50

#include<stdio.h>
#define N 100
int a[N];
int main()
{
    int m,i,j;
    scanf("%d",&m);
    for(i=0;i<m;i++)
        scanf("%d",&a[i]);
    for(i=0;i<m;i++)
    {
        double sum=1.0;
        for(j=2;j<=a[i];j++)
        {
            if(j%2==0)
                sum-=1.0/j;
            else
                sum+=1.0/j;
        }
        printf("%.2lf\n",sum);//注意浮点数的输出
    }
return 0;
}

求多项式的和

时间: 2024-10-29 19:12:10

求多项式的和的相关文章

1127: 零起点学算法34——继续求多项式

1127: 零起点学算法34--继续求多项式 Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: 3481  Accepted: 1985[Submit][Status][Web Board] Description 输入1个正整数n, 计算1+(1+2)+(1+2+3)+...+(1+2+3+...+n) Input 输入正整数n(多组数据) Output 输出1+(1+2)+(1+2+3)+...+

1128: 零起点学算法35——再求多项式(含浮点)

1128: 零起点学算法35--再求多项式(含浮点) Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: 2141  Accepted: 1002[Submit][Status][Web Board] Description 输入一个整数n,计算 1+1/(1-3)+1/(1-3+5)+...+1/(1-3+5-...+2n-1)的值 Input 输入一个整数n(多组数据) Output 出1+1/(1

中国大学MOOC-陈越、何钦铭-数据结构基础习题集 03-1. 二分法求多项式单根

03-1. 二分法求多项式单根(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 杨起帆(浙江大学城市学院) 二分法求函数根的原理为:如果连续函数f(x)在区间[a, b]的两个端点取值异号,即f(a)f(b)<0,则它在这个区间内至少存在1个根r,即f(r)=0. 二分法的步骤为: 检查区间长度,如果小于给定阈值,则停止,输出区间中点(a+b)/2:否则 如果f(a)f(b)<0,则计算中点的值f((a+b)/2): 如

循环-08. 二分法求多项式单根(20)

1 #include<iostream> 2 #include<cmath> 3 #include<iomanip> 4 using namespace std; 5 double a3,a2,a1,a0; 6 double f(double x){ 7 return a3*pow(x,3)+a2*pow(x,2)+a1*x+a0; 8 } 9 int main(){ 10 double a,b,t=0.001; 11 cin>>a3>>a2&g

二分法求多项式单根

<pre name="code" class="cpp">/* 二分法求多项式单根(20) 二分法求函数根的原理为:如果连续函数f(x)在区间[a, b]的两个端点取值异号, 即f(a)f(b)<0,则它在这个区间内至少存在1个根r,即f(r)=0. 二分法的步骤为: 检查区间长度,如果小于给定阈值,则停止,输出区间中点(a+b)/2:否则 如果f(a)f(b)<0,则计算中点的值f((a+b)/2): 如果f((a+b)/2)正好为0,则(

*循环-08. 二分法求多项式单根

1 /* 2 * Main.c 3 * C8-循环-08. 二分法求多项式单根 4 * Created on: 2014年7月26日 5 * Author: Boomkeeper 6 *****部分通过******** 7 */ 8 #include <stdio.h> 9 #include <math.h> 10 11 float a3 = 0, a2 = 0, a1 = 0, a0 = 0; 12 13 double func(double x) { 14 return (a3

1126: 零起点学算法33——求多项式

1126: 零起点学算法33--求多项式 Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: 2614  Accepted: 1356[Submit][Status][Web Board] Description 形如1-2+3-4...+n,你会编写吗? Input 输入1个正整数n(多组数据) n<=1000 Output 输出1-2+3-4...+n的值(每组数据一行) Sample Input

教你如何求多项式的系数

  怎么求多项式的系数 在数学书我们曾经学过求多项式系数的问题吧,但是编程上怎么办呢? 先给一道例题看看吧 Easy Task Calculating the derivation of a polynomial is an easy task. Given a function f(x) , we use (f(x))' to denote its derivation. We use x^n to denote xn. To calculate the derivation of a pol

样条之切比雪夫算法求多项式

核心代码: 1 // 使用切比雪夫算法求多项式 2 void YcChebyshevFitSpline::CalculateMultinomialValues(const void* valuesPtr, int stride, int n, int m, float* a) const 3 { 4 memset(a, 0, sizeof(float)*m); 5 6 float xStep = 1.0f/(n - 1); 7 8 int m1,i,j,l,ii,k,im,ix[21]; 9 f