М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации

Вы хотите возвести данное число a в некоторую целочисленную степень n, но ваш
калькулятор умеет только перемножать числа. Например, вы можете вычислить a 2 = a × a,
затем вы можете вычислить a 3 = a 2 × a или a 4 = a 2 × a 2 . Вы можете по-разному
организовать вычисление значения a n . Например, вычислить a 5 можно за 4 умножения: 1) a 2
= a × a, 2) a 3 = a 2 × a, 3) a 4 = a 3 × a, 4) a 5 = a 4 × a. Но можно вычислить a 5 всего лишь за 3
умножения: 1) a 2 = a × a, 2) a 3 = a 2 × a, 3) a 5 = a 3 × a 2. Вам необходимо определить, за
какое минимальное число умножений можно вычислить следующие степени: 7, 15, 23, 63.
Вычисление каждой из этих степеней должно быть независимо от остальных, то есть при
вычислении 15-й степени нельзя использовать вычисления, проделанные ранее для
вычисления 7-й степени. Вы решаете четыре независимые задачи – за какое минимальное
число умножений можно вычислить 7-ю степень, 15-ю степень, 23-ю степень и 63-ю степень.​

👇
Открыть все ответы
Ответ:
verunyabogachk
verunyabogachk
08.10.2020
//PascalABC.NET версия 3.2, сборка 1389
//Если программа не запускается, то обновите версию
uses System.Linq;
begin
    begin
        writeln('I');
        var n := ReadInteger('n=');
        Writeln((1 + 1 + Power(2, n - 1)) * n / 2);
    end;
    
    begin
        writeln;
        writeln('II');
        var n := ReadInteger('n=');
        Writeln(n mod 11 = 0 ? 'YES' : 'NO');
        
    end;
    
    begin
        writeln;
        writeln('III');
        var a := ReadArrInteger('Документы', ReadInteger('n=')).ToList;
        writeln;
        
        while a.Any() do
        begin
            write(a[0], ' ');
            a.RemoveAt(0);
            if not a.Any then break;
            
            write(a.Last, ' ');
            a.RemoveAt(a.Count - 1);
            if not a.Any then break;
            
            var n := 0;
            if a.Count > 1 then n := a.Count div 2 - 1;
            write(a[n], ' ');
            a.RemoveAt(n);
        end;
    end;
end.
4,8(45 оценок)
Ответ:
juliina902
juliina902
08.10.2020
Задача требует рассчитать значение функции y в зависимости от значения переменной x. Если x > 0, то значение функции y равно квадрату синуса x, то есть y = sin²x. В противном случае, когда x ≤ 0, значение функции y равно 1 минус двойное произведение синуса квадрата x, то есть y = 1-2sin(x²).

Для решения этой задачи нужно выполнить следующие шаги:

Шаг 1: Проверить условие x > 0
- Если условие выполняется, перейти к следующему шагу
- Если условие не выполняется, перейти к шагу 3

Шаг 2: Вычислить значение y = sin²x
- Используя математическую библиотеку или калькулятор, вычислить значение синуса x
- Возвести полученное значение в квадрат
- Записать полученное значение в переменную y
- Перейти к шагу 4

Шаг 3: Вычислить значение y = 1-2sin(x²)
- Вычислить значение квадрата x
- Используя математическую библиотеку или калькулятор, вычислить значение синуса полученного квадрата
- Умножить полученное значение на 2
- Отнять полученное значение от 1
- Записать полученное значение в переменную y

Шаг 4: Вывести значение переменной y

Исходя из описания проблемы, возникает ошибка при выполнении шага 3 и вычислении значения синуса. Вероятно, используется функция синуса, которая возвращает только значения от 0 до 1, а значением синуса при отрицательных аргументах является отрицательное число. Для решения этой проблемы, используйте специальные функции или методы, которые корректно обрабатывают отрицательные значения аргументов.

На языке программирования Python можно использовать библиотеку math и функции math.sin, math.sinh или math.asin, которые работают с отрицательными значениями аргументов.

Например, для вычисления синуса x, можно использовать следующий код:

import math
x = -1
y = math.sin(x)
print(y)

Этот код выведет значение синуса -1, которое равно примерно -0.84.

Обновите свою программу, используя соответствующие функции или методы, и учтите, что синус отрицательных аргументов - это отрицательное число, чтобы выполнить правильные вычисления при x < 0.
4,7(26 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ