Membuat Program Java Untuk Mencari Mean, Median, dan Modus

DailyBlog.id - Dalam matematika pasti kalian sudah pernah dengar yang namanya Mean, Median, dan Modus. Pada kesempatan kali ini saya akan membagikan tutorial untuk kalian semua bagaimana cara membuat program Java untuk mencari nilai mean, median dan modus dari suatu data. Ketika program dijalan kan, maka hal pertama yang keluar yaitu program akan meminta berapa banyak data yang akan di input kan, lalu program tersebut meminta untuk memasukkan isi nilai ke data-data tersebut. Sebelum melanjutkan ke codingannya, disini saya ingin memberitau pada kalian mengenai apa itu mean, median dan modus bagi kalian yang sudah lupa.

Apa itu Mean, Median, dan Modus?

  • Mean dapat diartikan sebagai nilai rata-rata suatu kelompok data.
  • Median adalah nilai tengah data setelah diurutkan.
  • Modus merupakan nilai yang sering muncul dalam suatu kelompok data.


Nah, apakah kalian sudah mengerti dan sudah mulai mengingat kembali mengenai mean, median, dan modus. Jika kalian sudah mengerti, maka kalian bisa mulai mencoba untuk membuat program Java nya. Disini kalian bisa menggunakan NetBeans atau IntelliJ IDEA atau program lainnya yang bisa menjalankan bahasa pemrograman Java. Lalu kalian bisa copas script yang ada dibawah ini:

import java.util.Arrays;
import java.util.Objects;
import java.util.Scanner;

/**
 *
 * Program Java - Mencari Mean, Median, dan Modus
 * Dari Andreas Pandu Pamungkas
 * Dibuat pada tanggal: 11 September 2021
 *
 */

public class Main
{

    public static void main(String[] args)
    {
        int input;
        Scanner scan = new Scanner(System.in);

        // Input bilangan banyak data
        System.out.print("Masukkan berapa banyak data: ");
        input = scan.nextInt();

        // Cek apakah nilai dari input > 0
        if (input > 0)
        {
            // Input masing-masing data berdasarkan nilai arraynya

            System.out.println("\nMasukkan isi data berupa angka:");
            int[] data =  new int[input];
            for (int i = 0; i < input; i++)
            {
                System.out.print("- Isi Data ke-" +(i + 1)+ " = ");
                data[i] = scan.nextInt();
            }

            // Tampilkan hasil perhitungannya -> mean, median dan modus
            System.out.println("\nHasil Perhitungan:");
            System.out.printf("- Mean\t\t= %.1f%n", mean(data));
            System.out.printf("- Median\t= %.1f%n", median(data));
            System.out.printf("- Modus\t\t= %s%n", modus(data, input));
        }
        else
            // Jika input <= 0 maka keluar pesan kesalahan
            System.err.println("Silahkan masukkan banyak data lebih dari 0");
    }


    static String modus(int[] data, int input)
    {
        int c;
        int[] b = new int[input];

        // Pencarian data untuk menentukan modus
        for (int i = 0; i < input; i++)
        {
            c = 1;

            if (data[i] == -1)
                b[i] = 0;
            else
            {
                for (int j = i+1; j < input; j++)
                {
                    if (data[i] == data[j])
                    {
                        c++;
                        data[j] = -1;
                    }
                }

                b[i] = c;
            }
        }

        int m = b[0];
        for (int i = 1; i < input; i++)
        {
            if (b[i] >= m)
                m = b[i];
        }

        String[] outputHasil = new String[input];
        for (int i = 0; i < input; i++)
        {
            if (b[i] == m)
                outputHasil[i] = String.valueOf(data[i]);
        }
        //

        // Menghapus nilai "null" pada array outputHasil
        String[] modus = Arrays.stream(outputHasil).filter(Objects::nonNull).toArray(String[]::new);


        // Memberikan "," pada masing-masing angka
        return String.join(", ", modus);
    }


    // Fungsi untuk mencari median dari data
    static double median(int[] dataArr)
    {
        double median;
        int[] data = urutkan(dataArr);

        if (data.length % 2 == 1)
            median = data[data.length / 2];
        else
            median = ((double) (data[data.length / 2] + data[(data.length / 2) - 1])) / 2;

        return median;
    }


    // Fungsi untuk Mean -> rata-rata
    static double mean(int[] data)
    {
        int tambah = 0;
        for (int dataTambah : data)
        {
            // Menjumlah seluruh data array
            tambah += dataTambah;
        }

        // Mulai Melakukan perhitungan rata-rata
        return tambah / (double) data.length;
    }


    // Fungsi untuk mengurutkan
    static int[] urutkan(int[] data)
    {
        int temp;
        for (int i = 0; i < data.length-1; i++)
        {
            for (int j = data.length-1; j > i; j--)
            {
                if (data[j-1] > data[j])
                {
                    temp        = data[j];
                    data[j]     = data[j-1];
                    data[j-1]   = temp;
                }
            }
        }

        return data;
    }
}


Kalian bisa mendownload di GitHub saya melalui link berikut ini:
https://github.com/andspdev/java-mencari-mean-median-modus

Sebagai contoh, disini terdapat sebuah data yaitu: 11236

Jumlah banyak data ada 5
Maka, ketika program dijalankan akan seperti ini:

Membuat Program Java Untuk Mencari Mean, Median, dan Modus

Perlu diingat bahwa script java diatas menggunakan nama file Main,java, atau kalian bisa mengubahnya sesuai dengan selera kalian dan pastikan nama class dan nama filenya juga sama (setelah .javanya). Disini saya juga menggunakan IntelliJ dan JDK nya versi 8 dan seharusnya script saya bisa di jalankan di versi terbaru.

Nah, jika kalian mencoba untuk menjalankan programnya, maka hasil tampilannya akan seperti gambar ss di atas. Kalian harus menginputkan berapa banyak data yang akan masukkan, lalu data-data tersebut akan di berikan sebuah nilai angka, lalu program tersebut akan menentukan hasil perhitungannya ketika data semuanya telah diisi nilai angkanya.

Mungkin itu saja artikel tutorial dari saya mengenai buat program java untuk mencari mean, median dan modus menggunakan Java. Semoga artikel ini dapat bermanfaat bagi kalian semua, terutama buat anak kuliah yang disuruh dosennya buat program untuk mencari mean, median, dan modus menggunakan Java :v Dan jika saya ada salah kata atau ada kata yang kurang berkenan, saya mohon maaf. Sekian dan Terima kasih.

Selamat mencoba!

Previous Post Next Post