Объяснение:
#include <iostream>
using namespace std;
long double fact(int N)
{
if(N < 0) // если пользователь ввел отрицательное число
return 0; // возвращаем ноль
if (N == 0) // если пользователь ввел ноль,
return 1; // возвращаем факториал от нуля - не удивляетесь, но это 1 =)
else // Во всех остальных случаях
return N * fact(N - 1); // делаем рекурсию.
}
int main()
{
int N;
setlocale(0,""); // Включаем кириллицу
cout << "Введите число для вычисления факториала: ";
cin >> N;
cout << "Факториал для числа " << N << " = " << fact(N) << endl << endl; // fact(N) - функция для вычисления факториала.
return 0;
}
Поделитесь своими знаниями, ответьте на вопрос:
Как можно алгоритм сделать более эффективным? •Как проанализировать эффективность алгоритма?
1) В столбце Е для каждого учащегося вычислим сумму по двум предметам, если это ученик школы округа «Центральный». Для ученика другого округа ячейка будет содержать пустую строку. В ячейку Е2 запишем формулу =ЕСЛИ(В2=«Центральный»; С2+D2; "") Скопируем формулу во все ячейки диапазона ЕЗ:Е273. Благодаря использованию относительных ссылок в столбце Е непустые значения строк 2−267 будут равны суммам учеников школ округа «Центральный». Для того чтобы найти наименьшую сумму, в ячейку G1 внесём формулу =МИН(Е2:Е267).
2) Для ответа на второй вопрос в дополнительной ячейке, например в НЗ, найдём количество участников, набравших по физике менее Это можно сделать различными в том числе при функции =СЧЁТЕСЛИ(С2:С267; "<70"). Выразим полученное значение в процентах от общего числа участников тестирования. Результат запишем в ячейку G3: =НЗ/266*100.
ответ: 1) 68; 2) 90,2.