これが私のコードで、条件をチェックしていませんが、if条件は機能しています。それはすべて私には大丈夫だと思われるので、私は一体何が起こっているのか少しもわかりません。
import java.lang.Integer;
public class Wielomian
{
public double [] mnozniki;
public int max;
Wielomian(String ciag)
{
int tmp;
int stopien;
//int iteration=0;
int poczatek=0;
tmp=ciag.indexOf('^');
stopien=Integer.valueOf(ciag.substring(tmp+1,tmp+2));
mnozniki = new double[stopien+1];
max = stopien;
tmp=0;
for(int i=1; i< ciag.length() ; ++i)// +1.0*x^3-1.0*x^1-2.0
{
//System.out.println("some:"+i);
if(ciag.charAt(i)=='*')
{
// System.out.println("some:k");
stopien=Integer.valueOf(ciag.substring(i+3,i+4));
int iteration=i;
while(((ciag.charAt(iteration))!='-')||((ciag.charAt(iteration))!='+'))
{
// System.out.println("some2:"+iteration);
--iteration;
if (iteration<=0) break;
}
poczatek=iteration;
mnozniki[stopien]=Double.parseDouble(ciag.substring(poczatek,i-1));
}
}
}
public void wypisz()
{
int i;
for(i=0;i<max;++i)
{
System.out.println("x^" + i+":"+mnozniki[i]);
}
}
そしてメインクラス:
public class lab03
{
public static void main(String args[])
{
String n ="1.0*x^3-1.0*x^1-2.0";
Wielomian wx = new Wielomian(n);
wx.wypisz();
}
}
ペーストビンの場合:http://pastebin.com/sgpY2AuGhttp: //pastebin.com/eqXHNk0N < -行35を無視します