Важная информация
Страница 2 из 3 ПерваяПервая 123 ПоследняяПоследняя
Показано с 11 по 20 из 24

Тема: Numerator

  1. #11  
    Разбирающийся
    Регистрация
    13.10.2013
    Сообщений
    53
    Сказал(а) спасибо
    52
    Поблагодарили 34 раз(а) в 22 сообщениях
    Перед процедуркой, префикс комментария дальше 2-5 пробелов и сам комментарий, это комментарий блока. <...>
    А, спасибо, надеюсь, поможет.
    На FB ООП?
    Ну, есть же...
    Модули это отдельные части программы
    Я имел в виду, они определяются только программистом (т.к. изоляция обеспечивается вручную) или программно?
    Как раз столкнулся с проблемой частичного краша программы: где-то передается не значение, а адрес, а где - непонятно.
    Если Вы оформляете расчет в word-е, Вы время от времени пишете что либо подобное Аx3+Bx2+C=15*8^3+54*8^2+130=, <...> и получаете ответ 11266, который одним нажатием вставляете в word.
    А-а-а... Я-то думал, Вы про байтовый word говорите
    Ответить с цитированием  
     

  2. #12  
    Супер модератор Аватар для >Quiet Snow<
    Регистрация
    11.04.2011
    Адрес
    Планета земля
    Сообщений
    3,822
    Сказал(а) спасибо
    1,808
    Поблагодарили 933 раз(а) в 795 сообщениях
    Записей в блоге
    1
    (т.к. изоляция обеспечивается вручную) или программно?
    Изоляция это вообще вещь воображаемая, можно вручную как делаю я, можно программно(ООП, пространства имён, *.dll)
    Собственно, когда мы начинаем наворачивать код по самую жопу, он на 100% теряет свою портабельность назад на
    старые компили и на 95% вперёд. Впрочем, если уверен что с FB никуда не уйдёшь, то можно накручивать по полной.
    Более того читаемость и сложность кода возрастает. Обычная процедурка имхо просто полезнее, т.к. твой код будет
    полезен очень многим людям + его очень легко будет портировать куда угодно, например на паскаль, даже на ассемблер
    руками(но в FB можно и урвать листинг на ассемблере, в опциях компиляции что-то похимичить, уже забыл, но Стас мне
    подсказывал).

    Вы про байтовый word говорите
    Этих типов не было изначально в бейсике, добавили позже в новых компиляторах. Вообще Byte, Word, Dword, Qword -
    это ассемблерные типы, которые определяют только размерность, но не тип числа(целое/вещественное, знаковое/беззнаковое).
    В бейсике же тип числа - неотъемлемая вещь, поэтому тут надо смотреть в доку, что там сказано по этому поводу.
    Например байтовый целочисл. тип(UBYTE, BYTE) добавили официально. Помним что в QB приходилось это делать через
    задницу, заводить стринг единичной длины и юзать конверсии, либо читать из памяти.

    Ну, есть же...
    Да есть, внесли в последних версиях компилятора. Много кто из FB-шников по словам Стаса это не оценил,
    просто потому что люди делают не то, что нужно(много багов в хедерах). Лично я заметил, что кодеры
    моментально схавали эту фичу и начали писать коды под 4GL. Это хорошо для VB-шников и сущий гемор
    для QB-шников.
    Последний раз редактировалось >Quiet Snow<; 06.06.2014 в 17:36.
    Обучение прикладному программированию(по skype), качественно, недорого, 18+, вопросы в личку.
    «Если вы ничего не сделаете, я уверяю вас, ничего и не произойдёт» © Жак Фреско
    Ограниченно модерирую.
    Ответить с цитированием  
     

  3. Пользователь сказал cпасибо:

    Good.Morning (06.06.2014)

  4. #13  
    Разбирающийся
    Регистрация
    13.10.2013
    Сообщений
    53
    Сказал(а) спасибо
    52
    Поблагодарили 34 раз(а) в 22 сообщениях
    Дописал следующую версию.

    - Добавил подключаемые файлы
    - Перенаправление расчетов (результат можно отправлять на место слагаемого, множителя, делителя и т.д.; и двигать операнды тоже можно... Операнды? Наверно, операнды.)
    - Также обновил визуализацию

    Расчет выражения лишь в процессе, т.к. имитировать нажатие Ctrl получается, а вот "C" - вообще никак, а это - для моей задумки - жизненно важная комбинация клавиш.


    К сожалению, код в пост вставить не могу, т.к. на ~1800 символов превышает норму, поэтому кладу в архив.
    [Ссылки могут видеть только зарегистрированные пользователи. ]

    Аж 513 строк .
    Ответить с цитированием  
     

  5. Пользователь сказал cпасибо:

    >Quiet Snow< (10.06.2014)

  6. #14  
    Супер модератор Аватар для >Quiet Snow<
    Регистрация
    11.04.2011
    Адрес
    Планета земля
    Сообщений
    3,822
    Сказал(а) спасибо
    1,808
    Поблагодарили 933 раз(а) в 795 сообщениях
    Записей в блоге
    1
    Прости Good.Morning, я не допёр как этой штукой пользоваться, но я честно пытался))).
    Без доки - не юзер френдли. Повесь справку на кнопочку F1 для лососей.
    Последний раз редактировалось >Quiet Snow<; 10.06.2014 в 08:37.
    Обучение прикладному программированию(по skype), качественно, недорого, 18+, вопросы в личку.
    «Если вы ничего не сделаете, я уверяю вас, ничего и не произойдёт» © Жак Фреско
    Ограниченно модерирую.
    Ответить с цитированием  
     

  7. Пользователь сказал cпасибо:

    Good.Morning (10.06.2014)

  8. #15  
    Профи Аватар для Dimon012
    Регистрация
    09.02.2011
    Адрес
    Владивосток
    Сообщений
    850
    Сказал(а) спасибо
    29
    Поблагодарили 130 раз(а) в 108 сообщениях
    Записей в блоге
    3
    Да впечатление крутое! Я даже понял как он работает, короче:
    там снизу 4 поля, которые служат для выбора действия.
    Над ними три основных, больших поля (посередине), слева направо, поле первого операнда, поле второго операнда и поле результата.
    Вокруг них и между ними маленькие поля для обозначения передачи значений, этих пока не касаемся.
    Суперкурсором щелкаем по основному первому полю и вводим значение первого операнда, суперкурсором щелкаем по основному второму полю и вводим значение, среди четырех нижних полей выбираем действие и жмем последнее основное поле, в котором и получаем значение.
    Только странно, что значения и операнды находятся в заголовках полей? Вообще то, значения пишут внутри полей, а в заголовках пишут заголовки советую написать: "первый операнд", "второй операнд", "результат"
    Ответить с цитированием  
     

  9. Пользователь сказал cпасибо:

    Good.Morning (10.06.2014)

  10. #16  
    Профи Аватар для Dimon012
    Регистрация
    09.02.2011
    Адрес
    Владивосток
    Сообщений
    850
    Сказал(а) спасибо
    29
    Поблагодарили 130 раз(а) в 108 сообщениях
    Записей в блоге
    3
    Во! решил картинку добавить с расчетом 500/24[Ссылки могут видеть только зарегистрированные пользователи. ]
    Ответить с цитированием  
     

  11. Пользователь сказал cпасибо:

    Good.Morning (10.06.2014)

  12. #17  
    Разбирающийся
    Регистрация
    13.10.2013
    Сообщений
    53
    Сказал(а) спасибо
    52
    Поблагодарили 34 раз(а) в 22 сообщениях
    Повесь справку на кнопочку F1 для лососей.
    Хорошо

    с расчетом 500/24
    Да, согласен, выглядит не очень круто: на 500/24 выдавать результат 500/24, но там есть триггер наверху "lite/full" - лайт не сокращает дроби, а фулл - сокращает.

    Только странно, что значения и операнды находятся в заголовках полей?
    Моя виртуальная система крайне проста, поэтому существуют лишь "кнопки" и их "содержимое" ("триггеры" - по-особенному настроенная кнопки, "коммутаторы" - настроенные группы триггеров). Изначально их содержимое находилось внутри, но потом я решил строку перенести на линию кнопки, думал, выглядит лучше.

    Вообще то, значения пишут внутри полей, а в заголовках пишут заголовки советую написать
    Попробую добавить заголовки
    Ответить с цитированием  
     

  13. #18  
    Супер модератор Аватар для >Quiet Snow<
    Регистрация
    11.04.2011
    Адрес
    Планета земля
    Сообщений
    3,822
    Сказал(а) спасибо
    1,808
    Поблагодарили 933 раз(а) в 795 сообщениях
    Записей в блоге
    1
    Dimon012, спасибо за пояснение, разобрался.
    Good.Morning, твой интерфейс можно существенно упростить, триггеры тут не нужны. К примеру ввод можно сделать
    проще, после клика, давать фокус полю куда записывается число, и просто вводить через INKEY$ туда по нажатию
    кнопок числовые символы(эмулируем текстовое поле ввода). После клика по операции можно выполнять её сразу.
    Кнопки переноса значений сделать независимыми от выполнения операции. А самое главное будет реакция всего
    этого сразу после клика, справка уже будет в принципе не нужна. И да значения внутри полей конечно же, я просто
    думал мол это отладочный вариант и не подгонялись координаты.
    Последний раз редактировалось >Quiet Snow<; 10.06.2014 в 21:36.
    Обучение прикладному программированию(по skype), качественно, недорого, 18+, вопросы в личку.
    «Если вы ничего не сделаете, я уверяю вас, ничего и не произойдёт» © Жак Фреско
    Ограниченно модерирую.
    Ответить с цитированием  
     

  14. Пользователь сказал cпасибо:

    Good.Morning (10.06.2014)

  15. #19  
    Супер модератор Аватар для Kakos_nonos
    Регистрация
    07.01.2011
    Адрес
    Кубань
    Сообщений
    1,531
    Сказал(а) спасибо
    126
    Поблагодарили 428 раз(а) в 291 сообщениях
    Записей в блоге
    6
    Я тоже заинтерисовался как-то вычислением обыкновенных дробей и написал библиотеку для такого счёта для яп СТЕПЛЕР. Но она осталась немного недописанной, хотя было реализовано сложение,вычитание, умножение, деление, сокращение.
    [Ссылки могут видеть только зарегистрированные пользователи. ]
    Ответить с цитированием  
     

  16. Пользователь сказал cпасибо:

    Good.Morning (10.06.2014)

  17. #20  
    Разбирающийся
    Регистрация
    13.10.2013
    Сообщений
    53
    Сказал(а) спасибо
    52
    Поблагодарили 34 раз(а) в 22 сообщениях
    и просто вводить через INKEY$ туда по нажатию кнопок числовые символы
    Сначала я хотел подобное сделать, но столкнулся с тем, что оператор INPUT, ровно как и PRINT не умеют работать с заданными пиксельными координатами (еще
    хорошо, что я про Draw String узнал - хотел же инициализировать все надписи как картинки, всем присвоить хэндлы, номера и рисовать их как картинки...). Из-за
    этого я начал пользоваться INPUT на определенных символьных координатах. Можно, конечно, сделать как предложили Вы, используя Draw String, но не думаю,
    что это будет просто - просто как подумаю, чего только там не нужно предусмотреть, писать код сразу отпадает охота. Хотя можно попробовать.

    После клика по операции можно выполнять её сразу.
    От этого я отказался в пользу возможности подготовки всех параметров перед вычислением - некоторые операции (в особенности с очень большими числами)
    занимают много времени.

    Кнопки переноса значений сделать независимыми от выполнения операции.
    С трудом представляю, как это будет работать.

    И да значения внутри полей конечно же
    Ну, это поправимо Исправлю в последующей версии.
    Ответить с цитированием  
     

Страница 2 из 3 ПерваяПервая 123 ПоследняяПоследняя
Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •