I. исполнителя Квадратор две команды. которым присвоены номера: 1. возведи в квадрат
2. прибавь 3
Первая из них возводит число на экране во вторую степень, вторая увеличивает его на 3.
Составьте алгоритм получения из числа 1 числа 25, содержащий не более 5 команд. В ответе запишите только номера команд.
Сложновато, но работает. Если что-то непонятно или не запускается - спрашивайте.
#include <iostream>
int main()
{
int N, i;
setlocale(LC_ALL, "Russian");
std::cout << "Введите четное N: ";
std::cin >> N;
int** A = new int* [N / 2];
int maxindex = 0;
for (i = 0; i < N; i++)
{
if (i%2==0) A[i/2] = new int[2];
std::cout << "Введите " << i+1 << " число: ";
std::cin >> A[i / 2][i%2];
if (A[i / 2][i % 2] > A[maxindex / 2][maxindex % 2]) maxindex = i;
}
std::cout << "\nСтрока матрицы (подмассив), содержащая максимальное значение: ";
std::cout << A[maxindex/2][0]<< " " << A[maxindex/2][1];
return 0;
}
Объяснение:
#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;
}