想求coor中的每个点到sta中的三个点的距离并在result中输出?该怎么做?

coor[][]是三个点的经纬度和高程前两列分别是经度和纬度,可是在 result[o][p]=Math.sqrt(Math.pow(coor[i][0]-sta[m][1],2)+Math.pow(coor[i][1]-sta[m][2],2));行出现了标题中的问题,请问应该怎么改。我是java初学者,希望大家能帮帮忙。
import java.io.*;
public class Dis5{
public static void main(String args[]){
try{
double [][] coor= new double[3][3];
double [][] result= new double[3][3];
int [] ori=new int[9];
int i=0,j;
int m=0,n;
int o,p;
double [][] sta={{1,363855.75,4039483.23},{2,363314.52,4039455.38},{3,364354.27,4039395.10}};
for(o=0;o<=2;o=o+1){  
for(p=0;p<=2;p=p+1){  
result[o][p]=Math.sqrt(Math.pow(coor[i][0]-sta[m][1],2)+Math.pow(coor[i][1]-sta[m][2],2));
System.out.println(result[o][0]+"\t"+result[o][1]+"\t"+result[o][2]);
}
m=m+1;
}
i=i+1;

fr.close();
fw.close();

}catch (Exception e){
System.out.println("出现错误");
e.printStackTrace();
}
}
}

眼眸繁星
浏览 61回答 3
3回答

汪汪一只猫

数组下表越界for(o=0;o<=2;o=o+1){&nbsp;&nbsp;for(p=0;p<=2;p=p+1){&nbsp;&nbsp;改成for(o=0;o<2;o=o+1){&nbsp;&nbsp;for(p=0;p<2;p=p+1){&nbsp;&nbsp;最好 p++

慕标琳琳

看错误就是数组越界但是你代码贴出来的部分是没什么问题的.. 只是fr和fw这两个变量根本没定义

蛊毒传说

java数组越界,抛出异常,用array.length来限制就行
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java