# Program to find sum of prime numbers between 1 to n

Write a program to find sum of all prime numbers between 1 to n.

Examples:

```Input : 10
Output : 17
Explanation : Primes between 1 to 10 : 2, 3, 5, 7.

Input : 11
Output : 28
Explanation : Primes between 1 to 11 : 2, 3, 5, 7, 11.
```

## Recommended: Please solve it on “PRACTICE ” first, before moving on to the solution.

A simple solution is to traverse all numbers from 1 to n. For every number, check if it is a prime. If yes, add it to result.

An efficient solution is to use Sieve of Eratosthenes to find all prime numbers from till n and then do their sum.

## C++

 `// C++ program to find sum of primes in ` `// range from 1 to n. ` `#include ` `using` `namespace` `std; ` ` `  `// Returns sum of primes in range from ` `// 1 to n. ` `int` `sumOfPrimes(``int` `n) ` `{ ` `    ``// Array to store prime numbers ` `    ``bool` `prime[n + 1]; ` ` `  `    ``// Create a boolean array "prime[0..n]" ` `    ``// and initialize all entries it as true. ` `    ``// A value in prime[i] will finally be ` `    ``// false if i is Not a prime, else true. ` `    ``memset``(prime, ``true``, n + 1); ` ` `  `    ``for` `(``int` `p = 2; p * p <= n; p++) { ` ` `  `        ``// If prime[p] is not changed, then ` `        ``// it is a prime ` `        ``if` `(prime[p] == ``true``) { ` ` `  `            ``// Update all multiples of p ` `            ``for` `(``int` `i = p * 2; i <= n; i += p) ` `                ``prime[i] = ``false``; ` `        ``} ` `    ``} ` ` `  `    ``// Return sum of primes generated through ` `    ``// Sieve. ` `    ``int` `sum = 0; ` `    ``for` `(``int` `i = 2; i <= n; i++) ` `        ``if` `(prime[i]) ` `            ``sum += i; ` `    ``return` `sum; ` `} ` ` `  `// Driver code ` `int` `main() ` `{ ` `    ``int` `n = 11; ` `    ``cout << sumOfPrimes(n); ` `    ``return` `0; ` `} `

## Java

 `// Java program to find ` `// sum of primes in ` `// range from 1 to n. ` `import` `java.io.*; ` `import` `java.util.*; ` ` `  `class` `GFG { ` `     `  `    ``// Returns sum of primes ` `    ``// in range from ` `    ``// 1 to n. ` `    ``static` `int` `sumOfPrimes(``int` `n) ` `    ``{ ` `        ``// Array to store prime numbers ` `        ``boolean` `prime[]=``new` `boolean``[n + ``1``]; ` `      `  `        ``// Create a boolean array "prime[0..n]" ` `        ``// and initialize all entries it as true. ` `        ``// A value in prime[i] will finally be ` `        ``// false if i is Not a prime, else true. ` `        ``Arrays.fill(prime, ``true``); ` `      `  `        ``for` `(``int` `p = ``2``; p * p <= n; p++) { ` `      `  `            ``// If prime[p] is not changed, then ` `            ``// it is a prime ` `            ``if` `(prime[p] == ``true``) { ` `      `  `                ``// Update all multiples of p ` `                ``for` `(``int` `i = p * ``2``; i <= n; i += p) ` `                    ``prime[i] = ``false``; ` `            ``} ` `        ``} ` `      `  `        ``// Return sum of primes generated through ` `        ``// Sieve. ` `        ``int` `sum = ``0``; ` `        ``for` `(``int` `i = ``2``; i <= n; i++) ` `            ``if` `(prime[i]) ` `                ``sum += i; ` `        ``return` `sum; ` `    ``} ` `  `  `   ``// Driver code ` `    ``public` `static` `void` `main(String args[]) ` `    ``{ ` `        ``int` `n = ``11``; ` `        ``System.out.print(sumOfPrimes(n)); ` `    ``} ` `} ` ` `  ` `  `// This code is contributed ` `// by Nikita Tiwari. `

## Python

 `# Python program to find sum of primes ` `# in range from 1 to n. ` ` `  `# Returns sum of primes in range from ` `# 1 to n ` ` `  `def` `sumOfPrimes(n): ` `    ``# list to store prime numbers ` `    ``prime ``=` `[``True``] ``*` `(n ``+` `1``) ` `     `  `    ``# Create a boolean array "prime[0..n]" ` `    ``# and initialize all entries it as true. ` `    ``# A value in prime[i] will finally be ` `    ``# false if i is Not a prime, else true. ` `     `  `    ``p ``=` `2` `    ``while` `p ``*` `p <``=` `n: ` `        ``# If prime[p] is not changed, then ` `        ``# it is a prime ` `        ``if` `prime[p] ``=``=` `True``: ` `            ``# Update all multiples of p ` `            ``i ``=` `p ``*` `2` `            ``while` `i <``=` `n: ` `                ``prime[i] ``=` `False` `                ``i ``+``=` `p ` `        ``p ``+``=` `1`     `          `  `    ``# Return sum of primes generated through ` `    ``# Sieve. ` `    ``sum` `=` `0` `    ``for` `i ``in` `range` `(``2``, n ``+` `1``): ` `        ``if``(prime[i]): ` `            ``sum` `+``=` `i ` `    ``return` `sum` ` `  `# Driver code ` `n ``=` `11` `print` `sumOfPrimes(n) ` ` `  `# This code is contributed by Sachin Bisht `

## C#

 `// C# program to find ` `// sum of primes in ` `// range from 1 to n. ` `using` `System; ` ` `  `class` `GFG { ` `     `  `    ``// Returns sum of primes ` `    ``// in range from ` `    ``// 1 to n. ` `    ``static` `int` `sumOfPrimes(``int` `n) ` `    ``{ ` `         `  `        ``// Array to store prime numbers ` `        ``bool` `[]prime=``new` `bool``[n + 1]; ` `     `  `        ``// Create a boolean array "prime[0..n]" ` `        ``// and initialize all entries it as true. ` `        ``// A value in prime[i] will finally be ` `        ``// false if i is Not a prime, else true. ` `        ``for``(``int` `i = 0; i < n + 1; i++) ` `        ``prime[i] = ``true``; ` `     `  `         `  `     `  `        ``for` `(``int` `p = 2; p * p <= n; p++) ` `        ``{ ` `     `  `            ``// If prime[p] is not changed, ` `            ``// then it is a prime ` `            ``if` `(prime[p] == ``true``) ` `            ``{ ` `     `  `                ``// Update all multiples of p ` `                ``for` `(``int` `i = p * 2; i <= n; i += p) ` `                    ``prime[i] = ``false``; ` `            ``} ` `        ``} ` `     `  `        ``// Return sum of primes  ` `        ``// generated  through Sieve. ` `        ``int` `sum = 0; ` `        ``for` `(``int` `i = 2; i <= n; i++) ` `            ``if` `(prime[i]) ` `                ``sum += i; ` `        ``return` `sum; ` `    ``} ` ` `  `    ``// Driver code ` `    ``public` `static` `void` `Main() ` `    ``{ ` `        ``int` `n = 11; ` `        ``Console.Write(sumOfPrimes(n)); ` `    ``} ` `} ` ` `  `// This code is contributed by nitin mittal. `

## PHP

 ` `

Output:

`28`

This article is contributed by Rohit Thapliyal. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.