![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 374
|
![]()
Добрый. Есть процедура, где мне приходиться счетчик цикла использовать внутри формулы, в которой стоят числа по типу 2,3 * 10 в минус пятнадцатой.
Потому получается ошибка [dcc32 Error] Unit1.pas(56): E2032 For loop control variable must have ordinal type А получиться может число порядка минус двадцатой Ну мне кажется, что такие числа должны быть в extended или int64 или другом вещественном типе? что то я не догоняю. Как перевести счетчик цикла в вещественный тип, что бы его потом можно было использовать внутри формулы? Что бы не было вот этой ошибки: \ [dcc32 Error] Unit1.pas(59): E2010 Incompatible types: 'Integer' and 'Extended' Код:
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
|
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 21.10.2010
Сообщений: 588
|
![]()
Используйте while или repeat
Пользователь не знает, чего он хочет, пока не увидит то, что он получил.
Для благодарностей WMR R145235935681 |
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
![]()
Введите переменную типа extended или int64 и присваивайте ей в цикле значение текущего i - произойдёт неявное преобразование
Или в формуле вместо i напишите (i/1) - при выполнении операции деления также происходит преобразование.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Просто объяви m_transp_step, S и bm_transp_summ как Extended
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 374
|
![]()
вопрос по while.
Если у меня идет цикл не от нуля, а от двух. как это прописать? Вот я первое уже пробовал сделать, че то не пошло, ща еще попробую
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
Последний раз редактировалось Вадим Мошев; 07.07.2017 в 12:44. |
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
Простите, а Вы вообще описание и примеры использования цикла WHILE смотрели? в общем случае это выглядит так: Код:
|
|
![]() |
![]() |
![]() |
#7 | |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 374
|
![]() Цитата:
Код:
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
|
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
![]()
Извиняюсь, я не обратил внимание, что у Вас все переменные целыми объявлены и насоветовал глупость сделать.
![]() Достаточно сделать, как сказал Аватар - объявить их extended. В этом случае независимо от типа переменной i выполнится приведение к результирующему типу - то есть к extended. Поэтому: Код:
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Последний раз редактировалось Sciv; 09.06.2017 в 15:45. |
![]() |
![]() |
![]() |
#9 | |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 374
|
![]()
обьявить экстендет пойдет для того, что бы работа формула. но i тогда не заработает в цикле.
i все равно надо будет переобьявлять. Потому что даже если убрать все для конвертации в другие типы, работать не будет Код:
Цитата:
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
Последний раз редактировалось anaschu; 09.06.2017 в 16:52. |
|
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 374
|
![]() пока что работает вот так: Код:
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Описать функцию LineCount(S) целого типа | santafer | Общие вопросы Delphi | 3 | 19.03.2016 17:39 |
Перевод времени из целого числа в вещественный | Алексей_2012 | Общие вопросы C/C++ | 4 | 03.11.2014 21:13 |
Visual Basic: Описать функцию DigitN (K, N) целого типа, возвращающую N-ю цифру целого положительного числа К | Екатерина23 | Помощь студентам | 1 | 10.12.2013 09:25 |
перевод типа из Delphi в C++ | Karina89 | Помощь студентам | 4 | 09.11.2011 21:13 |
Перевод поля типа Character в тип Integer [Delphi] | Pinkygirl | Помощь студентам | 2 | 22.10.2009 21:54 |