Scrieti un program Java care sa sorteze un tablou care contine numere reale citite
dintr-un fisier. Vectorul sortat va fi scris tot intr-un fisier.
Răspunsuri la întrebare
Răspuns:
Iata un exemplu de program Java care poate sorta un vector de numere reale citite dintr-un fisier si scrie vectorul sortat intr-un fisier:
import java.io.*;
import java.util.*;
public class SortVector {
public static void main(String[] args) throws IOException {
// Deschide fisierul de intrare pentru citire
BufferedReader in = new BufferedReader(new FileReader("vector.txt"));
// Citeste linia cu elementele vectorului
String line = in.readLine();
// Imparte linia in tokeni separati de spatii
String[] tokens = line.split("\\s+");
// Converteste tokenii in elemente numerice ale vectorului
double[] vector = new double[tokens.length];
for (int i = 0; i < tokens.length; i++) {
vector[i] = Double.parseDouble(tokens[i]);
}
// Inchide fisierul de intrare
in.close();
// Sorteaza vectorul
Arrays.sort(vector);
// Deschide fisierul de iesire pentru scriere
PrintWriter out = new PrintWriter(new FileWriter("vector_sortat.txt"));
for (int i = 0; i < vector.length; i++) {
out.println(vector[i]);
}
out.close();
}
}
Acest program presupune ca fisierul de intrare se numeste "vector.txt" si are o singura linie care contine elementele vectorului separate de spatii. Dupa ce citeste acest fisier, programul converteste elementele liniei in elemente numerice ale vectorului si sorteaza vectorul folosind functia sort() din clasa Arrays. In final, programul scrie vectorul sortat intr-un fisier numit "vector_sortat.txt".