Вычислить сумму 1+1/2! +1/3! +..+1/n! значение n вводится с клавиатуры; программу сделать в c# (си шарп)

10802 10802    2   09.06.2019 08:20    1

Ответы
anyabelousova1 anyabelousova1  01.10.2020 22:57
Я C# не знаю, напишу просто алгоритм.
1. Начало
2. Объявление переменных: n, i: int S: double
2. Ввод n с клавиатуры
3. S = 0
4. Цикл по i от 1 до n
4.1. S = S + 1/Fact(i)
4.2. Конец цикла по i
5. Вывод S
6. Конец программы

7. Функция факториала Fact(x: int)
7.1. Объявление переменной k
7.2. Fact = 1
7.3. Цикл по k от 1 до x
7.3.1. Fact = Fact*k
7.3.2. Конец цикла по k
7.4. Вывод Fact
7.5. Конец функции
ПОКАЗАТЬ ОТВЕТЫ
bellatrissa21 bellatrissa21  24.01.2024 12:59
Добрый день! Конечно, я могу помочь вам с этим вопросом. Давайте вместе разберемся, как решить эту задачу.

Для начала, давайте разберемся, что такое факториал. Факториал числа n обозначается символом n! и представляет собой произведение всех натуральных чисел от 1 до n. Например, 4! = 4 * 3 * 2 * 1 = 24.

Теперь перейдем к решению задачи.

1. Попросим пользователя ввести значение n с клавиатуры:
```csharp
Console.Write("Введите значение n: ");
int n = int.Parse(Console.ReadLine());
```

2. Создадим переменную `sum` и инициализируем ее нулем. Она будет использоваться для хранения суммы чисел:
```csharp
double sum = 0.0;
```

3. Создадим цикл `for` для вычисления суммы. Мы будем считать от 1 до n и на каждой итерации добавлять значение 1/i!, где i - текущее значение итерации:
```csharp
for (int i = 1; i <= n; i++)
{
double factorial = 1.0;
for (int j = 1; j <= i; j++)
{
factorial *= j;
}
sum += 1 / factorial;
}
```

Внутри вложенного цикла мы вычисляем значение факториала текущего значения итерации и сохраняем его в переменную `factorial`. Затем мы добавляем 1/factorial к сумме.

4. Выведем результат на экран:
```csharp
Console.WriteLine("Сумма равна: " + sum);
```

5. Завершим программу:
```csharp
Console.ReadLine();
```

Вот и все! Полный код программы будет выглядеть следующим образом:

```csharp
using System;

class Program
{
static void Main(string[] args)
{
Console.Write("Введите значение n: ");
int n = int.Parse(Console.ReadLine());

double sum = 0.0;

for (int i = 1; i <= n; i++)
{
double factorial = 1.0;
for (int j = 1; j <= i; j++)
{
factorial *= j;
}
sum += 1 / factorial;
}

Console.WriteLine("Сумма равна: " + sum);

Console.ReadLine();
}
}
```

Это должно быть достаточно понятно для школьника. Если у вас возникнут какие-либо вопросы, буду рад помочь!
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика