Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.File;
- import java.io.FileNotFoundException;
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.List;
- import java.util.Scanner;
- import java.text.DecimalFormat;
- import java.io.PrintWriter;
- public class PersonAvstand {
- public static void main(String[] args) {
- System.out.println("Hvilken fil skal leses inn? ");
- Scanner in = new Scanner(System.in);
- String filnavn = in.nextLine();
- List<String> navn = new ArrayList<String>();
- List<Double> koordinater_liste_y = new ArrayList<Double>();
- List<Double> koordinater_liste_x = new ArrayList<Double>();
- int tall = 0;
- try {
- File fil = new File(filnavn);
- Scanner filleser = new Scanner(fil);
- if (filleser.hasNextLine()) {
- String linje = filleser.nextLine();
- tall = Integer.parseInt(linje);
- if (tall < 2) {
- System.out.println("Antall personer ma vare storre enn 2.");
- System.exit(0);
- }
- while (filleser.hasNextLine()) {
- List<Double> koordinater_liste = new ArrayList<Double>();
- linje = filleser.nextLine();
- sjekk(linje);
- Scanner scr = new Scanner(linje);
- double koordinater;
- while (scr.hasNext()) {
- String inn = scr.next();
- try {
- koordinater = Double.parseDouble(inn);
- koordinater_liste.add(koordinater);
- }
- catch (NumberFormatException parse) {
- navn.add(inn);
- }
- }
- for (int i = 0; i < koordinater_liste.size(); i++) {
- if (i % 2 == 0) {
- double koordinat = koordinater_liste.get(i);
- koordinater_liste_x.add(koordinat);
- }
- else {
- double koordinat = koordinater_liste.get(i);
- koordinater_liste_y.add(koordinat);
- }
- }
- }
- System.out.println(koordinater_liste_x);
- System.out.println(navn);
- System.out.println(koordinater_liste_y);
- }
- else {
- System.out.println("Filen er tom.");
- System.exit(0);
- }
- filleser.close();
- }
- catch (FileNotFoundException unntak) {
- System.out.println("Filen " + filnavn + " eksisterer ikke.");
- System.exit(0);
- }
- catch (NumberFormatException parse) {
- System.out.println("Filen " + filnavn + " begynte ikke med et heltall.");
- System.exit(0);
- }
- System.out.println("Hvilken fil skal resultatet lagres til?");
- String filnavn_2 = in.nextLine();
- try {
- PrintWriter fil = new PrintWriter(filnavn_2);
- for (int i = 0; i < koordinater_liste_x.size(); i++) {
- for (int j = 0 ; j < koordinater_liste_y.size(); j++) {
- try {
- double avstand = Math.sqrt(Math.pow((koordinater_liste_x.get(i) - koordinater_liste_x.get(i+1)), 2) + Math.pow((koordinater_liste_y.get(j)-koordinater_liste_y.get(j+1)), 2));
- System.out.println(avstand);
- }
- catch (IndexOutOfBoundsException feil) {
- }
- }
- }
- }
- catch (FileNotFoundException unntak_2) {
- System.out.println("Filen " + filnavn_2 + " kan ikke lagres");
- System.exit(0);
- }
- in.close();
- }
- public static boolean sjekk(String linje) {
- Scanner scr = new Scanner(linje);
- List<String> navn = new ArrayList<String>();
- List<Double> koordinater_liste = new ArrayList<Double>();
- double koordinater;
- while (scr.hasNext()) {
- String in = scr.next();
- try {
- koordinater = Double.parseDouble(in);
- koordinater_liste.add(koordinater);
- }
- catch (NumberFormatException parse) {
- navn.add(in);
- }
- }
- scr.close();
- if (koordinater_liste.size() == 2 && navn.size() == 1) {
- return true;
- }
- else {
- System.out.println("Feil formatert linje. Data magler.");
- System.exit(0);
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement