Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> pascal-gluk 
:(
    Опции темы
anti
Дата 16.10.2003, 00:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 16.10.2003
Где: Ust-Ilimsk

Репутация: нет
Всего: нет



такой вот глюк:

const
a=0; b=-3; c=5; d=c+a*b;

выдает сообшение что-то типа в longint нет такого числа 0*(-3) confused.gif


Это сообщение отредактировал(а) anti - 16.10.2003, 00:40
PM MAIL   Вверх
cot
Дата 16.10.2003, 05:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 69
Регистрация: 4.6.2003

Репутация: нет
Всего: нет



А в разделе констант разве вычисления производятся? Я что-то не в курсе.
PM MAIL   Вверх
Dmitry V.Abramov
Дата 16.10.2003, 06:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 177
Регистрация: 30.9.2003
Где: Saint-Petersburg

Репутация: 5
Всего: 4



Цитата(anti @ 16.10.2003, 00:36)
такой вот глюк:

const
a=0;  b=-3;  c=5;    d=c+a*b;

выдает сообшение что-то типа в longint нет такого числа 0*(-3) confused.gif

Delphi6 (CompilerVersion: 14.01)
Код
{$APPTYPE CONSOLE}
program test;

const
 a=0; b=-3; c=5; d=c+a*b;

begin
 writeln(d);
end.

Компилируется
Цитата
Borland Delphi Version 14.0
Copyright © 1983,2001 Borland Software Corporation
test.dpr(1)
test.dpr(2)
test.dpr(2)
test.dpr(9)
10 lines, 0.03 seconds, 5264 bytes code, 1921 bytes data.

Запускается и сообщает:
Цитата
5


Если ошиблись конференцией и речь о pascal, то, все-равно, указание его происхождения и версии не помешало бы.

А еще полезно бывает указывать тип констант:
Код
const
 a = 0; // он и в африке 0
 b = integer(-3);
 c = integer(5);
 d = integer(c+a*b);

--------------------
/DVA
PM MAIL WWW   Вверх
Dmitry V.Abramov
Дата 16.10.2003, 06:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 177
Регистрация: 30.9.2003
Где: Saint-Petersburg

Репутация: 5
Всего: 4



Цитата(cot @ 16.10.2003, 05:08)
А в разделе констант разве вычисления производятся? Я что-то не в курсе.

Конечно. Например вот так:
Код
const
 idEOF  = Cardinal(0); // EOF
 idPRVW = Cardinal(ord('P') or (ord('R') shl 8) or (ord('V') shl 16) or (ord('W') shl 24)); // Preview
 idMAPC = Cardinal(ord('M') or (ord('A') shl 8) or (ord('P') shl 16) or (ord('C') shl 24)); // MapCells

--------------------
/DVA
PM MAIL WWW   Вверх
Fedor
Дата 16.10.2003, 08:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Днепрянин
****


Профиль
Группа: Участник
Сообщений: 2090
Регистрация: 8.2.2003
Где: Великий

Репутация: нет
Всего: 32



Dmitry V.Abramov
Цитата
Если ошиблись конференцией и речь о pascal

Эта конференция также предназначена и для Pascal
anti
Если честно, то я сомневаюсь в возможности произведения таких операций в разделе констант. Не легче ли записать просто d=5?


--------------------
Мы - Днепряне. Мы всех сильней.
PM ICQ   Вверх
Dmitry V.Abramov
Дата 16.10.2003, 09:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 177
Регистрация: 30.9.2003
Где: Saint-Petersburg

Репутация: 5
Всего: 4



Цитата(Morpheus @ 16.10.2003, 08:38)
Эта конференция также предназначена и для Pascal

Для которого? Object Pascal? Turbo Pascal? TMT Pascal? FreePascal? Pas32? TinyPascal? Pascal ISO? ModulePascal?
Цитата
Если честно, то я сомневаюсь в возможности произведения таких операций в разделе констант.

Напрасно. Не надо сомневаться. Но только в случае Object Pascal и Turbo/Borland Pascal. Все остальные тоже должны поддерживать унарные операции с константами. Но могут засомневаться...
--------------------
/DVA
PM MAIL WWW   Вверх
December
Дата 16.10.2003, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: 8
Всего: 57



Цитата
Object Pascal? Turbo Pascal? TMT Pascal? FreePascal? Pas32? TinyPascal? Pascal ISO? ModulePascal?
и для Borland Pascal тоже.


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
Pakshin A. S.
Дата 16.10.2003, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



Возвращаюсь к вопросу... А на кой чёрт записывать в константу d=c+a*b;, если всё енто можно организовать в переменных.
P. S.
А откуда компилятор берёт тип longint??? в разделе констант, если там типы не прописаны?
PM   Вверх
Pakshin A. S.
Дата 16.10.2003, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



Коряво написал...

* * *
var
d:longint;

(***)

begin
(***)
d:=c+a*b;
(***)
end.


Ведь смысла нет в хранении этой константы! на сколько я понял.
PM   Вверх
Dmitry V.Abramov
Дата 16.10.2003, 22:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 177
Регистрация: 30.9.2003
Где: Saint-Petersburg

Репутация: 5
Всего: 4



Цитата(December @ 16.10.2003, 16:31)
Цитата
Object Pascal? Turbo Pascal? TMT Pascal? FreePascal? Pas32? TinyPascal? Pascal ISO? ModulePascal?
и для Borland Pascal тоже.

Ok.

+BorlandPascal.

Итак, о каком из них мы беседуем? С чьей "ошибкой" разбираемся?
--------------------
/DVA
PM MAIL WWW   Вверх
Fedor
Дата 17.10.2003, 08:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Днепрянин
****


Профиль
Группа: Участник
Сообщений: 2090
Регистрация: 8.2.2003
Где: Великий

Репутация: нет
Всего: 32



anti Ждем твоего слова
Dmitry V.Abramov Согласен с тобой. Мир.


--------------------
Мы - Днепряне. Мы всех сильней.
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0529 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.