【发布时间】:2021-12-25 07:35:26
【问题描述】:
所以我试图从一个文件中读取一个二维矩阵,以便我可以将两个矩阵相乘。我可以打印矩阵的各个行,但我不能让子例程返回整个矩阵。我不确定我做错了什么。我从我正在使用的文件中粘贴了测试矩阵:
12345
67890
34567
我得到的输出是:
final matrix is: ##THIS IS WHAT I AM TRYING TO PRINT OUT BUT I GET NOTHING
row is:12345
row is:67890
row is:34567
【问题讨论】:
-
代码图片没用。复制并粘贴代码和输入/输出。
-
其中一个问题是使用新的变量声明来存储您的值。
my $matrix_name,一个标量变量。它将超出 else 块之外的范围。此外,它与my @matrix_name不是同一个变量,后者是一个同名数组。此外,语句print my @var总是不会打印任何内容,因为您正在声明变量,这意味着它将为空。您不会收到警告,因为它是一个数组。我无法判断您的代码中是否还有更多错误,因为我无法测试运行图像并查看它是否有效。 :) -
@Sarah 请包含输入矩阵文件的示例。
-
@HåkonHægland 我已经发布了输入矩阵文件的示例并粘贴了输入/输出
-
@Sarah 在输入文件中,数字之间是否有空格?例如在第一行你显示为
12345,但我怀疑你的意思是写成1 2 3 4 5
标签: perl matrix subroutine file-read