hdoj1001--Sum Problem

Problem Description
Hey, welcome to HDOJ(Hangzhou Dianzi University Online Judge).
In this problem, your task is to calculate SUM(n) = 1 + 2 + 3 + ... + n.
 
Input
The input will consist of a series of integers n, one integer per line.
 
Output
For each case, output SUM(n) in one line, followed by a blank line. You may assume the result will be in the range of 32-bit signed integer.
 
Sample Input
1
100
 
Sample Output
1
 
5050
 
code(java):
import java.util.*;

import java.io.*;



class Main

{

    public static int sum(int n) {

        if(n % 2 == 0) return n/2*(n+1);

        else return (n+1)/2*n;

        

    }

    public static void main(String args[])

    {

        Scanner cin = new Scanner(System.in);

        int n;

        while(cin.hasNextInt()) {

            n = cin.nextInt();

            System.out.println(sum(n));

            System.out.println();

        }

    }

}

code(C):

#include <stdio.h>



int sum(int n)

{

    if(n % 2) 

        return (n + 1) / 2 * n;

    else

        return (n / 2) * (n + 1);

}



int main()

{

    int n;

    while(scanf("%d",&n) != EOF){

        printf("%d\n\n",sum(n));

    }

    return 0;

}

 

你可能感兴趣的:(SUM)