Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/67: Рейтинг темы: голосов - 67, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 21.09.2009
Сообщений: 7
1

вычислить 2 в 1000 степени

21.09.2009, 16:15. Показов 13962. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста, никак непойму как это реализовать
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.09.2009, 16:15
Ответы с готовыми решениями:

Нужно вычислить число а в степени b где b<1000!
Программёры!Помогите!Я чайник в С++! Нужно вычислить число а в степени b где b&lt;1000! Помогите...

число Х , вычислить Х в 5 степени и Х в 13 степени используя пять операций умножения
Дано действительное число Х , вычислить Х в 5 степени и Х в 13 степени используя пять операций...

Вывести все степени числа 3, не превышающие 1000
1. Вывести все степени числа 3, не привышающие 1000

Какой тип данных может вместить 10 в 1000 степени
В одной задаче на вход поступает 10 в 1000 степени, какой тип данных может вместить или как можно...

16
Автор FAQ
3148 / 368 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
21.09.2009, 16:23 2
Power ()
0
Эксперт С++
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
21.09.2009, 16:31 3
Код
0x10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


Добавлено через 3 минуты
Чтобы не считать нули скажу что их 250 штук.
0
125 / 123 / 0
Регистрация: 30.03.2009
Сообщений: 766
21.09.2009, 16:32 4
ололо! это ж ни в какой размер не полезит!. на самом деле тут и вычислять нечего. если представить массив целых чисел int32 как одно целое число, то 2 в 1000 будет числом, которое получится, если в массив записать все нули, кроме 32го элемента, в который написать 8
0
Эксперт С++
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
21.09.2009, 16:39 5
Не 8, а 256, то есть 2**8.
0
149 / 50 / 3
Регистрация: 21.12.2008
Сообщений: 960
21.09.2009, 16:47 6
a^x = exp( x * ln(a) )

юзай!!!
0
Эксперт С++
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,888
21.09.2009, 16:53 7
cristaloleg, согласен, это хорошая формула, но в данном случае не приемлема. Какого типа должна быть переменная, чтобы в нее можно было записать число-монстр из второго поста.

Автору я посоветую воспользоваться поиском не давиче, как этой весной поднимался подобный вопрос, и окончился он ссылками в википедию. Поиск рулит
0
0 / 0 / 0
Регистрация: 21.09.2009
Сообщений: 7
21.09.2009, 16:53  [ТС] 8
а как сделать вывод?
0
149 / 50 / 3
Регистрация: 21.12.2008
Сообщений: 960
21.09.2009, 20:05 9
Цитата Сообщение от polivets Посмотреть сообщение
согласен, это хорошая формула, но в данном случае не приемлема. Какого типа должна быть переменная, чтобы в нее можно было записать число-монстр из второго поста.
Real...есть другие варианты???
И чем не нравиться эт число??? растолкуй плз


Зы потом можно конвертнуть в динамическую строку....ну эт просто мазохизм, но рабочий!
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
21.09.2009, 20:21 10
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
uses crt;
const base = 2;  {основание}
st = 1000;  {степень}
var
s,tt : string;
c : char;
i,j,k,a,b,len : integer;
begin
clrscr;
s := '2'; {начальная строка}
for i:=1 to st-1 do{от1 до 999}
  begin
   tt := s;{запоминаем строку}
   len := length(tt);{длина запомненной строки 1,2,3..}
   s := '';{сбрасываем строку}
   k := 0;
   for j:=1 to len do
    begin
    a := (ord(tt[j])-48)*base + k; {умножаем столбиком каждый раз новое число}
    b := a mod 10; {последняя цифра}
    k := a div 10; {перенос}
    s := s + chr(b+48);{новая строка без последнего переноса}
    end;
  if k <> 0 then s := s + chr(k+48);{добавляем в конец последний перенос}
  end;
len := length(s); {переворачиваем строку}
for i:=1 to trunc(len/2) do
 begin
  c := s[len-i+1];
  s[len-i+1] := s[i];
  s[i] := c;
 end;
writeln(s);
readln;
end.
1
0 / 0 / 0
Регистрация: 21.09.2009
Сообщений: 7
21.09.2009, 21:06  [ТС] 11
как такой вывод сделать 1.07150861 е+301, да и не на паскале а на делфи
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
21.09.2009, 21:42 12
Пиши нормально вопрос и читай ответы, и не шипи. Тебе же написали Power(). Тебе не понравилось, я думал тебе длинную арифметику нужно.
Delphi
1
2
3
4
5
Uses Math;
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.Text:=FloatToStr(Power(2,1000));
end;
0
0 / 0 / 0
Регистрация: 21.09.2009
Сообщений: 7
21.09.2009, 22:11  [ТС] 13
Спасибо за обьяснения, но мне непонятна процедура вывода. Как именно результат привести к виду 1.07150861 е+301. Буду очень благодарен
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
22.09.2009, 09:15 14
Цитата Сообщение от Puporev Посмотреть сообщение
Edit1.Text:=FloatToStr(Power(2,1000));
Так эта строка и выводит в таком формате, что еще нужно то?
0
0 / 0 / 0
Регистрация: 21.09.2009
Сообщений: 7
22.09.2009, 20:03  [ТС] 15
всё понятно, спасибо
0
0 / 0 / 0
Регистрация: 21.09.2009
Сообщений: 7
23.09.2009, 19:21  [ТС] 16
А как без power и FloatToStr сделать?
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
23.09.2009, 19:35 17
Цитата Сообщение от elijahu Посмотреть сообщение
А как без power и FloatToStr сделать?
Без Power можно сделать, самому написать функцию возведения в степень, а вывести число в текстовое окно вывода без FloatToStr никак.
0
23.09.2009, 19:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.09.2009, 19:35
Помогаю со студенческими работами здесь

Написать программу, которая делит числа в 5 степени на число в 14 степени и выводит ответ в 5 степени. Найти ошибку
Ребят, такая проблема, задание: Написать программу, которая делит числа в 5 степени на число в 14...

Дано целое число N (> 0). Найти сумму 1в N степени + 2 в степени N−1 + … + Nв 1 степени.
Дано целое число N (&gt; 0). Найти сумму 1в N степени + 2 в степени N−1 + … + Nв 1 степени....

Вывести на экран таблицу значений функции f(x)=x в 4 степени+3х в 3 степени +5х во второй степени+7 х=1,2..10
18. Вывести на экран таблицу значений функции f(x)=x в 4 степени+3х в 3 степени +5х во второй...

Доказать, что 7 в степени n умножить на 2 в степени 3k минус 2 в степени 2k кратное 47
Доказать что 7 в степени n умножить на 2 в степени 3k минус 2 в степени 2k кратное 47 Для набора...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru