Dodaj do ulubionych

pytanie z pascala

10.01.04, 19:41
Czy mozliwa jest taka deklaracja, aby ponizsze odwolania byly poprawne:
a^b.c
b.c(4)
a[5]^[6]
jezeli tak to napiscie jakie
Dzieki
Obserwuj wątek
    • maciejowy Re: pytanie z pascala 10.01.04, 20:03
      tylko mi pascala nie przypominaj! :)
    • Gość: mich_oles Re: pytanie z pascala IP: *.toya.net.pl 11.01.04, 14:28
      Czy to miałby być program obliczający te dane?
      • Gość: tswiercz Re: pytanie z pascala IP: *.energis.pl 11.01.04, 15:02
        Nie, to jest pytania na kolosa.
        Mozesz to potraktowac np. a[3]^[3]:=3;
        • tswiercz Re: pytanie z pascala 11.01.04, 23:03
          Nie mowcie, ze nikt nie zna pascala.
          Ja mam jutro kolosa i musze to wiedziec
          HELP
          • bwv1004 Re: pytanie z pascala 11.01.04, 23:23
            Nie mam siły myśleć o tej porze, próbuj na

            forum.4programmers.net/
            lub binboy.org
    • Gość: Krzysztof Re: pytanie z pascala IP: *.internetdsl.tpnet.pl 12.01.04, 14:55
      Jeśli potrzebne Ci to jest do kolokwium, to chyba się spóźniłem ale niestety
      dopiero teraz przeczytałem to pytanie. Ale lepiej późno niż nigdy jak to
      stwierdziła pewna babcia spóźniwszy się na pociąg. A więc do rzeczy.
      Nie da się tak zadeklarować obiektów a oraz b (c - zgodnie z tym w jakim
      konteksie jest użyte - jest elementem wewnętrznym w b) tak aby przedstawione T3
      linijki mogły występować obok siebie w jednym programie.
      Po pierwsze trzecia linijka jest niepoprawna sama w sobie zarówno w Pascalu
      wzorcowym jak również w dowolnej (mi znanej) implementacji. a[5] oznacza
      element tablicy a posiadający indeks 5 (nie koniecznie piąty, bo tablica może
      mieć elementy indeksowane np od -3 albo od 4). Ten element jest podnoszony do
      potęgi i tu jest absurd, ponieważ [6] może być indeksem dla jakiejś tablicy ale
      samo w sobie nie ma sensu.
      Po drugie pierwsza linijka też nie ma sensu. Bo jeżeli a jest tablicą (to już
      było - wynika to linijki trzeciej), to dla całej tablicy nie jest określona
      operacja podnoszenia do potęgi.
      Po trzecie pierwsza i druga linijka są ze sobą sprzeczne. Z faktu, że a
      podnosimy do jakiejś potęgi wynika, że wykładnik powinien być liczbą. Tutaj
      oznacza to, że b jest rekordem, który posiada pole c o wartości liczbowej.
      Tymczasem w linijce drugiej b.c jest użyte z argumentem (4) co sugeruje, że b.c
      jest procedurą lub funkcją przy założeniu, że zostało to wyrwane z kontekstu
      jakiegoś wyrażenia.
      Po czwarte druga linijka w Pascalu wzorcowym jest niepoprawna bez względu na
      kontekst z linijką pierwszą, ponieważ rekord nie może zawieraćj pola będącego
      procedurą lub funkcją.

Nie masz jeszcze konta? Zarejestruj się


Nakarm Pajacyka