作者Dragoon (好无聊...)
看板C_Sharp
标题Re: [问题] 矩阵的建立
时间Sat Apr 28 20:41:00 2007
我的问题好像不是问得很好
我要的矩阵不用写出来
只要建立在程式内就好
我写了以下的矩阵
{
int n;
Console.Write("请输入阵列数:");
disks = Int32.Parse(Console.ReadLine());
int[][] stat;
stat = new int[3][];
for (int i = 0; i < 2; ++i)
{
if (i == 0)
{
for (int j = 0; j <= n; j++ )
stat[i][j] = j ;
}
else
{
for (int j = 0; j <= n; j++ )
stat[i][j] = 0;
}
}
想说做出来的矩阵应该就是我想要的
却发现程式可以执行
但输入数字後
却出现了奇怪的错误
不知道问题在哪@@
※ 引述《huangtim (消失)》之铭言:
: 首先呢,3 * n的矩阵
: 他的第一行只能容纳 0, 1, 2, ... n-1
: 然後你一定是赖副院长开的程设学生XD
: 你一定是想写河内塔作业吧,Hmm..你的方法我已经用过了
: 到後面可能会有输出到萤幕上的瓶颈,所以我後来换了三套标记哪里有碟盘的方法
: Anyway..作业要自己写:P
: 依照你的需求如下~然後你的是横的,我的是直的,这不会有差别,写横的也是可以啦
: 判断输入部分是否为整数请用try & catch去写一个副程式检查,我就不多加着墨了
: {
: Console.Write("Please enter a integer number : ");
: int n = Int32.Parse(Console.ReadLine());
: Console.WriteLine("Press any key to build the Array...");
: Console.ReadLine();
: int i, j;
: string output = "";
: int[][] array = new int[n][];
: for (i = 0; i < n; ++i )
: {
: array[i] = new int[] { i, 0, 0 };
: }
: for(i = 0; i < n; ++i)
: {
: for (j = 0; j < 3; ++j)
: {
: if (j == 2)
: output += array[i][j] + "\n";
: else
: output += array[i][j] + ",";
: }
: }
: Console.WriteLine(output);
: Console.ReadLine();
: }
: ※ 引述《Dragoon (好无聊...)》之铭言:
: : 我是第一次写程式
: : 所以如果问题很笨请多多见谅
: : 现在想做的
: : 是建立一个dynamic的矩阵
: : 在使用者输入一个数字 N 後
: : 会跑出 3 X N 的矩阵
: : 其中第一行固定是 0, 1, 2...N
: : 第二、三行都是N个 0
: : 像下面这样
: : 0 1 2 3 4 .... N
: : 0 0 0 0 0 .... 0
: : 0 0 0 0 0 .... 0
: : 不知道要怎麽写
: : 请教板上高手<(_ _)>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.4.234
1F:→ huangtim:把j++改成++j,然後记得用new去初始化每个参照索引 04/28 21:48
2F:推 huangtim:我没上机compile,你可以试试看,另,若不考虑print 04/28 21:51
3F:→ huangtim:之後还要写一个print副程式去判断stat内每个数值再输出 04/28 21:51