个人工具

“沙盒”的版本间的差异

来自Ubuntu中文

跳转至: 导航, 搜索
第1行: 第1行:
[[小山的个人专栏]]
+
当一个程序的代码编辑是正确的,而运行结果是错误的时候,可以采用程序分段检测的方法,找出错误的具体位置,从而改正。例如,一道编程的题目:输出100到999之间的所有水仙花数。我刚开始的编程如下:
 
+
public class C
{{11.10source}}
+
{
请注意您对Ubuntu中文的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
+
  public static void main(String[] args)
您同时也要向我们保证您所提交的内容是您自己所作,
+
{
 +
int a[];
 +
int i,b1,b2,b3,c;
 +
a=new int[1000];
 +
System.out.print("100到999之间的水仙花数有: ");
 +
for(i=100;i<a.length;i++)
 +
{a[i]=i;
 +
b1=a[i]/100;
 +
c=a[i]-100*b1;
 +
b2=c/10;
 +
b3=c%10;
 +
if((b1^3+b2^3+b3^3)==a[i])
 +
System.out.print(a[i]+"\t");}
 +
    }
 +
}
 +
没有错误提示,也得不出运行结果。于是我把程序分为“数组的输入”和“水仙花数的判断”两部分。
 +
Section 1
 +
int a[];
 +
a=new int[1000];
 +
for(i=100;i<a.length;i++)
 +
System.out.print(a[i]+"\t");
 +
运行发现可以正确输出数组中所有的数,所以程序肯定是在第二部分出错,后来发现“b1^3+b2^3+b3^3”应该写成“b1*b1*b1+b2*b2*b2+b3*b3*b3”才是正确的。个人觉得程序分段检测是一个不错的方法。

2012年7月20日 (五) 10:52的版本

当一个程序的代码编辑是正确的,而运行结果是错误的时候,可以采用程序分段检测的方法,找出错误的具体位置,从而改正。例如,一道编程的题目:输出100到999之间的所有水仙花数。我刚开始的编程如下: public class C {

  public static void main(String[] args) 

{ int a[]; int i,b1,b2,b3,c; a=new int[1000]; System.out.print("100到999之间的水仙花数有: "); for(i=100;i<a.length;i++) {a[i]=i; b1=a[i]/100; c=a[i]-100*b1; b2=c/10; b3=c%10; if((b1^3+b2^3+b3^3)==a[i]) System.out.print(a[i]+"\t");}

   }

} 没有错误提示,也得不出运行结果。于是我把程序分为“数组的输入”和“水仙花数的判断”两部分。 Section 1 int a[]; a=new int[1000]; for(i=100;i<a.length;i++) System.out.print(a[i]+"\t"); 运行发现可以正确输出数组中所有的数,所以程序肯定是在第二部分出错,后来发现“b1^3+b2^3+b3^3”应该写成“b1*b1*b1+b2*b2*b2+b3*b3*b3”才是正确的。个人觉得程序分段检测是一个不错的方法。