Struktura programu w Rey

Element

Rozpoczyna

Kończy

Uwagi

Nagłówek

program

;

Zawiera nazwę programu

Używane moduły

korzystaj

;

Opcjonalny

Definicje stałych

stała

 ;

Opcjonalny

Lista instrukcji

{

}

 

 

Rodzaje nagłówków

Nagłówek

Zaczyna

Kończy się

funkcja nazwa {

Funkcję

}

 

Deklaracje stałych

Typ

Znacznik

Przykład

Całkowity dziesiętny

brak

x = 5;

Rzeczywisty

kropka dziesiętna

x = 5.1;

Znakowy

apostrof

x = „c”;

Łańcuchowy

apostrof

x = „abcd”;

 

Typy złożone

Opis

Składnia

Tablica jednowymiarowa

tablica [wymiar];

Tablica wielowymiarowa

tablica [] { tablica[w2], tablica[w2] };

 

Instrukcje REY

Nazwa

Składnia

Instrukcje proste

Wywołanie funkcji

nazwa_funkcji(parametry);

Przypisanie

zmienna = wyrażenie;

Instrukcje złożone

Blok

{ lista_instrukcji; }

Wybór prosty

jeżeli ( warunek)  instrukcja;

Wybór pełny

Jeżeli ( warunek ) instrukcja inaczej instrukcja2;

Pętla N-krotna

dla (zmienna= wyrażenie; warunek; zmienna = wyrażenie) instrukcja;

Pętla 0..? –krotna

Dopóki( warunek ) instrukcja;

Pętla 1..? –krotna

wykonuj instrukcja; dopóki ( warunek_końca );

Instrukcje sterowania

 

Wyjście z bloku

przerwij

Powrót z funkcji

powrót

 

Podstawowe procedury REY

Nazwa

Rola

Parametry

Procedury wejścia-wyjścia

Pisz

Pisze na ekranie

Lista wartości do wypisania

PiszLinia

Pisze na ekranie i zmienia linię

Lista wartości do wypisania

Czytaj

Wczytuje wartość z klawiatury

Zmienna typu prostego

Inne procedury

Wartość

Zamienia tekst na liczbę

Tekst, zmienna docelowa, zmienna zwracająca kod błędu

Tekst

Zamienia liczbę na tekst wg formatu

Wartość, zmienna docelowa

 

Standardowe funkcje REY

Nazwa funkcji

Zwracana wartość

Typ parametru

Typ wyniku

Funkcje matematyczne

Cosinus

Cosinus

Rzeczywisty

Rzeczywisty

Logarytm

Logarytm naturalny

Rzeczywisty

Rzeczywisty

Sinus

Sinus

Rzeczywisty

Rzeczywisty

Potęga

Potęga

Rzeczywisty, Rzeczywisty

Rzeczywisty

Pierwiastek

Pierwiastek kwadratowy

Rzeczywisty

Rzeczywisty

Funkcje znakowe

Długość

Długość ciągu znaków

Łańcuchowy

Całkowity

 

Operatory w REY

Operator

Znaczenie

Przykład

Priorytet wykonania

Operatory arytmetyczne

-

Zmiana znaku

a = -a;

1

*

Mnożenie

a = a*b;

2

/

Dzielenie bez reszty

r = a/b;

2

/

Dzielenie z resztą (dla obu liczb całkowitych)

i = a / b;

2

%

Reszta z dzielenia

i = a $ b;

2

+

Dodawanie

a = a+b;

3

-

Odejmowanie

a = a-b;

3

Operatory porównania

==

Równe

jeżeli (a == b) ...

4

!=

Nierówne

jeżeli (a != b)  ...

4

< 

Mniejsze

jeżeli (a < b)  ...

4

<=

Mniejsze równe

jeżeli (a <= b) ...

4

> 

Większe

jeżeli (a > b)  ...

4

>=

Większe równe

jeżeli (a >= b) ...

4

Operatory logiczne i bitowe

!

Negacja

jeżeli ( !(a<4)) ...

1

&&

Iloczyn logiczny

jeżeli ( (a<4) && (a>1) )...

2

||

Suma logiczna

jeżeli ( (a>=4) || (a<=1) )...

3