## Vektor an eine Prozedur übergeben- ohne Einsatz von 'var' ? ! ? ! ?

webcamping

Mitglied
Hallo Community,

folgendes Problem möchte ich euch schildern.
Im Rahmen meines Praktikums war es meine Aufgabe Werte an Funktionen oder Prozeduren zu übergeben. Dies erwies sich im Rahmen von PASCAL als heikle Angelegenheit. Die meisten der dort gestellten Aufgaben konnte ich auch bewerksstelligen.
So z.B.: das übergeben eines Skalar an eine Prozedur unter Verwendung von 'var' und einmal nicht. in dessen Folge ich den Unterschied demonstrieren/ erklären sollte.

Was mir jetzt noch fehlt ist untenstehende Aufgabe.
Leider bin ich aus unerfindlichen Gründen nicht in der Lage letztere zu beantworten.
Ein großes Ärgernis!!

Kann mir jemand helfen? Wäre wirklich dankbar für jeglichen Support.


Schreiben Sie ein kleines Programm, dass einen Vektor an eine Prozedur übergibt. Verwenden Sie
nicht das Schlüsselwort 'var' und beschreiben Sie, was passiert. Versuchen Sie Ihre Beobachtungen
zu erklären.

Anhang: programmcode- der mehr oder minder funktioniert- oder auch nicht. sowie die Grundgesamtheit der Daten.

-River (Grundgesamtheit)
 

Anhänge

  • tmp.zip
    1,1 KB · Aufrufe: 22
Vielleicht nochmal als kleiner Nachtrag... im wesentlichen geht es mir um den Unterschied- Sprich: was passiert wenn man man 'var' aus der Programmierung entfernt und wie kann ich das Ergebnis interpretieren?

Vielen Dank nochmal
 
Moin!
Ohne das ich nun groß Ahnung von Pascal hätte, würde ich mal sagen, die Variante mit dem "var" ist eine Call-by-Reference Variante, ohne "var" Call-by-Value.
Im ersten Fall wird der Verweis, also ein Zeiger des Vektors der Prozedur übergeben. D.h. alles was ich in der Prozedur mit dem Vektor mache, bleiben auch ausserhalb der Prozedur bestehen. Demhingegen ist es bei Call-by-Value so, dass nur eine Kopie des Vectors übergeben wird. Somit sind alle Änderungen innerhalb der Prozedur an dem Vector ausserhalb nicht mehr sichtbar...

*grüssle*
 
Zurück