|
||||||||||||
Ответ2=Функция(Сглаживание(2..31),Сглаживание(3..32))Стр 1 из 2Следующая ⇒
Вычислить у= xn (x>0 – вещественное или целое число, n³0 – целое число), используя следующее соотношение: (X2)N/2 , если N четное XN = X*(X2)(N-1)/2 , если N нечетное. Указание. Вычисление (целочисленной) степени по такому алгоритму позволяет получить результат за ~LOG2(n) умножений (вместо ~n в случае банального алгоритма). xn = xn mod 2 * (x2) n div 2 = xn mod 2 * (x2) (n div 2) mod 2 * (x4) n div 4 = = xn mod 2 * (x2) (n div 2) mod 2 * (x4) (n div 4) mod 2 * (x8) n div 8 = = xn mod 2 * (x2) (n div 2) mod 2 * (x4) (n div 4) mod 2 * (x8) (n div 8) mod 2 * (x16) (n div 16) mod 2... § Закономерность x, x2, x4, x8, x16... ясна. § Закономерность n div 2, n div 4, n div 8, n div 16... тоже. § vu mod 2 = 1 или v, поскольку (u mod 2) = 0 или 1. § Осталось только аккуратно продумать условие завершения цикла и собрать программу. -------------------------------------------------------------------------------------------- Составить программу, которая выводит компоненты вектора вещественных чисел x[0..79] в текстовый файл в порядке, описанном нижеследующей диаграммой: -------------------------------------------------------------------------------------------- Функция от «сглаженной» последовательности. Из входного потока поступает (потенциально бесконечная) последовательность (положительных) вещественных чисел. «Сглаживание» - для текущего элемента последовательности рассматривается среднеарифметическое от 30-элементного сегмента подряд идущих элементов, начиная с текущего. «Функция» от пары <x,y> - sin(x+cos(y)). Для каждой пары соседних элементов входной последовательности (за исключением хвостовых) вывести в выходной поток значение функции от их «сглаженных значений». Ответ2=Функция(Сглаживание(2..31),Сглаживание(3..32)) Сглаживание(2..31)
Сглаживание(1..30) Сглаживание(3..32)
|
||||||||||||
|