Go4Expert (http://www.go4expert.com/)
-   C (http://www.go4expert.com/forums/c/)
-   -   Just cant get my head around these FLEX questiions! (http://www.go4expert.com/forums/head-flex-questiions-t28005/)

 Sber 12Mar2012 20:12

Just cant get my head around these FLEX questiions!

Hey guys, noob here in dire need of help.

I am preparing for an exam on Compilers and I have serious trouble answering some --seemingly simple :(--- questions concerning the FLEX logical analyser.
I know, the first thing is for me is to go back to my notes and try harder, but sadly my lecturer just makes little sence to me (and others in the class, to that extent). I have read a few things on the Wikipedia article (doesn't help much) and I would like to ask any experts for help on these two questions (and hopefully I'll get it, the same way that Pavlov fed his dogs!)

Here's the questions:

1(i) In a programming languge, we declare variables as follows:
var name1,name2,.... : integer;
othername1,othername2,... : real;
otherothername1,... : boolean;
other4name1,... : char;

(a) Write a real life example of a variable declaration in this language.
(b) Construct the syntactic diagram (this is about circles,squares and arrows
and pretty frustrating, arrgh!)
(c) Define the variables in Backus-Naur form.
(d) Write the associated LEX program in C.
(e) Define the tokens, lexemes and patterns existing in this process.
(e) Define a formal expression regarding variable declaration in this language
and construct the relevant finite automaton.

Ok, and the second one goes...

2) A subset of a natural language contains these sentences:
1) Triangle ABC.
2) Line Segment AB.
3) Angle A.
In this set, names of triangles are formed by putting three letters together,
all drawn from the alphabet {A,B,C,D,E}. Line segment names are defined by
putting two letters together from the previous alphabet. And angle names are
(suprise!) given by any letter in that alphabet.

a) Write a LEX program (i know this is in C) that identifies words from the previous set of phrases, such that an input of the form "triangle BCD" returns:
---Triangle: a geometric entity (lol at that)
---BCD: name of a geometric entity
b) Define the tokens, lexemes and patterns to be found in formal expressions concerning these three sentences.
c) Construct the finite automaton that corresponds to the formal expressios to describe the names of geometric entities in that language. Use this to see if the name AYZ is recognizable.

Here they are. 1) a) i can do, so I would really appreciate any help with all the rest.
:(

 Sber 12Mar2012 20:13

Re: Just cant get my head around these FLEX questiions!

And also, my lectures uses "formal expressions" and "regular expressions" interchangeably. Is that right? :/

 Sber 12Mar2012 21:23

Re: Just cant get my head around these FLEX questiions!

Ok I see things more clearly now (mods please dont ban me for posting three times in my thread!)
Here's my example for 1a):

var number_of_attendants, sum: integer;
ticket_price: real;
symbols: char;

and I have to answer all questions in 1) based on this.

 john_grammatidis 7Mar2016 15:25

Re: Just cant get my head around these FLEX questiions!

So what did you do with your code? Any directions?

 Sber 7Mar2016 16:03

Re: Just cant get my head around these FLEX questiions!

Quote:
 Originally Posted by john_grammatidis (Post 111128) So what did you do with your code? Any directions?

It's been years, dude :happy:Yeah I got it eventually.
Email me for details

 john_grammatidis 7Mar2016 16:28

Re: Just cant get my head around these FLEX questiions!

Quote:
 Originally Posted by Sber (Post 111129) It's been years, dude :happy:Yeah I got it eventually. Email me for details
Jolly news!! :D

hmm.. I suppose that your contact info is not visible or I can't find it (new to forum). My email is johngrammatidis@gmail.com