Форум программистов, компьютерный форум, киберфорум
Наши страницы

Pascal (Паскаль)

Войти
Регистрация
Восстановить пароль
 
lanc3r
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 98
#1

Узнать, является ли строчка формулой. БНФ с рекурсией. - Pascal

14.05.2010, 21:10. Просмотров 463. Ответов 0
Метки нет (Все метки)

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
program lanc;
type
 st20=string[20];
function cifra(s:st20):boolean;
begin
 cifra:=pos(s,'0123456789')>0;
end;
function znak(s:st20):boolean;
begin
 znak:=pos(s,'+-*')>0;
end;
function formula(s:st20):boolean;
Var
   k:longint;
begin
  k:=pos(s,'+-*');
 if length(s)=1 then
  formula:=cifra(s)
 else
  formula:=(formula(copy(s,1,k)))and(znak(copy(s,k,1))and
  (formula(copy(s,k+1,length(s)-k))));
end;
Var
 s:st20;
begin
 writeln('vvedite stroky');
 readln(s);
 if formula(s) then
  writeln('stroka yavlyaetsa formuloy')
 else
  writeln('stroka ne yavlyaetsa formuloy');
  readln;
end.
собственно что-то попытался написать. ну так как я бинарное дерево, прога не работает. выдает стек оверфлоу при попытке задать строку более одного символа) вообще условие такое
<formula>::=<cifra>|(<formula><znak><formula>) , gde | - Либо
<znak>::=+|-|*
<cifra>::=0|1...|9

Добавлено через 2 часа 39 минут
неужели никто не может помочь?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2010, 21:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Узнать, является ли строчка формулой. БНФ с рекурсией. (Pascal):

БНФ в Паскаль - Pascal
Доброго времени суток! Народ подскажите где можно почитать по данной теме? или еще лучше помогите составить описание БНФ для двухмерного...

Блок схема (БНФ) - Pascal
Привет Создание блок схем сразу скажу, не мое...и поэтому надеюсь на ваши знания. Задание Поднможество языка Pascal. Допускается: -...

Узнать, является ли пользователь админом - PascalABC.NET
Не запущена ли программа от имени админа, а может ли пользователь запустить ее от имени админа, есть ли у него соответствующие права.

БНФ - Turbo Pascal
помогите пожалуйста! дан пример &lt;A&gt;::=&lt;B&gt;a|a &lt;B&gt;::=b&lt;A&gt;|&lt;пусто&gt; &lt;C&gt;::=a|b|&lt;D&gt; 1. Почему без...

Получить действительный матрицу А( n,m) Первая строка которого задана формулой C1j=2*j+3, вторая строка задается формулой С2j=2+1/j, а каждая следующая строка есть сумма предыдущих. - Turbo Pascal
Получить действительный матрицу А( n,m) Первая строка которого задана формулой C1j=2*j+3, вторая строка задается формулой С2j=2+1/j, а...

Проверить является ли строчка числом - Pascal ABC
Нужно проверить является ли строка введенная в поле (edit) числом. Может есть какая-нибудь функция? if (Year.Caption число) and...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2010, 21:10
Привет! Вот еще темы с ответами:

Является ли это рекурсией? - C++
#include &lt;iostream&gt; using namespace std; int lol (void); int lol2 (void); int lol3 (void); int main ()

Как узнать какая строчка выделена в списке ListView? - Visual Basic .NET
Всем привет. Как узнать какая строчка выделена в списке ListView?подскажите какое событие срабатывает при одинарном щелчке по строчке?

Как узнать, есть ли в переменной нужная мне строчка? - PHP
Здравствуйте! Есть переменная с большим объёмом информации, как мне узнать, есть ли среди всего текста нужная строчка, например,...

Является ли формулой следующее выражение? - Логика и множества
Добрые люди помогите решить пару задачек: 1. Исходя из определения логической формулы,определить, является ли формулой следующее...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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