Arrays 过程中的固定大小数组-Pascal Zim

Arrays 过程中的固定大小数组-Pascal Zim,arrays,pascal,procedure,Arrays,Pascal,Procedure,我在学校有一门课叫“信息应用”(不知道英语中的正确单词)。我有一个我正试图解决的练习(学习有关过程和函数的测试)。但我不知道如何在过程中声明数组 下一步是: 用Pascal编写一个程序,它可以让你在十天的工作时间内记录旅行的距离。 1) 声明一个包含十个元素(一维)的数组以注册偏差。2) 在Radist中创建过程,以便用户能够键入到阵列的十个距离 还有更多的步骤,但是如果我学会了如何在一个过程中打开一个固定大小的数组,我可以完成其余的步骤 我把练习从葡萄牙语翻译成英语,所以它可能不是你读过的最好

我在学校有一门课叫“信息应用”(不知道英语中的正确单词)。我有一个我正试图解决的练习(学习有关过程和函数的测试)。但我不知道如何在过程中声明数组

下一步是:

用Pascal编写一个程序,它可以让你在十天的工作时间内记录旅行的距离。 1) 声明一个包含十个元素(一维)的数组以注册偏差。2) 在Radist中创建过程,以便用户能够键入到阵列的十个距离

还有更多的步骤,但是如果我学会了如何在一个过程中打开一个固定大小的数组,我可以完成其余的步骤

我把练习从葡萄牙语翻译成英语,所以它可能不是你读过的最好的英语


我不知道这是否重要,但我已经看到了一些解释(从不使用固定大小的数组(我们知道,在本例中,该数组将类似于实数的数组[1..10]),它们以常量或类型打开数组。在类中,我们总是在变量中打开数组。

为了在pascal中传递数组,请声明类型:

Type
  TMyDistanceArray = array[1..10] of real;
然后只需声明程序:

procedure InsiraDist( var distance : TMyDistanceArray);
begin
  // Edit the contents of distance[1]..distance[10]
end;
数组参数前面的
var
声明表示数组是通过引用传递的。
distance
参数的任何更改都将直接作用于传递的数组。如果数组参数的前缀改为
const
,那么如果您试图进行更改,编译器会抱怨。如果没有任何前缀,所有更改将只在过程中结束,因为将传递数组的副本

var
  myArray : TMyDistanceArray; 
begin
  InsiraDist(myArray); // Edit the array
  ...

我想他也应该声明一个这种类型的全局变量,并将其传递给过程。他似乎还不太清楚常量、变量和类型之间的区别,ISTM。是的,这是真的。在课堂上,我的老师从不使用打字。我只知道var或const。你说“打开”数组是什么意思?你是说“声明数组”吗?你知道类型、常量或变量之间的区别吗?它们不是一回事。是的,我的意思是“声明数组”。翻译的时候我选错了词,对不起。