1

问题:编写一个名为 Print7 的程序,打印 0:100 范围内可被 7 整除的所有整数。将在一个输出行上打印 10 个数字。因此编写一个调用该过程的程序。

这就是我所做的

 file = fopen('print7.dat','r');

 x = 1:100

 for x=[1:100]
   if mod(x,7) == 0;
    print7 = [x]
 end
end
 fprintf('print7 %d\n', print7)

现在它的输出变成了数字 98 - 我理解这是 100 下可被 7 整除的最大数字。但我想要一个 10xn 类似矩阵的结果。

我该怎么办?

4

2 回答 2

1

您正在做的事情将您的结果存储在一个变量中,并在每次迭代中覆盖该变量。您可以像这样直接打印它:

c=0;
 for x=[1:100]
   if mod(x,7) == 0
      fprintf('%3d',x)
      c=c+1;
      if mod(c,10) ==0
        fprintf('\n')
      end
   end
end
于 2013-05-13T02:17:34.810 回答
0
fileID = fopen('print7.dat','r');

for x = 1:100
if(mod(x,7) == 0)
   fprintf(fileID,'%d',x);
end %end of if
end %end of for

fclose(fileID);
于 2013-05-13T02:34:20.333 回答