Cəmi hesablayın#8546

Cəmi hesablayın (Həll təhlili)

Verilmiş cəmi dövrlə hesablayaq.

Verilmiş cəmi riyazi hesablayaq:

{1 \over 1 \cdot 2} + {1 \over 2 \cdot 3} + ... + {1 \over n \cdot (n + 1)} = \\ \left( {1 \over 1} - {1 \over 2} \right) + \left( {1 \over 2} - {1 \over 3} \right) + ... + \left( {1 \over n} - {1 \over n + 1} \right) = 1 - {1 \over n + 1}

İndi cavabı tapmaq üçün formuladan istifadə edə bilərik.

Alqoritmin həyata keçirilməsi

Verilən giriş dəyərini oxuyuruq.

scanf("%d",&n);

Dəyişən ilə 1, 2, 3, ..., n ədədlərini keçiririk. Hər iterasiyada nəticə cəminə , 1 / (i \cdot (i + 1)) ədədini əlavə edirik.

s = 0; i = 1;
while (i <= n) 
{
  s += 1.0 / i / (i + 1);
  i++;
}

İstənilən cəmi nümayiş edirik.

printf("%lf\n",s);

Alqoritmin həyata keçirilməsi — for dövrü

Verilən giriş dəyərini oxuyuruq.

scanf("%d",&n);

İstənilən cəmi dəyişənində hesablayırıq.

s = 0;

Dövrlə cəmiyə malik olan cəmin dəyərini hesablayırıq. -ci ədat 1 / (i \cdot (i + 1)) bərabərdir.

for (i = 1; i <= n; i++)
  s += 1.0 / (i * (i + 1));

İstənilən cəmi nümayiş edirik.

printf("%.6lf\n",s);

Alqoritmin həyata keçirilməsi — formula

Verilən giriş dəyərini oxuyuruq.

scanf("%d", &n);

Formulaya əsasən cavabı hesablayıb nümayiş edirik.

s = 1 - 1.0 / (n + 1);
printf("%.6lf\n", s);

Java həyata keçirilməsi

import java.util.*;

class Main 
{
  public static void main(String[] args) 
  {
    Scanner con = new Scanner(System.in);
    int n = con.nextInt();

    double s = 0;
    for(int i = 1; i <= n; i++)
      s += 1.0 / (i * (i + 1));

    System.out.printf("%6f\n", s);
    con.close();
  }
}

Python həyata keçirilməsi

Verilən giriş dəyərini oxuyuruq.

n = int(input())

İstənilən cəmi dəyişənində hesablayırıq.

s = 0;

Dövrlə cəmiyə malik olan cəmin dəyərini hesablayırıq. -ci ədat 1 / (i \cdot (i + 1)) bərabərdir.

for i in range(1, n+1):
  s += 1.0 / (i * (i + 1));

İstənilən cəmi nümayiş edirik.

print(s)