42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
|
|
1 | |
Выполнить строку27.06.2009, 13:13. Показов 6053. Ответов 35
Метки нет (Все метки)
Здравствуйте, подскажите наиболее простой вариант решения проблемы.
Есть строка типа
0
|
27.06.2009, 13:13 | |
Ответы с готовыми решениями:
35
Выполнить код, записанный в строку Ввести символьную строку. Выполнить переворот каждого слова в строке Как запустить командную строку, выполнить команду и считать полученные данные Выполнить бегущую строку |
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
28.06.2009, 23:27 | 22 |
Не очень понятно зачем вам это вообще делать.
Вроде как наша общая задача - помочь автору ? И на самом деле это трудно сделать ( в смысле показать несостоятельность ). IMHО проще использовать скачать и изучить готовый lua, чем самому делать обратную польскую запись - чисто по времени будет дольше. И потом в условии задачи не указано, что все нужно написать самому и нельзя использовать посторонние средства.
0
|
29.06.2009, 00:09 | 23 |
Я более, чем уверен, что это задание из института. Хотя, конечно, могу и ошибаться. Собственно, с этой позиции я и подходил.
По поводу того, чтобы помочь автору - по-хорошему для начала надо было бы спросить, с какой целью ему это нужно, а не советовать бог невесть что. Это не претензия к тебе, это упрёк нам всем
0
|
1856 / 713 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
29.06.2009, 12:53 | 24 |
TGrey[WoLf] скажи, пожалуйста, что из себя представляют функции f1,s1?
0
|
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
|
|
29.06.2009, 13:37 [ТС] | 25 |
С Perl я немного работал давно, с lua нет.
Данные действительно внешние и по ним необходимо построить строку из 18 символов. f1 - возвращает символ s1 - возвращает корень числа. Задача не из института. Просто решил сделать для себя. В общем дошло до того, как я говорил все формулы имеют одинаковую структуру. Их там всего 8 случаев. С калькуляторами я еще сильно не вникал в суть, но после слов, что такое задают в институте обязательно разберу. Так вот эти 8 случае я разбираю в if. Я конечно понимаю, что это не оптимально и вообще бред, но зато мне такой вариант пока подходит.
0
|
1856 / 713 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
29.06.2009, 14:06 | 26 |
Я сделал. Строка получается какая-то бредовая - YBDAlBTHjJAJcWd.
Наверное, потому, что у тебя ошибки в исхдной строке. Там не хватает вызовов функций F1, и не везде расставлены скобки. Я использовал такую вот строку: Или f1 возвращает символ из какой-то таблицы символов? Добавлено через 3 минуты 29 секунд Как ведь можно по другому рассмотреть эти символы? 65+24=89 = (ASCII)'Y' итд... В проге вроде все правильно.
0
|
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
29.06.2009, 14:46 | 28 |
... нежEли ...
1
|
1856 / 713 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
29.06.2009, 14:49 | 29 |
0
|
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
29.06.2009, 14:52 | 30 |
Нет конечно, я просто не смог удержаться увидев неправильный русский язык
Добавлено через 2 минуты 4 секунды Вообще это задача смахивает на генерацию капчи. Сначала автор генерит некий код, потом по нему рисует текст для человека. А человек должен ввести правильный ответ.
0
|
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
|
|
29.06.2009, 16:09 [ТС] | 31 |
Я уже не помню, но код у тебя вроде верный получился. Там такая ерунда и получается.
Это строка вообще то из JS. s1(x){ return Math.Sqrt(x); } f1(x){ return String.fromCodeToChar(x); } Как там правильно синяя функция пишется я точно не помню. Но в общем она и возвращает символ ASCII. А так это программа для Логина на сайт. Идет POST на сайт и получаем ответ cid, uid. Потом шлем 2 запрос GET получаем ответ с этой формулой, генерим из нее ключ и шлем 3 запрос GET с этим ключем и происходит вход. Да интересно, как происходит разбор синтаксиса. По типу написания текстового калькулятора или плагинов, скриптов к программе.
0
|
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
29.06.2009, 16:11 | 32 |
Сайт надеюсь не твой ?
А то после такого подробного описания поломают
0
|
1856 / 713 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
29.06.2009, 16:33 | 33 |
Обратная польская нотация, и все. Я практически ничего не менял в той проге, которую выложил в ответе №11.
К сожалению тот класс TMathParser не поддерживает работу со строками, я про это тогда и не думал, поэтому добавил в список внутренних функций функцию F1 и в качестве члена данных класса добавил строку, функция F1 добавляет к строке символ который её был передан как аргумент. И еще я даже и не знал, что не обрабатываю такой случай - -s1. Парсер ждет элемента перед минусом, чтобы от него отнять. s1*-1 тоже нельзя сделать. Отрицательное число можно сделать только так: 0-s1. Вот готовая программа с исходниками(BCB 6).
0
|
1856 / 713 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
29.06.2009, 16:36 | 34 |
По типу текстового калькулятора.
0
|
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
|
|
29.06.2009, 18:16 [ТС] | 35 |
Не, сайт не мой))
Что только 0-s1()? Тоже не очень красиво выходит.
0
|
1856 / 713 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
29.06.2009, 18:26 | 36 |
Ну,я как-нибудь перебьюсь. Если хочешь, исправь функцию разбора строки или подсчета выражения.
0
|
29.06.2009, 18:26 | |
29.06.2009, 18:26 | |
Помогаю со студенческими работами здесь
36
Выполнить строку в формате base64 Как выполнить строку SQL из функции Выполнить команду через командную строку Какая функция или пакет может выполнить поданную на вход строку? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |