我尝试实现一些代码块。我有四个数组。
double[]timea={1.0,2.0,3.0,4.0,5.0,6.0};
double[]speed={11.0,12.0,8.0,13.0,9.0,6.0};
double[]timeb={1.5,2.5,4.0,5.5};
double[]speedb={12.3,8.5,6.9,7.8};
第一个数组定义了一些时间,比如时间戳和每个时间块对应的一些相对速度。
比如1.0时代的速度是11.0,2.0时代的速度是12.0,3.0时代的速度是8.0……等等。
第三个数组定义时间戳 b 具有一些相应的速度。比如1.5时的速度是12.3,2.5时的速度是3.8,4.0时的速度是5.6……等等
我想写一个程序,将这些时间和速度相对于时间合并起来。
所以欲望输出将是
1.0 11.0
1.5 12.3
2.0 12.0
2.5 8.5
3.0 8.0
4.0 13.0
4.0 6.9
5.0 9.0
5.5 7.8
6.0 6.0
我为此写了一个代码
public class Check {
public static void main(String args[]){
Matrix abc=new Matrix(10,2);
double[]timea={1.0,2.0,3.0,4.0,5.0,6.0};
double[]speed={11.0,12.0,8.0,13.0,9.0,6.0};
double[]timeb={1.5,2.5,4.0,5.5};
double[]speedb={12.3,8.5,6.9,7.8};
int k=0,k1=0;
while(k<timea.length){
abc.set(k, 0, timea[k]);
abc.set(k, 1, speed[k]);
if(timea[k]<timeb[k1]){
abc.set(k,0,timeb[k1]);
abc.set(k,1,speedb[k1]);
if(k1<timeb.length-1){
k1++;
}
}
else if(timea[k]>timeb[k1]){
abc.set(k,0,timea[k]);
abc.set(k,1,speed[k]);
}
k++;
}
abc.print(3,6);
}
}
程序输出:
1.500000 12.300000
2.500000 8.500000
4.000000 6.900000
5.500000 7.800000
5.500000 7.800000
6.000000 6.000000
0.000000 0.000000
0.000000 0.000000
0.000000 0.000000
0.000000 0.000000
所以请帮我找出逻辑错误。
相关分类