Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.60
Vampire110
17 / 17 / 0
Регистрация: 18.05.2011
Сообщений: 33
#1

Цикл: Используя только операции умножения и деления вычислить: A^n (A в степени n) , минимизировав число операций - C++

23.10.2011, 01:49. Просмотров 1891. Ответов 5
Метки нет (Все метки)

Дано натуральное число A ( Ввод числа производится в шеснадцатеричной системе ). Используя только операции умножения и деления вычислить: A^n (A в степени n) , минимизировава число операций. Результат вывести на экран в десятиричной системе. степень n равно 37.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.10.2011, 01:49     Цикл: Используя только операции умножения и деления вычислить: A^n (A в степени n) , минимизировав число операций
Посмотрите здесь:

C++ Не используя никаких операций, кроме умножения и присваивания, составить программу, вычисляющую a7 за 4 операции умножения
Используя только операции «*» и «/» вычислить: Аn, минимизировав число операций C++
Не пользуясь никакими другими арифметическими операциями, кроме умножения, сложения и вычитания, вычислить за минимальное число операций C++
Данное натуральное число N. Используя только элементарные арифметические операции (+, -, *, /) C++
C++ Дано целое число (N>0), используя операции деление нацело и взятие остатка от деления, вывести все его цифры начиная с самой правой
Используя рекурсию, перемножить 2 натуральных числа не используя операции умножения и иметь логарифмическую сложность C++
C++ Дано вещественное число n.Пользуясь только операцией умножения получить а в 27 степени за шесть операций
C++ Возвести число в 10 степень, используя только четыре операции умножения
Перегрузка операций умножения и деления C++
C++ Не используя операции умножения и деления, найти количество отрезков, расположенных на отрезке А
Найти частное от деления используя только операции сложения и вычитания C++
Используя операции деления нацело и взятия остатка от деления, определить, имеется ли в записи числа цифра k C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alkagolik
 Аватар для alkagolik
1510 / 616 / 79
Регистрация: 15.07.2011
Сообщений: 3,552
23.10.2011, 02:14     Цикл: Используя только операции умножения и деления вычислить: A^n (A в степени n) , минимизировав число операций #2
http://www.cyberforum.ru/cgi-bin/latex.cgi?a^{37} \, = \, a \, * \, \(\(a^{3}\)^{3}\)^{4} 8 умножений

Добавлено через 14 минут
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <stdlib.h>
 
long long int quad(long long int x){
    return x * x;
}
 
long long int cube(long long int x){
    return x * x * x;
}
 
long long int quart(long long int x){
    return quad(x) * quad(x);
}
 
int main()
{
    /**не уверен насчет однопроцессорных архитектур х32**/
    long long int x = 0xa;
    printf("%lli", x * quart( cube( cube(x) ) ) );
    return 0;
}
magirus
24.10.2011, 17:07
  #3
 Комментарий модератора 
называйте темы информативно
gogajeti
4 / 4 / 0
Регистрация: 19.10.2011
Сообщений: 20
24.10.2011, 18:00     Цикл: Используя только операции умножения и деления вычислить: A^n (A в степени n) , минимизировав число операций #4
есть алгоритм быстрого возведения в степень в википедии
Alex330
118 / 118 / 4
Регистрация: 12.06.2012
Сообщений: 130
19.06.2012, 13:36     Цикл: Используя только операции умножения и деления вычислить: A^n (A в степени n) , минимизировав число операций #5
напишу только идею:

А1 = А*А (первое умножение А1 содержит квадрат А)
А2 =А1*А1 (второе умножение А2 содержит четвертую степень А)
А3= А2*А2 (третье умножение А3 содержит восьмую степень А)
А4= А3*А3 (четвертое умножение А4 содержит шестнадцатую)
А5=А4*А4 (пятое умножение А4 содержит тридцать вторую)
А6 = А5*А2 (шестое умножение А6 содержит тридцать шестую)
Return = А6*А (седьмое умножение, искомая 37 степень)
alkagolik
 Аватар для alkagolik
1510 / 616 / 79
Регистрация: 15.07.2011
Сообщений: 3,552
19.06.2012, 15:11     Цикл: Используя только операции умножения и деления вычислить: A^n (A в степени n) , минимизировав число операций #6
Alex330, молодец, задачу выполнил. На дату поста посмотри
Yandex
Объявления
19.06.2012, 15:11     Цикл: Используя только операции умножения и деления вычислить: A^n (A в степени n) , минимизировав число операций
Ответ Создать тему
Опции темы

Текущее время: 10:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru