
Menu
Strona startowa
Notacja EBNF
Download
Autorzy
|
Specyfika EBNF
[] - jedna z opcji musi wystapić
() - opcjonalnie 0 lub 1
{} - dowolna ilość wystąpień 0 lub więcej
| - lub
"" - tekst który musi wystąpić
<litera>::= [a-z] | [A-Z]
<cyfra>::= [0-9]
<ciag>::= {{<litera>}|{<cyfra>}}
<liczba_cal>::= ["-"|""] <cyfra> {<cyfra>}
<liczba_rzecz>::= ["-"|""] <cyfra> {<cyfra>}["."|""]{<cyfra>}
<wart_bool>::= "true" | "false"
<liczba>::= <liczba_cal> | <liczba_rzecz>
<zmienna>::= <litera> {<ciag>|{<cyfra>}}
<wartosc>::= <liczba> | <wart_bool>
<typ>::= "int" | "float" | "bool"
<slowo_kluczowe>::= "if" | "else" | "for" | "cin" | "cout"
<przypisz> ::= "="
<operator>::= "+" | "-" | "*" | "/"
<operator_warunku> ::= ">=" | "<=" | "!=" | "==" | ">" | "<"
<operator_przypisania> ::= "++" |"--" | "+=" | "-=" | "/=" | "*=" | <przypisz>
<srednik>::= ";"
<przecinek>::=","
<poczatek> ::= "{"
<koniec> ::="}"
<ciag_do_wypisania>::=""" {<litera>|<cyfra>|"+"|"-"|":"|"_"|" "|"."|","|"("|")"|"<"|">"|"="|"\"|"/"|"?"} """
<deklaracja>::= <typ><zmienna>(<przypisz><wartosc>) {<przecinek><zmienna>(<przypisz><wartosc>)}<srednik>
<wyrazenie>::=[<zmienna>|<liczba>]<operator>[<zmienna>|<liczba>]{<operator>[<zmienna>|<liczba>]
}
<operacja>::= <zmienna><operator_przypisania>[<wyrazenie>|<zmienna>|<wartosc>]<srednik>
<warunek>::= [<zmienna>|<wartosc>] <operator_warunku> [<wyrazenie>|<zmienna>|<wartosc>]
<wczytanie>::= "cin>>" <zmienna> <srednik>
<wypisanie>::= "cout<<" <zmienna> | <ciag_do_wypisania> {"<<" <zmienna> | <ciag_do_wypisania>} <srednik>
<instrukcja_if>::= "if ("<warunek> ")" [<operacja> | <blok_operacji>]
<petla_for>::="for (“ [<deklaracja>|<zmienna><przypisz><liczba>] <srednik> <zmienna><operator_warunku> [<zmienna> | <liczba>] <srednik> <zmienna> <operator_przypisania> <zmienna> | <liczba> “)"[ <operacja> | <blok_operacji>]
<blok_operacji>::= <poczatek>{<deklaracja> | <wczytanie> | <wypisanie> | <operacja> | <instrukcja_if> | <petla_for>} <koniec>
<program>::= "main()"<blok_operacji>
|