Języki programowania, MECH 2011
Na czym polega kompilacja, interpretacja
Kompilacja jest to proces tłumaczenia napisanego programy w jezyku wyszego poziomu na język maszynowy w kompilatorze.
Podział języków programowania
Języki wysokiego poziomu :np.: Basic, C , Pascal.
Języki niższego poziomu : j.maszynowy, assembler.
Struktura programu w języku Pascal;
PROGRAM Nazwa_Programu: //nagłówek programu
USES // deklaracja modułów
//początek części opisowej
LABEL
CONST - deklaracja stałych
TYPE -deklaracja typów
VAR - deklaracja zmiennych
PROCEDURE/FUNCTION
BEGIN
END;
END.
W jaki sposób deklaruje się: typy, etykiety, stałe, zmienne?
Typy:
TYPE Dzien = (pon, wt, Sr, czw, pt);
TYPE x=Real;
TYPE Number = integer;
Etykiety
LABEL
Stałe
CONST MaxWysokosc = 100;
Mi = pi *4e-7
Zmienna
VAR
Wynik,y,x: byte;
L : integer;
Jakie znasz typy porządkowe? - podaj przykłady.
Wyliczeniowy TYPE Uczniowie=(antek,Franek,Zenek);
Całkowity TYPE Xx=integer; - również shortint, byte, word, longint.
Logiczny (boolean, ByteBool, WordBool, LongBool)
Znakowy CHAR
Okrojony TYPE Litery='A' .. `Z'; (ważne są te kropki pomiędzy)
Wyjaśnij pojęcie typu rekordowego, łańcuchowego, zbiorowego, plikowego, tablicowego - podaj przykłady.
Typ rekordowy - rekord, złożona struktura danych, której składowe, zwane polami mogą być różnego typu np.:
TYPE Data=rekord
Rok: integer;
Miesiąc: 1..12;
Dzien: 1..31;
End;
Typ zbiorowy jest zbiorem potęgowym danego typu porządkowego, tzn. jest zbiorem wszystkich podzbiorów tego typu, w tym typu pustego, np.:
TYPE Klasy=set of(LO_1d, LO_2d, LO_3d);
Typ plikowy jest sciśle powiązanyy z plikami. Plik jest ciągiem elementów tego samego typu, tyle, że liczba tych elementów jest zmienna.
TYPE Dane=file of integer;
Typ tablicowy - tablica, składa się z ustalonej liczby elementów tego samego typu, zwanego typem składowym. Za pomocą tablic są reprezentowane regularne układy danych.
TYPE Macierz=array[1..20,1..30] of real;
W jaki sposób deklarujemy zmienne?
Wyrażenia w języku Pascal.
W=aray[1..10,1..11] of real;
VAR
x,y,z:real;
a,b:W;
Jakie znasz rodzaje operatorów?
:= (operator przypisania)
Operatory arytmetyczne:
+ (dodawanie)
- (odejmowanie)
* (mnożenie)
/ (dzielenie)
DIV (dzielenie całkowite)
MOD (reszta z dzielenia całkowitego)
Operatory relacyjne:
> (większe)
< (mniejsze)
= (równe)
<> (różne)
>= (większe lub równe)
<= (mniejsze lub równe)
Operatory logiczne:
AND (koniunkcja)
OR (alternatywa)
NOT (negacja)
10. Instrukcje proste:
Przypisania ( A:=3 )
Skoku (GOTO A)
Puste (;)
Wywołania procedury - Nazwa_procedury(lista_parametrów);
Inline - (dołączenie do programu krótkich podprogramów napisanych w kodzie maszynowym) - inline (lista_elementów)
11. Instrukcje strukturalne:
Złożone
Warunkowe
If .. then
Case .. of
Iteracyjne
For .. do
While .. do
Repeat .. until
Wiążące
Asemblerowe
12. Przykłady instrukcji iteracyjnych (pyt. 4)
13. Przykłady instrukcji warunkowych (pyt. 4)
14. Parametry formalne i aktualne
Lista parametrów formalnych określa sposób (kolejność oraz typ) w jaki ta lista ma być zastąpiona listą parametrów aktualnych przy wywołaniu funkcji lub procedury. Np.
PROCEDURE obl(x,y,z:Real; i:integer); <- parametry formalne
Obl (a,y+k, sqrt(w), j+5); <- parametry aktualne
15. Sposoby przekazywania informacji z (do) procedur (funkcji)
Przekazywanie przez wartość
Przez stałę określonego typu
Przez zmienne określonego typu
Przez stałe nieokreślonego typu
Przez zmienne nieokreślonego typu
Parametry otwarte
16. Podaj procedury obliczania silni, elementów ciągu fibbonaciego, NWP, działań na liczbach zespolonych, rozwiązywania równania kwadratowego macierzy.
17. Typy plików
18. Instrukcje tworzenia, otwarcia i zamknięcia plików
Tworzenie:
Rewrite (F)
Otwarcie:
Reset (F)
Zamykanie
Close (F)
19. Zapis i odczyt danych z plików tekstowych zdefiniowanych i niezdefiniowanych
Zapis
Write(F)
Writeln
Odczyt
Read(F)
Readln
Dla niezdefiniowanyc
BlockWrite, BlockRead
Operacje na plikach i ich przeszukiwanie
Jakie znasz instrukcje sterujące tokiem obliczeń?
Struktura modułu.
Unit nazwa_modułu;
--> Interface
Definicje stałych, typów, zmiennych, lista nagłówków procedur i funkcji;[Author:F.K.]
--> Implementation
Deklaracje modułów, stałych, typów, zmiennych wewnętrznych
Definicje procedur i funkcji ( z części opisowej)
Definicje procedur i funkcji wewnętrznych[Author:F.K.]
End.[Author:F.K.]
Sposób deklaracji modułów.
Jakie znasz moduły standardowe?
Printer - umożliwia dostęp do drukarki
System - funkcje obsługi zbiorów, konwersji, f. arytmetyczne, porządkowe, wywołujące operacje na łańcuchach.
Crt - moduł obsługi ekranu i klawiatury
Dos - umożliwia wykonywanie poleceń systemu operacyjnego
Graph - zawiera funkcje i procedury do obsługi grafiki ekranowej
Springs - operacje na łańcuchach otwartych
Overlay 0 umożliwia dzielenie programu na segmenty
Wyjaśnij pojęcia: typy proceduralnych i obiektowych.
Przykłady funkcji i procedur: arytmetycznych, konwersji danych, operacji porządkowych,
Podaj przykład definicji klasy
Co rozumiesz pod pojęciem VCL
Wyjaśnij pojęcia dotyczące programowania obiektowego: dziedziczenie, polimorfizm, hermetyczność
Dziedziczenie - umożliwia programiście definiowanie potomków istniejących obiektów
Polimorfizm - umożliwia tworzenie w obiektach potomnych metod o takich samych nazwach jak w obiektach nadrzędnych, ale wykonujących różne czynności.
Hermetyczność oznacza, że struktury danych i kody programowe są połączone w całościową jednostke programową, zwaną obiektem
Co jest wynikiem działania procedury/funkcji czy fragmentu programu zapisanego w języku Pascal (……. fragment kodu źródłowego…….)
Napisz fragment programu realizujący ………
Część opisowa
Część implementacyjna
Część inicjująca