Discussion:
[問題]找出樣板
(时间太久无法回复)
IL Night
2007-05-28 22:20:17 UTC
Permalink
例:輸入格式 2000 2300 24
2000(起始值)
2300(結束值)
24(樣板)

輸出:
2024 2124 2224 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249
數字內含有"24"的都予以輸出

我的程式碼如下...
可是一直沒辦法跑

這是為什麼呢






public class TEST
{
public static void main(String[] args)
{
int[] xa = new int[3];
xa[0] = Integer.parseInt(args[0]);
xa[1] = Integer.parseInt(args[1]);
xa[2] = Integer.parseInt(args[2]);
int i=check(xa[0],xa[1],xa[2]);
if (i==1)
{
int w,s=xa[1],x=xa[2];
for(w=xa[0];w<=s;w++)
{
String number0,number1;
number0=Integer.toString(w);
number1=Integer.toString(s);
int r=0,p=0,e=0,f=0,m,t,z,lx;
boolean n;
String str0 = new String(number0);
String str1 = new String(number1);
e=str0.length();
f=str1.length();
while(r<e)
{
if (str1.charAt(p)==str0.charAt(r))
{
t=r+1;
z=p+1;
for(m=0;m<f;m++)
{
lx=f-1;
if ((str1.charAt(z)==str0.charAt(t))&&(z<f)&&(t<e))
{
z++;
t++;
}
else
{
if (m==lx) {System.out.println(w+" ,");}
else {r=r+1;break;}
}
}



}
else
{
r=r+1;
}

}
}
}
else{System.out.println("程式結束");}

}

public static int check(int a, int b, int c)
{
int y=((a==0)&&(b==0)&&(c==0))?0:1;
return y;
}

}

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.64.236.186
骨頭
2007-05-28 22:43:59 UTC
Permalink
※ 引述《williewillie (IL Night)》之銘言:
: 例:輸入格式 2000 2300 24
: 2000(起始值)
: 2300(結束值)
: 24(樣板)
: 輸出:
: 2024 2124 2224 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249
: 數字內含有"24"的都予以輸出
: 我的程式碼如下...
: 可是一直沒辦法跑
: 這是為什麼呢

1.程式碼至少排版一下吧T^T
2.編譯沒有問題
3.如果是Exception至少貼Exception message上來
4.你的程式碼命名邏輯非常糟糕(個人意見)
至少我第一眼看完......完全不曉得你想幹麻 ̄▽ ̄

5.我跑完之後看了一下是index溢位,無奈完全看不懂你的邏輯。

只知道你似乎想要透過計算 樣版是否有連續出現來當判斷條件
那個for 應該是最有問題的...- -a

只是你的變數名稱取得太奇妙 ...連看都不想看...T^T


還有....其實我不懂你為甚麼要這麼麻煩....
寫成底下這樣你不覺得很簡單明瞭嗎T^T

---

public static void main(String[] args) {

int start = Integer.parseInt(args[0]);
int end = Integer.parseInt(args[1]);
int template = Integer.parseInt(args[2]);

String templatestr = args[2];

if (check(start, end, template)) {
for (int num = start; num <= end; num++) {
String numStr = Integer.toString(num);

if (numStr.indexOf(templatestr) != -1) {
System.out.println(numStr);
}
}
} else {
System.out.println("程式結束");
}
}
public static boolean check(int a, int b, int c) {
return !((a == 0) && (b == 0) && (c == 0)) ;
}



--
 ▄▅▆▇███▇▆▅▄▃        ╰┼╯─╮ ╮       
 ◥███████████◣       ╰┼╯=│=│         
◥██████───────◣    *. ╯  ╯ ╯  物 語 .*
 ◥███████──────◣ ~ ◢◣             ◢◣
 ◥██████───────◤   ◥◤*  空白的世界.翼 *◥◤
  ◥██▁▂▃▄▅▆▇███▆▅▄▃▂▂~telnet://tony1223.no-ip.info

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.134.27.68

继续阅读narkive:
Loading...