Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.15;
Скачать: CL | DM;

Вниз

DivMod   Найти похожие ветки 

 
valua   (2007-03-23 15:38) [0]

Господа , прошу прощения за элементарный вопрос , но ...
Функция DivMod(Div:Integer,Del:Word,var:Result,Remainder:Word)

var Del,Remainder:Words;
    Result,Div:Integer;
   .....


определяю переменные в соответствии с типами функции.

пишу ->
  DivMod(X,Del,Result,Remainder)

выдает ошибку на Remainder.
Господа как правильно описать типы , что не так .
Всем спасибо .


 
Elen ©   (2007-03-23 15:53) [1]


> Функция DivMod(Div:Integer,Del:Word,var:Result,Remainder:Word)
>
> var Del,Remainder:Words;

Разницу видишь?


 
valua   (2007-03-23 16:21) [2]

Спасибо , сегодня явно не мой день , но теперь другая ошибка (надо
сделать) :
var  X:Real;
     ix1:Integer;
     Remainder:Word;
     Resullt:Integer;

begin
   str := FloatToStr(int(X));
   ix1 := StrToInt(str);
   DivMod(ix1,1000000,Result,Remainder);

выдает ошибку  на Result ->
constant expression violates subrange bounds


 
Сергей М. ©   (2007-03-23 16:29) [3]

Удалено модератором


 
Loginov Dmitry ©   (2007-03-23 16:30) [4]

См [1]


 
Elen ©   (2007-03-23 16:37) [5]


>  Resullt:Integer;

Вместо этого пиши Result:Word!


 
Правильный Вася   (2007-03-23 17:21) [6]

> Del:Word,
> 1000000
не сходицца


 
valua   (2007-03-23 17:43) [7]

Если пишу   Result:Word!  , дает ошибку ->
    Identifier redeclaried : "result" .

Если пишу   d := 1000000; (d:Word;) - дает еще и ошибку на эту строку ,

кто знает как правильно определить типы , и как правильно записать (мне надо делить на 1000000 , 10000 и т.д.) .
Всем спасибо .

var  X:Real;
    str:String;
    ix1:Integer;
    Remainder:Word;
    Resullt:Word;

begin
  str := FloatToStr(int(X));
  ix1 := StrToInt(str);
  DivMod(ix1,1000000,Result,Remainder);

Попробуйте на практике , все написано как в справочнике .
Если убираю  Resullt:Word;    -  дает ошибку .


 
Desdechado ©   (2007-03-23 17:48) [8]

Почитай хоть про типы данных, что ли.
Не каждой число подойдет для запихивания в любой тип данных.


 
RASkov   (2007-03-23 17:54) [9]

> Если пишу   Result:Word!  , дает ошибку ->
>    Identifier redeclaried : "result" .

В каждой функции переменная Result обявлена неявно, и в нее записывается результат функции.


 
valua   (2007-03-26 10:51) [10]

Господа , прошу прощения за свой вопрос . Пятница - действительно не мой день .
Ошибка в том , что  
      DivMod(ix1, Div, Result, Remainder);
  Div -  выходит за границы предела значения типа Word - 65500 .
Вот и весь глюк .
Если число Div > 65500 , надо писать свою функцию .



Страницы: 1 вся ветка

Текущий архив: 2007.04.15;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.064 c
15-1174384301
Сало
2007-03-20 12:51
2007.04.15
Шева вернулся


15-1174384087
Konst5719
2007-03-20 12:48
2007.04.15
Компонент TListBox


15-1174221002
IMHO
2007-03-18 15:30
2007.04.15
Установка Turbo Delphi


2-1174989039
Леонид
2007-03-27 13:50
2007.04.15
Короткий путь DOS


15-1174216878
ProgRAMmer Dimonych
2007-03-18 14:21
2007.04.15
Прибежали в избу дети, Второпях зовут отца...