Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Совместные проекты

Страница: 1 | 2 | 3 |

 

  Вопрос: Знакомься: Justbasic Добавлено: 06.03.08 23:27  

Автор вопроса:  rulevigor | Web-сайт: www.rulev-igor.narod.ru

Ответить

  Ответы Всего ответов: 31  

Номер ответа: 16
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6596
 Профиль | | #16 Добавлено: 09.03.08 16:04
rulevigor, я не понимаю твой исходник, и поэтому не уверен что тобою найдены все 66948 варианта расклада.

По теме - можешь сливать, твой код, который ИНТЕРПРЕТИРУЕТСЯ, насколько бы оптимально он не был написан, не сможет обогнать компилируемый VC++. Можешь даже не пытаться.

Ответить

Номер ответа: 17
Автор ответа:
 rulevigor



Вопросов: 1
Ответов: 11
 Web-сайт: www.rulev-igor.narod.ru
 Профиль | | #17
Добавлено: 09.03.08 20:25
Интерпретаторы уже 20 лет как снабжены компиляторами, втч все бейсики.

Ответить

Номер ответа: 18
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6596
 Профиль | | #18 Добавлено: 09.03.08 20:29
Ладно что тут обсуждать, пиши код который будет выводить только нужное число и сравним скорость.

Я могу провести сравнение, если предоставишь код на VB 8.0/9.0

Ответить

Номер ответа: 19
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #19
Добавлено: 09.03.08 23:34
И чего здесь можно сравнивать быстродействие? Скорости ввода-вывода? Напиши исходник для расчета только количества вариантов и отошли его Бранду.

Буду очень рад, если ты подкинешь мне ссылку на компилятор Ruby, по твоим словам, существующий уже 20 лет. Виртуальные машины и сшивание интерпретатора с кодом в EXE не считаются.

Ответить

Номер ответа: 20
Автор ответа:
 rulevigor



Вопросов: 1
Ответов: 11
 Web-сайт: www.rulev-igor.narod.ru
 Профиль | | #20
Добавлено: 10.03.08 10:17
1. Вот короткий текст идет на Qb40-Basic (скачать можно на http://www.qbasic.com/) :

DECLARE SUB NullSumma (i%)
DECLARE SUB Analiz (i%)
DECLARE SUB Vybor (i%)
DECLARE SUB Dobavka (i%, t%)
DIM SHARED A%(7, 1)
COMMON SHARED Sum%

CLS
DATA 1,2,3,5,10,15,20,50
FOR k = 0 TO 7 : READ A%(k, 0): NEXT
WHILE f% = 0
IF A%(0, 1) = 100 THEN f% = 1
CALL Analiz(i%)
CALL NullSumma(i%)
FOR k = 1 TO 100
   A%(i%, 1) = k
   CALL Dobavka(i%, t%)
   IF t% = 1 THEN j = j + 1
   IF t% > 0 THEN k = 100
NEXT
IF A%(0, 1) = 100 THEN f% = 1
WEND
PRINT "In total it is found variants: . . . . . . . . "; j
stop
END

SUB Analiz (i%)
  A%(0, 1) = 0: i% = 7
   FOR k = 0 TO 7
        IF A%(k, 1) > 0 THEN A%(k, 1) = A%(k, 1) - 1: i% = k - 1: k = 7
   NEXT
END SUB

SUB Dobavka (i%, t%)
t% = 0: Sum% = Sum% + A%(i%, 0)
IF Sum% > 100 THEN Sum% = Sum% - A%(i%, 0): t% = 2
IF Sum% = 100 THEN t% = 1
END SUB

SUB NullSumma (i%)
Sum% = 0
FOR k = 0 TO 7
Sum% = Sum% + A%(k, 1) * A%(k, 0)
NEXT
END SUB

2. Скоппилированный exe-файл весит 23.5 Кb
Так что это нормально скомпилированный код, а не «Виртуальные машины и сшивание интерпретатора с кодом в EXE не считаются.»

3. Насчет «20 лет» я погорячился.
4. "Sharp Номер ответа: 14"
Хотелось бы все-таки знать, решена ли задача в том тексте.

Ответить

Номер ответа: 21
Автор ответа:
 rulevigor



Вопросов: 1
Ответов: 11
 Web-сайт: www.rulev-igor.narod.ru
 Профиль | | #21
Добавлено: 10.03.08 10:49
exe-файл на Ваш E-mail отправил.

Ответить

Номер ответа: 22
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #22
Добавлено: 10.03.08 15:09
Забенчмаркили. Тестовые платформы:
Sharp - Visual C++ 2005, release, static linking; FreeBasic 0.18.3; Celeron M 1.73; Windows XP SP2
Brand - Visual C++ 2008, release, static linking; FreeBasic 0.18.3; Core 2 Duo E6750 2.7GHz; Windows Server 2008 x64

FreeBasic это самый быстрый из известных компиляторов Basic, в частности, его оптимизатор настолько суров, что без существенного изменения кода не удалось даже заставить оптимизатор не выкидывать "пустые" итерации цикла. VC++ 2008 генерирует код на несколько процентов медленнее, чем VC++ 2005.

      Sharp   Brand
C++    0.033  0.023
Basic 22     14

Разница в быстродействии в 600 раз в мою пользу.

Резюме исследования: слив защитан.

Ответить

Номер ответа: 23
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #23
Добавлено: 10.03.08 15:09
Указано время одной итерации в миллисекундах

Ответить

Номер ответа: 24
Автор ответа:
 rulevigor



Вопросов: 1
Ответов: 11
 Web-сайт: www.rulev-igor.narod.ru
 Профиль | | #24
Добавлено: 10.03.08 17:52
Я решил оговоренную задачу, выдал исходник и переслал Вам исполняемый exe- модуль.
Вы не решили задачи, нет исходного текста и нет исполняемого модуля. Сравнение быстродействия прохождения таких модулей показало бы качество алгоритма и качество компиляции.
Вместо этого Вы мне приводите результаты абстрактных тестов C++ и FreeBasic и провозглашаете победу. Не пойму логики, извините.

Ответить

Номер ответа: 25
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6596
 Профиль | | #25 Добавлено: 10.03.08 18:42
Я решил оговоренную задачу, выдал исходник и переслал Вам исполняемый exe- модуль.

1) Я лично никаких исполняемых модулей не получал
2) Sharp, насколько я понял, получил от тебя письмо, но вложенный exe-файл был заблокирован почтовым сервером
3) Я уже говорил и могу повториться - exe-файл никто запускать не будет как минимум потому что помимо кода, считающего монеты, там может содержаться код, ворующий пароли от кошельков, форматирующий диски и т.п.

При проведении тестов использовался лично твой исходник, который ты предоставил в сообщении #20 и исходник который Sharp предоставил в сообщении #14. Каке компиляторы использовались при сборке указано, на каких компьютерах и в каких ОС запускался код тоже указано, то есть ты можешь полностью воспроизвести эксперимент на совем компьютере, если, конечно, тебя интерисует истина.

Предложенный тобою компилятор QB 4.0 на предложенном тобою сайте я не нашел поэтому скачал QB 4.5.
Во-первых, он не запускается в Windows 2008 x64, во-вторых, программа которую он собирает, тоже не запускается в Windows 2008 x64, я запускал их под DOS BOX и результаты очень плачевны - порядка 6 секунд на один проход, поэтмоу и пришлось использовать альтернативный компилятор Free Basic, который создает exe-файл, запускающийся под современной ОС.

Для меня это выглядит как минимум странно, что ты решил использовать для соревнования настолько древний компилятор QB.

Вы не решили задачи, нет исходного текста и нет исполняемого модуля.

Задаче РЕШЕНА (или докажи что ее решение неверно), исходный код ПРЕДОСТАВЛЕН, исполняемый модуль ты можешь получить без проблем, какое ПО для этого использовать - указано.
Исполняемый модуль не вижу смысла отдельно предоставлять хотя бы потому что программу следует оптимизировать под процессор на котором она будет выполняться, и это можно сделать только на целевой машине.

Сравнение быстродействия прохождения таких модулей показало бы качество алгоритма и качество компиляции.

Сравнение быстродействия двух программ было проведено, и показало подавляющее преимущество варианта, написанного на VC++.

Вместо этого Вы мне приводите результаты абстрактных тестов C++ и FreeBasic и провозглашаете победу. Не пойму логики, извините.

О какой логике может идти речь? :)
Ты решил провести соревнования, используя инструмент двадцатилетней давности, против инструмента который постоянно обновляется и совершенствуется (к слову последняя версия VC++ вышла буквально месяц назад)

Для меня результат тестов был известен еще до того как ты кинул сюда свой кусок кода.

Ты же, вместо того чтоб признать свое поражение, начинаешь сливать какие-то бредовые левые отмазки.

Ответить

Номер ответа: 26
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6596
 Профиль | | #26 Добавлено: 10.03.08 18:51
Я ни в коем случае не гноблю BASIC, я сам на нем написал уже наверное больше нескольких сотен тысяч строк кода.

Но я не понимаю - зачем использовать древние реализации???

После QB был VB 3.0, VB 4.0, VB 5.0, VB 6.0, VB 2002, VB 2005, VB 2008 (который я сейчас и использую 0 фантастическая штука) - и это только реализации от Microsoft, не считая альтернативные реализации типа того же FreeBasic и Power Basic.

Ответить

Номер ответа: 27
Автор ответа:
 rulevigor



Вопросов: 1
Ответов: 11
 Web-сайт: www.rulev-igor.narod.ru
 Профиль | | #27
Добавлено: 10.03.08 19:31
сообщении #14 не решает задачи, в этом убедился мой друг.

Ответить

Номер ответа: 28
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6596
 Профиль | | #28 Добавлено: 10.03.08 19:42
Unix не охватывает и 1% возможностей Singularity. В это убедился мой друг.

Не думаю что здесь мнение твоего друга является авторитетным поэтому хотелось бы увидеть более реальную аргументацию.

Ответить

Номер ответа: 29
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6596
 Профиль | | #29 Добавлено: 10.03.08 19:46
Если ты потрудишься собрать и запустить предложенный код, то убедишься что он выводит в консоль 66498, ровно столько же сколько и твой код, и такой же ответ указан у тебя на сайте, поэтому не нужно обманывать людей.

Ответить

Номер ответа: 30
Автор ответа:
 rulevigor



Вопросов: 1
Ответов: 11
 Web-сайт: www.rulev-igor.narod.ru
 Профиль | | #30
Добавлено: 10.03.08 20:55
сливаюсь.

Ответить

Страница: 1 | 2 | 3 |

Поиск по форуму





© Copyright 2002-2011 VBNet.RU | Пишите нам