IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

2 страниц V < 1 2  
 Ответить  Открыть новую тему 
> Ищу словарь, математические выражения на паскале
сообщение
Сообщение #21


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Александр

Репутация: -  0  +


А может у вас исходник где завалялся? smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #22


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Александр

Репутация: -  0  +


Я благодарю всех, кто помог мне хоть как-то. Только вот я думаю прийдется мне весь курс математики пройти заново или может впервые wacko.gif . А время в обрез mega_chok.gif .
На одном сайте надыбал:
program z1;
uses crt;
var s:string; i,k:integer;
begin
clrscr;
readln(s);
k:=0;
for i:=1 to length(s) do
begin
if s[i]='(' then k:=k+1;
if s[i]=')' then k:=k-1;
if k<0 then begin writeln('NO'); halt; end;
end;
writeln('YES!');
readkey;
end.
Только вот не пойму почему при k<0 записывается "NO". (программа проверяет правельность растоновки скобок). По-мойму при k=1 blink.gif

Сообщение отредактировано: Студент*21в. -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #23


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


1. Теги! Ими надо обрамлять код в любом разделе
2.
Цитата
На одном сайте надыбал:
Может, там и спросишь, почему при k<0? Видимо, имелось в виду, что, если закрывающаяся предшествует открывающейся, то есть ошибка.
а вот
Цитата
(3)(
она пропускает на ура, радостно сообщая YES!
3. На форуме была программка проверки расстановки скобок - чем она не понравилась?


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #24


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Александр

Репутация: -  0  +


1. Ай донт андерррстенд no1.gif
2 good.gif
3. Я НЕ ВИДЕЛ smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #25


Гость






Цитата
Я НЕ ВИДЕЛ
Смотри:
Задача на проверку баланса скобок в строке
 К началу страницы 
+ Ответить 
сообщение
Сообщение #26


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Александр

Репутация: -  0  +


Ну а теперь о главном.
Объявляю переменную строчного типа
Ввожу туда чего нить вроде "abs(1)+sqrt(2)+ln(3)-sqr(4)*arctan(5)/(-abs(6))"
Подгоняю выше написаное под синтактическую диаграму:[-]x(y)z[-]x(y)............. организовываю цикл с шагом"[-]x(y)" с него он начинается и им закачиваетя а между шагов записывается "z"
под иксом пойдут абээсы и эскьюэрты. игрек это любое рациональное или действительное число.
зед это +,-,*,/.<Это опишем в пользовательском типе.а[-] на случай премены знака он либо есть либо нет.
Кстате а можно в паскале вместо "abs(5)" записать просто "5" или например два корня из трех "2*sqrt(3)" или надо оязательно "abs(2)*sqrt(3)"?
Далее переменной строчного типа присваеваю "чшру" если она соответствует синтаксической диаграмме.
wink.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #27


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Александр

Репутация: -  0  +


Люди, если кто понял выше написаное, пожайлуста напишите что-нибудь.
Наверное это даже не алгоритм, а просто идея написания простым и понятным способом метода решения задачи.
Да и еще что это за "теги" такие? Напишите а smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #28


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Александр

Репутация: -  0  +


Цитата(volvo @ 11.02.2007 14:29) *

Ты не только сам запутался, но и всех запутал... Тебе чего надо??? Ты можешь привести пример строки, которую получает твоя программа, и сказать, что ИМЕННО с ней надо делать? Что за привычка НИЧЕГО не сказав искать ответ???

Нельзя написать было:

"Моя программа должна получать строку вида
abs(sin(x) + sec(y)) * ln(sqrt(z))
и должна проверить ее на соответствие синтаксису Паскаля"

?

Почему надо все время делать непонятно что?


Именно это я и хотел сказать yes2.gif
Подскажите ламеру в каком направлении хоть двигаться
А то я третий год уже сижу на четвертом курсе из за этой курсовой
Охото уж вибираться как-то в програмеры !help.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #29


code warrior
****

Группа: Пользователи
Сообщений: 484
Пол: Мужской
Реальное имя: Славен

Репутация: -  8  +


Цитата(Студент*21в. @ 17.08.2007 18:18) *


Именно это я и хотел сказать yes2.gif
Подскажите ламеру в каком направлении хоть двигаться
А то я третий год уже сижу на четвертом курсе из за этой курсовой
Охото уж вибираться как-то в програмеры !help.gif

Ты хочешь сделать простой транслятор арифметических выражений в синтаксисе паскаля?
Если так, то нужно сперва нагрузиться теорией. Статья раскрывает таинство обратной польской записи.
Алгоритм транслирования в неё эквивалентен проверки синтаксиса. (4 курсу вполне по силам прочитать).
Также статья есть на Codenet.ru там же поиск.

Далее ваш код в студию.


--------------------
ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #30


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Александр

Репутация: -  0  +


var
begin
end.
потом докидаю) чтоб темку не терять)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #31


Гость






Цитата
чтоб темку не терять)
Для этого на форуме есть как минимум 2 средства:
1) У тебя в профиле: "Опции профиля" -> "Найти темы пользователя". У тебя не так много тем, чтобы можно было что-то потерять.
2) Прямо в этой теме - щелкаешь на номер первого (или второго, или последнего, какое тебе больше нравится ) сообщения, получаешь ссылку, и сохраняешь ее. Где хочешь... Можешь прямо в профиле, в поле "Ваш личный блокнот". Информация там хранится постоянно, пока не удалишь ее.

Можешь воспользоваться возможностями браузера - "Закладки" есть практически везде.

А поднимать тему, которое больше двух лет только для того. чтоб ее "не терять" - это некрофилия в чистом виде. Ты ж как-то ее сейчас нашел? Вот и ищи дальше тем же способом.

Можешь не отвечать, через сутки сообщения №29 и №30 удалятся...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #32


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Александр

Репутация: -  0  +


laugh.gif та не просто неохота по циферкам тыкать постоянно) про опции не знал просто. искал но не заметил ph34r.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #33


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской
Реальное имя: Александр

Репутация: -  0  +


Здравствуйте! Произошло чудо, меня восстановили в универе! Думаю теперь все таки придется писать курсовые.

hardcase, спасибо за пример с обратной польской записью! Натолкнуло на кое-какие соображения.

Сразу перейду к постановке вопроса. Если я правильно понимаю, программа должна считывать поочереди каждый символ и толкать его в выходную строку, далее происходит вычисление выражения и таким образом сам компилятор покажет есть ли в выражении ошибки синтаксиса либо покажет результат! За код я пока не брался, хочу сперва перекопать учебники и немного выспаться.

P.S. Очень радует, что форум до сих пор существует! smile.gif

Сообщение отредактировано: Студент*21в. -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

2 страниц V < 1 2
 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 13:52
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name