Metody realizacji języków programowania/MRJP Ćwiczenia 4: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Linia 32: Linia 32:
 
== Zadanie - realizacja pętli FOR ==
 
== Zadanie - realizacja pętli FOR ==
  
Zaprojektuj sposób realizacji pętli "for zmienna:=Wyrazenie1 to Wyrazenie2 do Instrukcja" języka '''Pascal'''. Pamiętaj, że '''Wyrażenie1''' i '''Wyrażenie2''' powinny być liczone tylko raz, przed pierwszym obrotem pętli. Sprawdź, czy twoje rozwiązanie działa prawidłowo, gdy wartością '''Wyrazenie2''' jest największa reprezentowalna liczba całkowita ('''maxint''' w '''Pascalu''').
+
Zaprojektuj sposób realizacji pętli
 +
 
 +
'''for''' zmienna:=Wyrazenie1 '''to''' Wyrazenie2 '''do''' Instrukcja
 +
 
 +
języka '''Pascal'''. Pamiętaj, że '''Wyrażenie1''' i '''Wyrażenie2''' powinny być liczone tylko raz, przed pierwszym obrotem pętli. Sprawdź, czy twoje rozwiązanie działa prawidłowo, gdy wartością '''Wyrazenie2''' jest największa reprezentowalna liczba całkowita ('''maxint''' w '''Pascalu''').

Wersja z 18:00, 30 wrz 2006

Zadanie - generowanie kodu dla wyrażeń

Zakładając, że t jest tablicą zadeklarowaną

var t:array [1..100] of integer;

podaj kod na NMW liczący wartość wyrażenia:

t[2*t[i]+1]-5

Załóż, że tablica t znajduje się w pamięci pod adresem adres_t.

Zadanie - generowanie kodu dla wyrażeń i przypisań

Zapisz fragment kodu na NMW będący tłumaczeniem następującego fragmentu programu:

x:=y+2*z; z:=(x+1)*(y-1); x:=x+1

Zadanie - generowanie kodu dla instrukcji warunkowych i pętli

Zapisz fragment kodu na NMW będący tłumaczeniem następującego fragmentu programu:

if x<>z then
  while x<100 do
    if x=1 then
      repeat
        x:=x+5
      until x>10
    else
      x:=x+1

Zadanie - realizacja pętli FOR

Zaprojektuj sposób realizacji pętli

for zmienna:=Wyrazenie1 to Wyrazenie2 do Instrukcja

języka Pascal. Pamiętaj, że Wyrażenie1 i Wyrażenie2 powinny być liczone tylko raz, przed pierwszym obrotem pętli. Sprawdź, czy twoje rozwiązanie działa prawidłowo, gdy wartością Wyrazenie2 jest największa reprezentowalna liczba całkowita (maxint w Pascalu).