Вверх ↑
Этот топик читают: Гость
Ответов: 1397
Рейтинг: 50
#46: 2008-09-07 09:30:12 ЛС | профиль | цитата
Ну, вот опередили. Я тут впервые увидел интересную задачку, которую мог запросто решить... Общий алгоритм такой как и у andrestudio. К сожалению времени в обрез, сижу сейчас и ваяю проект который в понедельник нужно сдавать на утверждение и перебиваюсь с решением задачки.
iarspider, с такого и нужно начинать.
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 5227
Рейтинг: 588
#47: 2008-09-07 11:48:00 ЛС | профиль | цитата
Валерий, согласен задача простая, но кто тебе не даёт сделать альтернативное решение . тем более что условие
Можно считать, что ни операнды, ни результат не выйдут за границы целого типа.
это позволяет вот допустим тоже самое но без применения компонентов Math и MathParse

code_9915.txt

------------ Дoбавленo:

кстати кто хочет может усложнить задачу и сделать хотябы операцию сложения, результат в пределах одного байта с использованием компонентов IntToBits и BitsToInt поверьте будет гораздо интересней
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
файлы: 1code_9915.txt [4.1KB] [526]
Ответов: 5446
Рейтинг: 323
#48: 2008-09-07 16:35:11 ЛС | профиль | цитата
anderstudio, вообще-то задачку я выложил для сомневающихся вроде juk-а, а ты уже тут как тут

Ну ладно, специально для остальных...
== Внеконкурсная задача №2. Калькулятор! ==
Введение
Это вторая внеконкурсная задача для тех, кто не успел на первую.
Является логическим развитием второй.

Задача
Создать схему, реализующую "извращённый" калькулятор. Этот калькулятор имеет три режима вычисления:

  • Если на вход поданы 3 аргумента (2 операнда и признак операции) - то как в прошлой задаче
  • Если на вход поданы 2 аргумента (1 операнд и при знак операции), то:

    • Если символ операции набран с Заглавной буквы, то использовать предыдущий результат вычислений как 2й операнд
    • Если символ операции набран со строчной буквы, то использовать предыдущий результат вычислений как 1й операнд
  • Если на вход подан 1 аргумент (операнд), то повторить операцию из предыдущего шага вычислений в соответствии с правилами выше.

Входные данные
Последовательность строк, каждая из которых содержит:

  • Либо 2 операнда и признак операции
  • Либо 1 операнд и признак операции
  • Либо только 1 операнд
Элементы строки разделены пробелом.

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

Пример входных и выходных данных
Знаком ">" помечены входные, а "<" - выходные данные.
> 1 7 S
< 8
> 2 P
< 14
> 24 D
< 10
> 4 dь
< 6

Дополнтельная информация

  • Операдны и результат никогда не выйдут за пределы целого со знаком
  • Начальное значение "результата" равно нулю

Требования к оформлению
Решение задачи должно быть оформлено в виде мультиэлемента

#sha
Add(MultiElementEx,9964527,434,273)
{
@Hint=#23:Внеконкурсная задача №2|16:Автор: iarspider|11:Версия: 0.0|
}
BEGIN_SDK
Add(EditMultiEx,14999505,21,21)
{
WorkCount=#6:doCalc|
EventCount=#8:onOutput|
DataCount=#6:InpStr|
}
END_SDK

карма: 1

0
Ответов: 1161
Рейтинг: 160
#49: 2008-09-07 16:43:11 ЛС | профиль | цитата
> 2 M
< 14

Че то я затупил. У меня вопрос. Что такое M
карма: 0

0
Ответов: 1397
Рейтинг: 50
#50: 2008-09-07 17:17:20 ЛС | профиль | цитата
Видимо это - "Р"
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 5446
Рейтинг: 323
#51: 2008-09-07 17:22:30 ЛС | профиль | цитата
Lanix, сорри - с утра (а у меня сейчас утро!) голова плохо соображает и буквы путаются. Конечно там P, сейчас исправлю.
карма: 1

0
Гость
Ответов: 17029
Рейтинг: 0
#52: 2008-09-07 17:43:45 ЛС | профиль | цитата
Может так. Тока я не уверен
code_2289.txt
карма: 0

0
Ответов: 5227
Рейтинг: 588
#53: 2008-09-07 21:14:11 ЛС | профиль | цитата
iarspider,извиняюсь так как участников не неаблюдалось в азарт вошёл.
------------ Дoбавленo:

одно дело когда перед сабой задачи ставишь и уже знаешь к ним подход, другое дело когда тебе задачу предлагают и требуют решение
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Ответов: 5446
Рейтинг: 323
#54: 2008-09-08 00:16:54 ЛС | профиль | цитата
anderstudio, скоро твой азарт ещё подогрею: почти проверил твоё решение (осталось один длинный тест прогнать), тогда выложу ещё одну задачку.

------------ Дoбавленo:


== Основная задача №1. Чужие числа ==
Введение
Десятичная система счисления состоит из десяти цифр, записываемых в виде "0123456789" (чиса записываются в порядке от наименьшего к наибольшему). Представьте, что вы обнаружили числа, записанные в инопланетной системе счисления, записываемой другими символами, которые могут совпадать, а могут и не совпадать с используемыми в десятичной системе. Например, если инопланетная система счисления представляется символами "oF8", то числа от одного до десяти в этой системе будут иметь вид (F, 8, Fo, FF, F8, 8o, 8F, 88, Foo, FoF).

Задача
Нам хотелось бы иметь возможность работать с числами в произвольной инопланетной системе счисления. Более того, нам бы хотелось иметь возможность переводить произвольные числа между различными инопланетными системами счисления.

Входные данные
Последовательность заданий, каждое из которых содержит следующие элементы:

  • "Чужое" число в исходной системе счисления (alien_num)
  • Исходный язык (source_lang)
  • Целевой язык (target_lang)
Каждый язык представлен списком "цифр", упорядоченных по возрастанию. "Цифры" внутри описания языка не повторяются, все цифры "чужого" числа будут пристутствовать в исходном языке, и первый знак "чужого" числа не будет совпадать с цифрой исходного языка, соответствующей минимальному значению (иными словами, у "чужого" числа нет ведущих нудей). Каждый символ языка будет либо цифрой от 0 до 9, строчной или заглавной латинской буквой, или одним из следующих знаков !"#$ %&'()*+,-./:;<=>?@[\]^_`{|}~

Выходные данные
Для каждого задания система должна вывести строку "Case #", номер (последовательный) задания, и число, записанное символами целевой системы счисления.

Дополнительная информация
На параметры задачи накладываются следующие условия:
1 <= знаков в "чужом" числе <= 4,
2 <= символов исходного языка <= 16,
2 <= символов целевого языка <= 16.

Пример
> 9 0123456789 oF8
< Case #1: Foo
> Foo oF8 0123456789
< Case #2: 9
> 13 0123456789abcdef 01
< Case #3: 10011
> CODE O!CDE? A?JM!.
< Case #4: JAM!

Требования к оформлению
Решение должно быть оформлено в виде мультиэлемента
#sha
Add(MultiElementEx,9964527,364,245)
{
@Hint=#33:Основная задача #1: "Чужие" числа|16:Автор: iarspider|11:Версия: 0.0|
}
BEGIN_SDK
Add(EditMultiEx,14999505,21,21)
{
WorkCount=#8:doNumber|
EventCount=#8:onNumber|
DataCount=#9:alien_num|11:source_lang|11:target_lang|
}
END_SDK

------------ Дoбавленo:


lainX, задание засчитываю, однако для порядку поворчу:

  • Алгоритм не оптимальный. Это задание с подвохом
  • Оформление схемы - на твёрдую тройку. В идеале я должен чётко видеть куда какая связь идёт.
  • Рекомендуется использовать GetDataEx вместо GetData
карма: 1

0
Ответов: 8888
Рейтинг: 823
#55: 2008-09-08 18:32:43 ЛС | профиль | цитата
iarspider, у меня случился застой в разрабатываемой схемке - новые идеи не рождаются , а старые все проверил, для отвлечения занялся этой задачкой - ну, блин, с обеда до сих пор сидел, а вот проверить, дошла-ли она неизменившись в личку начальнику не смог, придётся ждать дрожа коленками.
карма: 19

1
Голосовали:andrestudio
Ответов: 5227
Рейтинг: 588
#56: 2008-09-11 11:52:11 ЛС | профиль | цитата
кажись и я дополз до финиша
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Разработчик
Ответов: 26066
Рейтинг: 2120
#57: 2008-09-11 12:13:37 ЛС | профиль | цитата
andrestudio писал(а):
кажись и я дополз до финиша

С чем тебя и поздравляем
карма: 22

0
Ответов: 5227
Рейтинг: 588
#58: 2008-09-11 18:45:48 ЛС | профиль | цитата
nesco, для себя я не раз отмечаю "Век живи Век учись", оказывается надо было просто книгу открыть или на худой конец в интернете поискать и заполнить свои пробелы коли в школе мух считал
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Ответов: 5446
Рейтинг: 323
#59: 2008-09-11 23:33:32 ЛС | профиль | цитата
Ну что, два участника есть. А остальным что, слабо?
карма: 1

0
Ответов: 5227
Рейтинг: 588
#60: 2008-09-12 08:04:11 ЛС | профиль | цитата
Леонид, поздравляю! , твой конвертор оказался безупречным. Моя схема оказалась с существенными косяками. iarspider, в таких делах просчёты не допустимы и поэтому я ставлю себе КОЛ . Можно представить если бы кто возьми и используй мой конвертор в межгалактических расчётах то электрический стул был бы для меня неминуем Виду того что алгоритм моей схемы был изначально нерационален то и искать этот косяк сил небыло, решил кординально всё изменить на свежую голову с утречка и перерисовал схему. iarspider, прошу Вас ещё раз прогнать новую схему на SUPER тесте но уже вне конкурса.
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)