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

Вниз

Калькулятор   Найти похожие ветки 

 
Gero ©   (2004-07-28 13:49) [280]

Обсуждение электронных книг переходит в http://delphimaster.net/view/14-1091007987/ .


 
Anatoly Podgoretsky ©   (2004-07-28 13:54) [281]

Плохо будет соотносится, но в то же время реальность.
Вторую книгу очень хочется, был у меня Мартин, но куда то пропал.


 
VMcL ©   (2004-07-28 14:15) [282]

>>Юрий Зотов ©  (28.07.04 13:46) [279]

Точно не скажу, но, ИМХО, если распространять не в коммерческих целях, то это не настолько плохо, как в коммерческих :-D


 
Григорьев Антон ©   (2004-07-28 14:48) [283]


> Юрий Зотов ©   (28.07.04 13:46) [279]
> Я тоже "за", но как это будет соотноситься с авторским правом
> и копирайтами? Спрашиваю, потому что сам в этих делах не
> спец.


Как ты ловко перевёл тему, лишь бы на [246] не отвечать ;-)


 
Юрий Зотов ©   (2004-07-28 15:11) [284]

> Григорьев Антон

Я просто проглядел.

Нет таких критериев, естественно. Все определяется разработчиками. Решили они, что именно такой набор операций удобен и достаточен - и все. Решили, что операции вообще не нужны - и тоже все. Решили еще как-то - и тоже все.

Кстати, раз уж пошел разговор о языках, то вот какая мысль пришла в голову. В языках, где оконечный символ есть обязательная принадлежность самого оператора (Си, PL/1...), а условный оператор определен, как
if <условие> then <оператор> [else <оператор>]
наблюдается такое противоречие.

Этот самый if должен:
- либо сам НЕ быть оператором;
- либо завершаться, как минимум, двумя оконечными символами.

Если же он завершает ОДНИМ оконечными символом (что на деле и есть), то получается, что он противоречит формальному описанию языка.


 
Сергей Суровцев ©   (2004-07-28 15:26) [285]

>Думкин ©   (28.07.04 13:31) [276]
>Можешь мне еще про Букварь лекции почитать.
Ну раз ты просишь... Букварь, дорогой Думкин, это такая
книжка, в которой в увлекательной форме разбирается
алфавит, соответствие звуков буквам, производится обучение
чтению...

Это, кажется, с lib.ru просто интереса ради.
К.Комаров. Путь изобретателя

Кое что есть здесь:
http://monsite.wanadoo.fr/perpetuum/page1.html

и здесь:
http://jnaudin.free.fr/html/permotr.htm

Но если что, грубо не ругаться! Первое что под руку подвернулось.
Было еще несколько, если найду, выложу.

И еще, если не ошибаюсь:
Из работающих, чисто на магнитах, моторов известен мотор Джонсона.
Реальный и обоснованный. Он работает, но мощности не создаёт.
При весе 25кг останавливается рукой. Но работать-то все равно
работает. (ссылку пока не нашел, сплошные лодочные моторы
предлагают :)) ).


 
Cobalt ©   (2004-07-28 15:36) [286]

http://skyzone.al.ru/tech/4151431.html


 
Григорьев Антон ©   (2004-07-28 15:43) [287]


> http://monsite.wanadoo.fr/perpetuum/page1.html


Про эту ссылку могу сказать, что автор этого "мотора" несколько месяцев назад появлялся в конференции сайта www.skeptik.net и показал себя там абсолютным дилетантом. Убеждал всех, что двигатель был и работал, но из-за безденежья он его разобрал. А вообще, если зайти на станицу http://monsite.wanadoo.fr/perpetuum/page7.html где описание этого двигателя дано по-русски, убогость текста просто поражает. Особенно замечательна фраза "Этот двигатель (02 00723) не проверен и не расчитан, но я думаю что он должен работать...".

Короче, хватит фигнёй страдать и всякую ерунду постить. Те, кто действительно перевернул науку (Эйнштейн, Бор и т.п.), прекрасно разбирались в том, что было сделано до них. Не было в истории науки ни одного дилетанта, который ничего не знал, но сделал бы то, что считалось невозможным.


 
DiamondShark ©   (2004-07-28 15:49) [288]


> Он работает, но мощности не создаёт.

LOL


 
Григорьев Антон ©   (2004-07-28 15:50) [289]


> Cobalt ©   (28.07.04 15:36) [286]


Чушь. Не написано, откуда берётся энергия. А между тем, такой вопрос возникает. Либо надо указать источник, либо признать, что факт работы двигателя противоречит известным законам. А делать вид, что такой проблемы вообще не существует - типичный приём шарлатанов.


 
Anatoly Podgoretsky ©   (2004-07-28 15:51) [290]

Юрий Зотов ©   (28.07.04 15:11) [284]
Поэтому предпочитаю языки где

if <условие> then <блок> [else <блок>] end[if]

А пользоваться призодится, чем есть.


 
Григорьев Антон ©   (2004-07-28 16:04) [291]


> Cobalt ©   (28.07.04 15:36) [286]


Читаю сейчас статью http://skyzone.al.ru/tech/freenrg2.html (приведённая вами ссылка является частью этой статьи). Вот несколько утверждений оттуда:

В 1934 году был продемонстрирован автомобиль конструкции Теслы, который не нуждался во внешних источниках знергии.
В 1921 году Хаббард продемонстировал лодочный мотор, также работающий сам по себе.

И за 80 лет эти вещи не попали в промышленность?!!! Почему? Мы ведь становимся свидетелями, как новые технологии и изобретения, дающие реальный эффект, в считанные годы внедряются и становятся привычными. Ответ может быть только один: эти изобретения до сих пор не внедрены потому, что всё это сказки для дилетантов.


 
DiamondShark ©   (2004-07-28 16:08) [292]


> Ответ может быть только один: эти изобретения до сих пор
> не внедрены потому, что всё это сказки для дилетантов.

Нифига. Это заговор нефтяных монополий.


 
Юрий Зотов ©   (2004-07-28 16:10) [293]

> GrayFace [239, 240]

Результат 20-секундного тестирования последнего варианта калькулятора:

Выражение: -5e-2^2
Результат: Invalid floating point operation at offset 7

Скажите честно - Вам самому еще не смешно?


 
Григорьев Антон ©   (2004-07-28 16:17) [294]


> DiamondShark ©   (28.07.04 16:08) [292]
>
> Нифига. Это заговор нефтяных монополий.


Это тоже сказки. Когда изобрели ДВС, угольные монополии не смогли ничего с ним сделать. И газовые монополии тоже не могли предотвратить замену газового освещения электрическим.


 
Anatoly Podgoretsky ©   (2004-07-28 16:24) [295]

Юрий Зотов ©   (28.07.04 16:10) [293]
Если приколами занимается, то на верно по полу от смеха катается, сколько народу развел.


 
Рамиль ©   (2004-07-28 16:31) [296]


> Реальный и обоснованный. Он работает, но мощности не создаёт.  

Это не то что LOL, это LMD!
Может насчет вечных двигателей ветку отдельную?. А то неудобно как то - не сочетаются с грамматиками и калькуляторами:)


 
Anatoly Podgoretsky ©   (2004-07-28 16:36) [297]

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


 
GrayFace ©   (2004-07-29 08:08) [298]

Вот новая версия калькулятора: www.grayface.chat.ru/Calk.zip

Спецификация:
<Empty>       ::=
<Sign>        ::="+"|"-"
<Digit>       ::="0"|"1"|"2"|"3"|"4"|"5"|"6"|"7"|"8"|"9"
<Operation1>  ::="*"|"/"|<Empty>
<Operation2>  ::="+"|"-"
<FunctionName>::="sin"|"cos"|"tg"|"ctg"|"arcsin"|"arccos"|"arctg"|"arcctg"
<exponent>    ::="e"|"Е"
<Separator>   ::="."|<DecimalSeparator>
<Number>      ::=[{Digit}][Separator][{Digit}][<Exponent>[Sign]{Gigit}]
<function>    ::=<FunctionName><atom>
<atom>        ::=<number> | "pi" | <function> | "("<expression>")" | "|"<expression>"|"
<operand>     ::=[{Digit}]<atom>
<factor>      ::=<operand> | <factor> "^" <operand>
<term>        ::=<factor>|<term><Operation1><factor>
<expression>  ::=<term>|<expression><Operation2><term>

[]-может не быть {}-может быть много

Юрий Зотов ©   (28.07.04 11:12) [243]
>5E - это число, или синтаксическая ошибка?
Это Syntax Error ta offset 0
>А знаете, почему так вышло? Потому что изначально программа, естественно, писалась под обычный
>входной язык, но этого не получилось. Надо было как-то выходить из положения - и тогда в
>ход пошли те самые оговорки про "особые случаи". А их просто не должно быть, понимаете?
>Не должно быть никаких особых случаев, да и все тут. Программа должна иметь абсолютно понятный
>пользователю входной язык и однозначно его обрабатывать. Вот это и называется НОРМАЛЬНЫМ калькулятором.
Нет. Она писалась сразу под такой входной язык. В новой версии есть константа EmptyMul - отключите ее и все будет четко. Вы чуть-чуть правы, т.к. если бы я требовал заключения аргументов функций в скобки, мне бы пришлось чуть-чуть по-больше повозится с этим.

Юрий Зотов ©   (28.07.04 16:10) [293]
>Выражение: -5e-2^2
>Результат: Invalid floating point operation at offset 7
Я криво делал возведение в степень.

Cobalt ©   (28.07.04 10:57) [236]
Вы смотрике калькулятор Огромного Кулясищща.

Calm ©   (28.07.04 11:05) [238]
>>>Хотя я не прав: если сделать конечный автомат, разбирающий спецификацию, то он будет гораздо универсальнее.
>Колькуляторописатели сдают свои позиции :((
Ни за что! Это в мои позиции не входит. У меня есть только одна позиция: калькулятор без теории сделать не очень сложно. Тем более см. Anatoly Podgoretsky [241].


 
Думкин ©   (2004-07-29 08:21) [299]

> [298] GrayFace ©   (29.07.04 08:08)
<Number>      ::=[{Digit}][Separator][{Digit}][<Exponent>[Sign]{Gigit}]

Я так понимаю, что пустое выражение может быть числом?


 
Ertong ©   (2004-07-29 08:48) [300]

> <term>        ::=<factor>|<term><Operation1><factor>
> <expression>  ::=<term>|<expression><Operation2><term>


Имхо лучше будет

<term>        ::=<factor>{<Operation1><factor>}
<expression>  ::=<term>{<Operation2><term>}


 
GrayFace ©   (2004-07-29 09:46) [301]

Думкин ©   (29.07.04 08:21) [299]
:( А как же это правильно задать?
Ertong ©   (29.07.04 08:48) [300]
ИМХО, тоже.


 
Ertong ©   (2004-07-29 10:03) [302]

Может не идеально, но поидее нормально

<PositiveInteger> ::=<Digit>{<Digit>}
<Number>  ::=[<Sign>]<PositiveInteger>[<Separator><PositiveInteger>][<Exponent>[Sign]<PositiveInteger>]


 
Anatoly Podgoretsky ©   (2004-07-29 10:11) [303]

То есть не разрешаешь такую форму, как E2


 
Ertong ©   (2004-07-29 10:15) [304]


> То есть не разрешаешь такую форму, как E2

Всмысле? Паскалть тоже не разрешает.
Я немогу написать Writeln(e2),  а Writeln(4e2) без проблем!


 
Ertong ©   (2004-07-29 10:35) [305]

<operand>     ::=<atom>
:)


 
Ertong ©   (2004-07-29 10:58) [306]

<factor>      ::=<operand> | <factor> "^" <operand>
И как ты собираешся написать функцию factor?
99% что ты зациклишся или изменишь  синтаксис.
1% что я ошибаюсь :-)

Если 3^2^2=3^4, тогда можно
 <factor>      ::=<operand> | <operand> "^" <factor>

А если 3^2^2=9^2, то
 <factor>      ::=<operand> {"^" <operand>}


 
Anatoly Podgoretsky ©   (2004-07-29 10:59) [307]

Ertong ©   (29.07.04 10:15) [304]
Это не важно, можно разрешать а можно нет, но тогда для единства стиля не разрешать незначищий нуль и для реальных чисел.


 
Anatoly Podgoretsky ©   (2004-07-29 11:08) [308]

Ertong ©   (29.07.04 10:15) [304]
Это ограничение многих языков, поскольку e2 не отличается от метки, требуется префикс, для паскаля $, для ассемблера 0 и суффикс основания системы исчисления.


 
Ertong ©   (2004-07-29 11:18) [309]


>  [307] Anatoly Podgoretsky ©   (29.07.04 10:59)

Я не хочу с вами спорить не очем.

Если хотите писать е2, тогда можно так :
<Number>  ::=[<Sign>]<PositiveInteger>[<Separator><PositiveInteger>][<Exponent>[Sign]<PositiveInteger>] | <Exponent>[Sign]<PositiveInteger>

Но чесно говоря я опираюсь, на синтаксис паскаля.

P.S. Может кто знает, где можно взять синтаксис паскаля в таком виде записи. Я слышал, что в какой-то книге по интерпретаторам был, но не помню в какой.


 
Думкин ©   (2004-07-29 11:21) [310]

> [302] Ertong ©   (29.07.04 10:03)
> [303] Anatoly Podgoretsky ©   (29.07.04 10:11)
> То есть не разрешаешь такую форму, как E2

Речь видимо, не только о [302], но и о [298] - там такое допускалось.


 
Ertong ©   (2004-07-29 11:22) [311]

Пишу
Writeln($e2);

Вывод
226

???


 
Ertong ©   (2004-07-29 11:23) [312]

Пишу
Writeln($e2);

Вывод
226

???


 
Romkin ©   (2004-07-29 11:24) [313]

Ertong ©  (29.07.04 11:18) [309]
Delphi Help -> Object Pascal Reference -> Object Pascal Grammar


 
Anatoly Podgoretsky ©   (2004-07-29 11:28) [314]

Ertong ©   (29.07.04 11:18) [309]
Речь просто про то разрешаешь опускать незначищий ноль или нет, если не разрешаешь, то к всем числам относишь или это относится только к экспоненте, то есть разрешено писать так E2 и только так 0Е3
Потому что все равно и в этой форме опущено основание 10, 3Е2 означает 3*10^2


 
Anatoly Podgoretsky ©   (2004-07-29 11:29) [315]

А ,01 -> 0.01


 
Ertong ©   (2004-07-29 11:31) [316]


> Речь видимо, не только о [302], но и о [298] - там такое
> допускалось.

Но там допускалось, что <Number>=nil :)


 
Ertong ©   (2004-07-29 11:42) [317]


> А ,01 -> 0.01


<Number>  ::=[<Sign>]<PositiveInteger>[<Separator><PositiveInteger>][<Exponent>[Sign]<PositiveInteger>] | <Exponent>[Sign]<PositiveInteger> |
[<Sign>]<Separator><PositiveInteger>[<Exponent>[Sign]<PositiveInteger>]

Нормально?


 
Nous Mellon ©   (2004-07-29 11:46) [318]


> Пишу
> Writeln($e2);
>
> Вывод
> 226
>
> ???

А что непонятного? С 16ричной системой счисления знаком?


 
Григорьев Антон ©   (2004-07-29 11:53) [319]

Может, вообще не стоит так заморачиваться на формат представления чисел? Есть функция Val. Пусть числом называется то, что она сочтёт числом.

А вообще, спор можно считать законченным. Та спецификация, которую привёл GrayFace в [298], говорит о знакомстве с основами теории. Следовательно, любой калькулятор, который будет реализовывать эту спецификацию, уже не будет сделан без теории :))


 
Anatoly Podgoretsky ©   (2004-07-29 11:56) [320]

Кстати стандартный калькулятор Виндоус работает в двух резимах, обычном (последовательном) и инженерном, инженерный является полустрочным и понимает скобки. Результаты вычисления 2+4/4 будут разные в этих режимах 1,5 и 3



Страницы: 1 2 3 4 5 6 7 8 9 
10 11 12 13 14 15 16 17 18 
19 вся ветка

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

Наверх




Память: 1.09 MB
Время: 0.152 c
14-1097865611
Knight
2004-10-15 22:40
2004.11.07
Рожать или не рожать... вот в чём сабж


1-1098474867
GanibalLector
2004-10-22 23:54
2004.11.07
странности...


3-1097063564
Aser
2004-10-06 15:52
2004.11.07
Как присвоить переменной значение полученного Query?


14-1097765421
Шишкин Илья
2004-10-14 18:50
2004.11.07
Петля Нестерова


1-1098777268
BaDeVlad
2004-10-26 11:54
2004.11.07
Как обрезать WMF?