EPL.pdf

(336 KB) Pobierz
Microsoft Word - EPL_v1.doc
Skþadnia jħzyka
EPL
EUCIP Programming Language
J ħ zyk programowania EPL (EUCIP Programming Language) został zaprojektowany
na potrzeby weryfikacji rozumienia podstawowych zasad programowania na
poziomie EUCIP Core. Oparty jest na podzbiorze j ħ zyka C i jest zgodny z
kluczowymi konstrukcjami programistycznymi, jakie mo Ň na znale Ņę we
współczesnych j ħ zykach programowania, takich jak Java i C++.
Zastrze Ň enie:
Dokument ten został opracowany ze szczególnĢ starannoĻciĢ na podstawie materiałów Ņródłowych
pochodzĢcych z Fundacji ECDL. Polskie Towarzystwo Informatyczne i Fundacja ECDL zastrzegajĢ sobie
prawo do zmian treĻci dokumentu oraz wyłĢczenia od odpowiedzialnoĻci za jakiekolwiek straty i szkody
powstałe na skutek wykorzystania niniejszego dokumentu i treĻci w nim zawartych.
Copyright ¨ 2007, Polskie Towarzystwo Informatyczne
648110949.006.png
EUCIP Core Î skþadnia jħzyka EPL (EUCIP Programming Language)
Najwa Ň niejszymi elementami, jakie uległy zmianie w porównaniu do
pierwotnej składni j ħ zyka C s Ģ :
  „Skrócone” operatory przypisania, takie jak += oraz &=.
  Zachowane zostały tylko proste identyfikatory (char, int oraz float).
  Usuniħte zostały wszystkie specyfikatory klas pamiħci (np. auto, static).
  Usuniħto wszystkie elementy składni zwiĢzane ze strukturami.
  Usuniħto wszystkie instrukcje „nieproceduralne” (np. goto, case oraz switch).
  Usuniħto wszystkie instrukcje preprocesora.
ZałoŇono, Ňe pomimo uproszczonej składni, zachowana została wiħkszoĻę
elementarnych zagadnieı z zakresu programowania, zwiĢzanych z rozumowaniem
algorytmicznym, rozumieniem składni oraz ogólnĢ wiedzĢ dotyczĢcĢ współczesnego
programowania.
Od osób zdajĢcych drugi moduł („B: Wytwarzanie”) certyfikatu EUCIP Core, oczekuje
siħ zrozumienia treĻci pytaı wykorzystujĢcych jħzyk EPL. W zwiĢzku z tym, dozwolone
jest posiadanie przez kandydatów w czasie trwania testów, pomocy w postaci kopii
dokumentu - składni jħzyka EPL.
Składnia j ħ zyka EPL jest formalnie zdefiniowana w postaci nast ħ puj Ģ cych
paragrafów:
1. WyraŇenia
3
2. Deklaracje
4
3. Instrukcje
4
4. Definicje zewnħtrzne
5
5. Standard wejĻcia / wyjĻcia dla jħzyka EPL
5
Copyright ¨ 2007, Polskie Towarzystwo Informatyczne
2
648110949.007.png 648110949.008.png
EUCIP Core Î skþadnia jħzyka EPL (EUCIP Programming Language)
1 Wyra Ň enia
wyra Ň enie:
podstawowe
wyra Ň enie
! wyra Ň enie
wyra Ň enie <operator binarny> wyra Ň enie
lwarto Ļę = wyra Ň enie
wyra Ň enie, wyra Ň enie
podstawowe:
identyfikator
stała
( wyra Ň enie)
podstawowe ( wyra Ň enie- lista opcjonalne )
podstawowe [ wyra Ň enie ]
lwarto Ļę :
identyfikator
podstawowe [ wyra Ň enie ]
( lwarto Ļę )
Operatory pierwszego stopnia:
( ) [ ]
MajĢ najwyŇszy priorytet i grupujĢ operandy od lewej do prawej strony.
Operatory unarne (jednoargumentowe) :
-
!
majĢ priorytet niŇszy niŇ operatory pierwszego stopnia, ale wyŇszy od wszystkich
operatorów binarnych (dwuargumentowych) i grupujĢ operandy od prawej do lewej strony.
Wszystkie operatory binarne grupujĢ operandy od lewej do prawej strony, a ich priorytety
malejĢ zgodnie z zawartoĻciĢ poniŇszej tabeli (w pierwszym rzħdzie operatory o
najwyŇszym priorytecie):
Operatory binarne:
*
/
+ -
< > <= >=
== !=
&&
||
Operator przypisania (=) grupuje operandy od prawej do lewej strony.
Operator przecinka (,) ma najniŇszy priorytet i grupuje operandy od lewej do prawej strony.
Copyright ¨ 2007, Polskie Towarzystwo Informatyczne
3
648110949.009.png 648110949.001.png
EUCIP Core Î skþadnia jħzyka EPL (EUCIP Programming Language)
2 Deklaracje
deklaracja:
specyfikatory_deklaracji lista_deklaratora_inicjalizacji opcjonalne
specyfikatory deklaracji:
specyfikator_typu specyfikator_deklaracji opcjonalne
specyfikatory typu:
char
int
float
nazwa_typedef
lista deklaratora inicjalizacji:
deklarator inicjalizacji
deklarator inicjalizacji, lista deklaratora inicjalizacji
deklarator inicjalizacji:
inicjalizator deklaratora opcjonalne
deklarator:
identyfikator
( deklarator )
deklarator ( )
deklarator [wyra Ň enie_stałe opcjonalne ]
inicjalizator:
= wyra Ň enie
= { lista inicjalizacyjna }
= { lista inicjalizacyjna, }
lista inicjalizacyjna:
wyra Ň enie
lista inicjalizacyjna, lista inicjalizacyjna
{ lista inicjalizacyjna }
3 Instrukcje
lista deklaracji:
deklaracja
deklaracja lista_deklaracji
lista instrukcji:
instrukcja
instrukcja lista_instrukcji
Copyright ¨ 2007, Polskie Towarzystwo Informatyczne
4
instrukcja zło Ň ona :
{ lista_deklaracji opcjonalne lista _instrukcji opcjonalne }
648110949.002.png 648110949.003.png
EUCIP Core Î skþadnia jħzyka EPL (EUCIP Programming Language)
instrukcja:
instrukcja_zło Ň ona
wyra Ň enie ;
if ( wyra Ň enie ) instrukcja
if ( wyra Ň enie ) instrukcja else instrukcja
while ( wyra Ň enie ) instrukcja
do instrukcja while ( wyra Ň enie );
for (wyra Ň enie1 opcjonalne ; wyra Ň enie2 opcjonalne ; wyra Ň enie3 opcjonalne ) instrukcja
return ;
return wyra Ň enie ;
;
4 Definicje zewn ħ trzne
program:
definicja_zewn ħ trzna
definicja_zewn ħ trzna program
definicja zewn ħ trzna:
definicja_funkcji
definicja_danych
definicja funkcji:
specyfikator_typu opcjonalne deklaracja_funkcji ciało_funkcji
deklarator funkcji:
deklarator ( lista_parametrów opcjonalne )
lista parametrów:
identyfikator
identyfikator, lista_parametrów
ciało funkcji:
lista_deklaracji_typów instrukcja_funkcji
definicja danych:
specyfikator_typu opcjonalne , lista_deklaratora_inicjalizacji opcjonalne ;
specyfikator_typu opcjonalne lista_deklaratora_inicjalizacji opcjonalne ;
5 Standard wej Ļ cia / wyj Ļ cia dla j ħ zyka EPL
Printf („tekst”, lista_zmiennych)
Readf ( lista_zmiennych)
Copyright ¨ 2007, Polskie Towarzystwo Informatyczne
5
instrukcja funkcji:
{ lista_deklaracji opcjonalne lista_instrukcji }
648110949.004.png 648110949.005.png
Zgłoś jeśli naruszono regulamin