Рубрики

Программа для поиска суммы первых n натуральных чисел

По заданному числу n найти сумму первых натуральных чисел.

Примеры :

Input : n = 3
Output : 6
Explanation :
Note that 1 + 2 + 3 = 6

Input  : 5
Output : 15 
Explanation :
Note that 1 + 2 + 3 + 4 + 5 = 15

Простое решение заключается в следующем.

1) Initialize : sum = 0
2) Run a loop from x = 1 to n and 
   do following in loop.
     sum = sum + x 

C ++

// Программа CPP для поиска суммы первого
// n натуральных чисел.
#include<iostream>

using namespace std;

  
// Возвращает сумму первых n натуральных
// числа

int findSum(int n)

{

   int sum = 0;

   for (int x=1; x<=n; x++) 

     sum = sum + x;

   return sum;

}

  
// Код драйвера

int main()

{

  int n = 5;

  cout << findSum(n);

  return 0;

Джава

// JAVA программа для поиска суммы первого
// n натуральных чисел.

import java.io.*;

  

class GFG{

  

    // Возвращает сумму первых n натуральных

    // числа

    static int findSum(int n)

    {

        int sum = 0;

        for (int x = 1; x <= n; x++) 

            sum = sum + x;

        return sum;

    }

  

    // Код драйвера

    public static void main(String args[])

    {

        int n = 5;

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

    

}

  
// Этот код предоставлен Никитой Тивари.

питон

# PYTHON программа для поиска суммы первого
# n натуральных чисел.

  
# Возвращает сумму первых n натуральных
# числа

def findSum(n) :

    sum = 0

    x = 1

    while x <=n :

        sum = sum + x

        x = x + 1

    return sum

  

  
# Код драйвера

  

n = 5

print findSum(n)

  
# Этот код предоставлен Никитой Тивари.

C #

// C # программа для поиска суммы первого
// n натуральных чисел.

using System;

  

class GFG{

  

    // Возвращает сумму первых n натуральных

    // числа

    static int findSum(int n)

    {

        int sum = 0;

        for (int x = 1; x <= n; x++) 

            sum = sum + x;

        return sum;

    }

  

    // Код драйвера

    public static void Main()

    {

        int n = 5;

        Console.Write(findSum(n));

    

}

  
// Этот код предоставлен vt_m.

PHP

<?php
// PHP программа для поиска суммы первого
// n натуральных чисел.

  
// Возвращает сумму первых n натуральных
// числа

function findSum($n)

{

$sum = 0;

for ($x = 1; $x <= $n; $x++) 

    $sum = $sum + $x;

return $sum;

}

  
// Код драйвера

$n = 5;

echo findSum($n);

  
// Этот код предоставлен Sam007
?>


Выход :

15

Эффективным решением является использование приведенной ниже формулы.

Как это работает?

We can prove this formula using induction.

It is true for n = 1 and n = 2
For n = 1, sum = 1 * (1 + 1)/2 = 1
For n = 2, sum = 2 * (2 + 1)/2 = 3

Let it be true for k = n-1.

Sum of k numbers = (k * (k+1))/2
Putting k = n-1, we get
Sum of k numbers = ((n-1) * (n-1+1))/2
                 = (n - 1) * n / 2

If we add n, we get,
Sum of n numbers = n + (n - 1) * n / 2
                 = (2n + n2 - n)/2
                 = n * (n + 1)/2

C ++

// Эффективная программа CPP для поиска суммы первого
// n натуральных чисел.
#include<iostream>

using namespace std;

  
// Возвращает сумму первых n натуральных
// числа

int findSum(int n)

{

   return n * (n + 1) / 2;

}

  
// Код драйвера

int main()

{

  int n = 5;

  cout << findSum(n);

  return 0;

Джава

// Эффективная JAVA-программа для поиска суммы
// из первых n натуральных чисел.

import java.io.*;

  

class GFG{

      

    // Возвращает сумму первых n натуральных

    // числа

    static int findSum(int n)

    {

        return n * (n + 1) / 2;

    }

  

    // Код драйвера

    public static void main(String args[])

    {

        int n = 5;

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

    }

}

  
// Этот код предоставлен Никитой Тивари.

питон

# Эффективная программа CPP, чтобы найти сумму
# первых n натуральных чисел.

  
# Возвращает сумму первых n натуральных
# числа

def findSum(n) :

    return n * (n + 1) / 2

      
# Код драйвера

n = 5

print findSum(n)

  
# Этот код предоставлен Никитой Тивари.

C #

// Эффективная программа на C # для поиска суммы
// из первых n натуральных чисел.

using System;

  

class GFG{

      

    // Возвращает сумму первых n натуральных

    // числа

    static int findSum(int n)

    {

        return n * (n + 1) / 2;

    }

  

    // Код драйвера

    public static void Main()

    {

        int n = 5;

        Console.Write(findSum(n));

    }

}

  
// Этот код предоставлен vt_m.

PHP

<?php
// Эффективная PHP-программа для поиска суммы
// из первых n натуральных чисел.

  
// Возвращает сумму первых n натуральных
// числа

function findSum($n)

{

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

}

  
// Код драйвера

$n = 5;

echo findSum($n);

  
// Этот код предоставлен Sam007
?>


Выход:

15


Вышеуказанная программа вызывает переполнение, даже если результат не выходит за пределы целочисленного предела
. Мы можем избежать переполнения до некоторой степени, выполнив сначала деление.

C ++

// Эффективная программа CPP для поиска суммы первого
// n натуральных чисел, которые избегают переполнения, если
// результат будет в определенных пределах.
#include<iostream>

using namespace std;

  
// Возвращает сумму первых n натуральных
// числа

int findSum(int n)

{

   if (n % 2 == 0)

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

  

   // Если n нечетно, (n + 1) должно быть четным

   else 

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

}

  
// Код драйвера

int main()

{

  int n = 5;

  cout << findSum(n);

  return 0;

Джава

// Эффективная JAVA-программа для поиска суммы первых
// n натуральных чисел, которые избегают переполнения, если
// результат будет в определенных пределах.

import java.io.*;

  

class GFG{

  

    // Возвращает сумму первых n натуральных

    // числа

    static int findSum(int n)

    {

        if (n % 2 == 0)

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

  

        // Если n нечетно, (n + 1) должно быть четным

        else

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

    }

  

    // Код драйвера

    public static void main(String args[])

    {

        int n = 5;

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

    }

}

  
// Этот код предоставлен Никитой Тивари.

питон

# Эффективная программа Python, чтобы найти сумму
# первых n натуральных чисел, которые избегают
# переполнение, если результат будет
# в определенных пределах.

  
# Возвращает сумму первых n натуральных
# числа

def findSum(n) :

    if (n % 2 == 0) :

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

   

   # Если n нечетно, (n + 1) должно быть четным

    else :

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

         
# Код драйвера

n = 5

print findSum(n)

  
# Этот код предоставлен Никитой Тивари.

C #

// Эффективная программа на C # для поиска суммы первого
// n натуральных чисел, которые избегают переполнения, если
// результат будет в определенных пределах.

using System;

  

class GFG{

  

    // Возвращает сумму первых n натуральных

    // числа

    static int findSum(int n)

    {

        if (n % 2 == 0)

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

  

        // Если n нечетно, (n + 1) должно быть четным

        else

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

    }

  

    // Код драйвера

    public static void Main()

    {

        int n = 5;

        Console.Write(findSum(n));

    }

}

  
// Этот код предоставлен vt_m.

PHP

<?php
// Эффективная программа php для поиска суммы первого
// n натуральных чисел, которые избегают переполнения, если
// результат будет в определенных пределах.

  
// Возвращает сумму первых n натуральных
// числа

function findSum($n)

{

    if ($n % 2 == 0)

        return ($n / 2) * 

               ($n + 1);

      

    // Если n нечетно, (n + 1) должно быть четным

    else

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

}

  
// Код драйвера

$n = 5;

echo findSum($n);

  
// Этот код предоставлен Sam007
?>


Выход:

15

Эта статья предоставлена Кариком . Если вы как GeeksforGeeks и хотели бы внести свой вклад, вы также можете написать статью с помощью contribute.geeksforgeeks.org или по почте статьи contribute@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

Рекомендуемые посты:

Программа для поиска суммы первых n натуральных чисел

0.00 (0%) 0 votes