Я создал простой код ООП для расчета процентилей.Когда я тестирую его в основном классе, он работает нормально, но продолжает работать бесконечно, даже если код закончен.Я попробовал это на своем ноутбуке вместо ПК (тот же код и та же версия Netbeans), и он работал отлично, останавливаясь, когда он закончился.
Вот класс методов:
package P1;
import javax.swing.JOptionPane;
public class methods {
public double[] ar;
public void createAR(int n) {
ar = new double[n];
for (int c = 0; c < ar.length; c++) {
ar[c] = Double.parseDouble(JOptionPane.showInputDialog("Enter value #" + (c + 1) + "."));
}
}
public void sort() {
double flag = 0.0;
for (int r = 0; r < ar.length - 1; r++) {
for (int c = 0; c < ar.length - 1; c++) {
if (ar[c] > ar[c + 1]) {
flag = ar[c];
ar[c] = ar[c + 1];
ar[c + 1] = flag;
}
}
}
}
public int absFreq(double n) {
int ac = 0;
for (int c = 0; c < ar.length; c++) {
if (ar[c] == n) {
ac++;
}
}
return ac;
}
public String percentile(double n) {
sort();
int r = 0;
double mydouble = (n / 100) * (ar.length + 1);
r = (int) mydouble;
return "The percentile " + n + " is: " + ar[r - 1];
}
}
Вот главное:
package P1;
import javax.swing.JOptionPane;
public class main {
public static void main(String[] args) {
methods obj = new methods();
obj.createAR(10);
JOptionPane.showMessageDialog(null, obj.percentile(50));
}
}