My goal is to print a chart that displays "enemy" number, x and y coordinates, then their distance in respect to the other "enemies", but with my following nested loop below, the enemy number, and coordinates are reversed with the distance numbers. I've tried adjusting the position of the codes, but they don't seem to fix the issue.
public static void main(String[] args) {
// array of enemy coordinates
int[] xCoords = {1, 4, 5, 5, 7, 10};
int[] yCoords = {3, 4, 6, 2, 5, 2};
System.out.println("________Enemy Distance Chart________");
System.out.println("\t\t\t\t\t\tDistance To (Kilometers)");
System.out.println("Enemies\t X Coord \tY Coord \tE-0\tE-1\tE-2\tE-3\tE-4\tE-5");
for (int i = 0; i < 6; i++) {
for (int j = 0; j < 6; j++) {
double distance = Math.sqrt((yCoords[j]-yCoords[i])*(yCoords[j]-yCoords[i]) + (xCoords[j]-xCoords[i])*(xCoords[j]-xCoords[i]));
System.out.printf("%.2f\t", distance);
}
// the following code below is somehow printed on the far right
System.out.println("E- " + i + "\t\t " + xCoords[i] + "\t " + yCoords[i]);
}
for (int i = 0; i < 6; i++) {
System.out.printf("E-" + i + "\t\t" + xCoords[i] + "\t\t" + yCoords[i] + "\t\t");
for (int j = 0; j < 6; j++) {
double distance = Math.sqrt((yCoords[j] - yCoords[i]) * (yCoords[j] - yCoords[i]) + (xCoords[j] - xCoords[i]) * (xCoords[j] - xCoords[i]));
System.out.printf("%.2f\t", distance);
}
System.out.println();
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.