Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.91
TGrey[WoLf]
39 / 39 / 1
Регистрация: 14.09.2008
Сообщений: 685
#1

Выполнить строку - C++

27.06.2009, 13:13. Просмотров 2752. Ответов 35
Метки нет (Все метки)

Здравствуйте, подскажите наиболее простой вариант решения проблемы.
Есть строка типа
(65+24)+f1(53+13)+f1(110-42)+f1(s1((35462+510)/17)+19)+(-s1((112-48))+9)+f1(s1((60615-115)/5)-2)+f1(s1((10010-10))-34)+(-s1((117-36))+12)+f1(66+18)+f1(s1((118365+450)/15)-17)+f1(s1((7585-16))+19)+f1(99-25)+f1(s1((30236+40)/4)-22)+f1(38+36)+f1(s1((3571+29))+39)+f1(s1((311780+720)/20)-38)+f1(s1((79209-117)/13)+22)
Нужно ее выполнить
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.06.2009, 13:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Выполнить строку (C++):

Ввести символьную строку. Выполнить переворот каждого слова в строке - C++
Ввести символьную строку. Выполнить переворот каждого слова в строке (заменив первую букву с последней, вторую с предпоследней и т.д.)....

Ввести строку текста и строку поиска, найти местоположение первого вхождения строки поиска в строку текста - C++
Здравствуйте, не могли бы вы помочь новичку в программировании))) Нужно написать програмку, которая считывает с клавиатуры строку текста...

Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент - C++
1)В матрице поменять местами 1 строку и строку содержащие последнее вхождение элемента максимального где максимальный- максимальный элем...

Ввести строку, подсчитать сколько раз первая буква входит в строку - C++
Ввести строку, подсчитать сколько раз первая буква входит в строку. C++

В заданной числовой вещественной матрице размерности N*N поменять местами K-ую строку и L-ую строку - C++
Помогите пожалуйста написать прогу для консоли) В заданной числовой вещественной матрице размерности N*N поменять местами K-ую строку и...

Описать строку А. Из входной последовательности символов записать в строку А только цифры - C++
Описать строку А. Из входной последовательности символов записать в строку А только цифры.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
28.06.2009, 17:55 #16
Я так понял, что строки которые нужно вычислить подаются снаружи и могут быть разными.
Ну допустим исходник на C ты сгенеришь - а что ты с ним дальше делать будешь ? Компилировать ? Тогда тебе придется вместе с программой таскать еще и компилятор C. Например Visual Studio 2005 ))

А lua как раз это и есть - он тебе пропарсит и выполнит твое выражение.
Evg
Эксперт CАвтор FAQ
17633 / 5857 / 377
Регистрация: 30.03.2009
Сообщений: 16,154
Записей в блоге: 26
28.06.2009, 19:14 #17
Цитата Сообщение от odip Посмотреть сообщение
Ну допустим исходник на C ты сгенеришь - а что ты с ним дальше делать будешь ? Компилировать ? Тогда тебе придется вместе с программой таскать еще и компилятор C. Например Visual Studio 2005 ))
Да кому нужна эта программа, чтобы её куда-то таскать
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
28.06.2009, 20:24 #18
Кому нужна программа - это уже вопрос к автору.

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

Это в UNIX/Linux/BSD все просто - в 99% случаев в системе есть gcc, запустить его не составляет больших проблем. Но там и perl можно вызвать - это будет еще проще
Evg
Эксперт CАвтор FAQ
17633 / 5857 / 377
Регистрация: 30.03.2009
Сообщений: 16,154
Записей в блоге: 26
28.06.2009, 22:42 #19
Хорошо. Выскажу своё мнение открытым текстом. Товарищу нужно сделать задачу из разряда тех, что дают в институте, при этом он не знает как. Всякие заумные советы типа perl, lua - товарищ и слов-то таких наверное не слышал.
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
28.06.2009, 23:02 #20
Заумные советы типа сгенерировать C-ный файл, потом его откомпилировать - это IMHO не лучше
Evg
Эксперт CАвтор FAQ
17633 / 5857 / 377
Регистрация: 30.03.2009
Сообщений: 16,154
Записей в блоге: 26
28.06.2009, 23:13 #21
Цитата Сообщение от odip Посмотреть сообщение
Заумные советы типа сгенерировать C-ный файл, потом его откомпилировать - это IMHO не лучше
Это не советы, а попытка съязвить и показать несостоятельность ваших предложений
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
28.06.2009, 23:27 #22
Не очень понятно зачем вам это вообще делать.
Вроде как наша общая задача - помочь автору ?

И на самом деле это трудно сделать ( в смысле показать несостоятельность ).
IMHО проще использовать скачать и изучить готовый lua, чем самому делать обратную польскую запись - чисто по времени будет дольше.

И потом в условии задачи не указано, что все нужно написать самому и нельзя использовать посторонние средства.
Evg
Эксперт CАвтор FAQ
17633 / 5857 / 377
Регистрация: 30.03.2009
Сообщений: 16,154
Записей в блоге: 26
29.06.2009, 00:09 #23
Цитата Сообщение от odip Посмотреть сообщение
И потом в условии задачи не указано, что все нужно написать самому и нельзя использовать посторонние средства.
Я более, чем уверен, что это задание из института. Хотя, конечно, могу и ошибаться. Собственно, с этой позиции я и подходил.

По поводу того, чтобы помочь автору - по-хорошему для начала надо было бы спросить, с какой целью ему это нужно, а не советовать бог невесть что. Это не претензия к тебе, это упрёк нам всем
Otaka
1824 / 680 / 18
Регистрация: 11.12.2008
Сообщений: 1,019
29.06.2009, 12:53 #24
TGrey[WoLf] скажи, пожалуйста, что из себя представляют функции f1,s1?
TGrey[WoLf]
39 / 39 / 1
Регистрация: 14.09.2008
Сообщений: 685
29.06.2009, 13:37  [ТС] #25
С Perl я немного работал давно, с lua нет.
Данные действительно внешние и по ним необходимо построить строку из 18 символов.
f1 - возвращает символ
s1 - возвращает корень числа.
Задача не из института. Просто решил сделать для себя.

В общем дошло до того, как я говорил все формулы имеют одинаковую структуру. Их там всего 8 случаев. С калькуляторами я еще сильно не вникал в суть, но после слов, что такое задают в институте обязательно разберу. Так вот эти 8 случае я разбираю в if. Я конечно понимаю, что это не оптимально и вообще бред, но зато мне такой вариант пока подходит.
Otaka
1824 / 680 / 18
Регистрация: 11.12.2008
Сообщений: 1,019
29.06.2009, 14:06 #26
Я сделал. Строка получается какая-то бредовая - YBDAlBTHjJAJcWd.
Наверное, потому, что у тебя ошибки в исхдной строке. Там не хватает вызовов функций F1, и не везде расставлены скобки. Я использовал такую вот строку:
F1(65+24)+F1(53+13)+F1(110-42)+F1(sqrt((35462+510)/17)+19)+F1(0-sqrt(112-48)+9)+F1(sqrt((60615-115)/5)-2)+F1(sqrt(10010-10)-34)+F1(0-sqrt(117-36)+12)+F1(66+18)+F1(sqrt((118365+450)/15)-17)+F1(sqrt(7585-16)+19)+F1(99-25)+F1(sqrt((30236+40)/4)-22)+F1(38+36)+F1(sqrt(3571+29)+39)+F1(sqrt((311780+720)/20)-38)+F1(sqrt((79209-117)/13)+22)
Добавлено через 57 секунд
Или f1 возвращает символ из какой-то таблицы символов?

Добавлено через 3 минуты 29 секунд
Как ведь можно по другому рассмотреть эти символы?
65+24=89 = (ASCII)'Y'
итд...
В проге вроде все правильно.
Evg
Эксперт CАвтор FAQ
17633 / 5857 / 377
Регистрация: 30.03.2009
Сообщений: 16,154
Записей в блоге: 26
29.06.2009, 14:30 #27
> Задача не из института. Просто решил сделать для себя.

Т.е. тебя в первую очередь интересует, как самому сделать разбор, нежили использовать сторонние компоненты?
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
29.06.2009, 14:46 #28
... нежEли ...
Otaka
1824 / 680 / 18
Регистрация: 11.12.2008
Сообщений: 1,019
29.06.2009, 14:49 #29
... нежEли ...
Это должно получиться в результате?
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
29.06.2009, 14:52 #30
Нет конечно, я просто не смог удержаться увидев неправильный русский язык

Добавлено через 2 минуты 4 секунды
Вообще это задача смахивает на генерацию капчи.
Сначала автор генерит некий код, потом по нему рисует текст для человека.
А человек должен ввести правильный ответ.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.06.2009, 14:52
Привет! Вот еще темы с ответами:

Поменять местами первую строку и строку сумма элементов которой минимальна - C++
Дан двумерный массив размера NxM. Поменять местами первую строку и строку сумма элементов которой минимальна. Вывести полученную матрицу на...

Функция, которая копирует строку в другую строку заданное количество раз - C++
Помогите!!!! срочно нужна задача. Не знаю как сделать. Разработать функцию, которая копирует строку в другую строку заданное количество...

Ввести строку и слово, удалить все вхождения слова и вывести строку - C++
помогите с лабой! Добавлено через 22 секунды через <stdio.h>

Указатель на строку: как выводить не всю строку целиком, а конкретную букву - C++
Есть программка: #include<iostream> using namespace std; void fn_str1(int i,string str1,char *p) { p=&str1; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
29.06.2009, 14:52
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru