![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Пользователь
Регистрация: 27.09.2008
Сообщений: 64
|
![]()
begin
Хотя посмотрите пожалуйста код, что то через раз правильно вычисляет... то вообще отрицательно значение дает Var b,c,rez,odin,ze,re:int64; reb,a,d,k,be, N :Integer; ...... begin c:=StrToint(edt2.Text); a:=StrToint(edt3.Text); odin:=1; be:=StrToInt(edt4.Text); for k:=1 to be do odin:=odin*c; re:=odin mod a; a и b хранятся соответственно в edt2.Text и в edt4.Text причем опять же небольшие числа правильно рассчитывает, как только возрастает, так неразбериха... Последний раз редактировалось Zibiv; 27.05.2011 в 23:51. |
![]() |
![]() |
![]() |
#12 |
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
![]()
А вот у меня такое предложение, как вычислять остаток.
Если нам требуется вычислить остаток от деления a на b, то алгоритм такой. В цикле каждый раз из a вычитаем b, при этом смотрим, если a (результат) получился меньше, чем b, то это и будет являться остатком. Например, делим 10 на 3 с остатком. Итерация 1. 10-3 = 7. здесь 7>3, идём дальше 2. 7-3 = 4 4>3, идём дальше 3. 4-3 = 1. 1 < 3, остаток равен 1. |
![]() |
![]() |
![]() |
#13 | |
Пользователь
Регистрация: 27.09.2008
Сообщений: 64
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#14 |
Сливочное масло
Участник клуба
Регистрация: 01.01.2011
Сообщений: 1,149
|
![]() Код:
Сливочное масло Valio - компиляция как по маслу
|
![]() |
![]() |
![]() |
#15 |
Пользователь
Регистрация: 27.09.2008
Сообщений: 64
|
![]()
то есть должно быть c:=StrToint64(edt2.Text);
С малыми числа ми дает правельные результаты, но как только результат a^b дает число типа 1,2839933384336071289824798844234e+ 65 то mod берется некорректно |
![]() |
![]() |
![]() |
#16 |
Сливочное масло
Участник клуба
Регистрация: 01.01.2011
Сообщений: 1,149
|
![]()
Кароче надо проверить что все функции будут работать с твоим типом правильно. Вполне возможно что mod не хочет работать с Int64 и надо будет написать свою функцию.
Что вообще за задание с адскими цифрами?
Сливочное масло Valio - компиляция как по маслу
|
![]() |
![]() |
![]() |
#17 |
Пользователь
Регистрация: 27.09.2008
Сообщений: 64
|
![]()
Схема Диффи Хеллмана, генерация ключа))
ну с небольшими значениями все совершенно верно |
![]() |
![]() |
![]() |
#18 |
Пользователь
Регистрация: 27.09.2008
Сообщений: 64
|
![]()
Я уже не знаю что надо делать...
|
![]() |
![]() |
![]() |
#19 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,899
|
![]()
поиск по форуму "длинная арифметика"
|
![]() |
![]() |
![]() |
#20 |
Пользователь
Регистрация: 27.09.2008
Сообщений: 64
|
![]()
Точно!!
Вот смотрите создал массив, для того что бы возводить в степень и получать числа без мантиссы, потому что как я понял mod некорректно вычисляется из-за того что результат возведения в степень округялся... Код:
хммммм в паскале работает вроде корректно работает но нужно в Delphi Последний раз редактировалось Zibiv; 28.05.2011 в 14:58. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
определить остаток от деления чисел | dimon-nicolayev | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 11.04.2011 11:02 |
Остаток от деления | Memfis_nya | Помощь студентам | 23 | 26.09.2010 14:58 |
Нахождение остатка от деления очень больших чисел | Pavel_Ine | Общие вопросы C/C++ | 6 | 22.11.2009 20:49 |
остаток от деления % | Division | Общие вопросы C/C++ | 5 | 25.12.2008 14:08 |