. .

BAGIAN KE EMPAT : JAVA ARRAYS DAN LOOP DAN CONTOH PROGRAM UNDIAN DI NETBEANS IDE

Posted by CHRISTIANTO D,WIBOWO | D3MI-2016 STMIK BUMI GORA On Minggu, November 20, 2016 No comments

Sebelum kita meneruskan mempelajari pembelajaran ini, ada baiknya kita baca artikel-artikel sebelumnya yang terhubung dengan langkah-langkah pembelajaran ini (Link) BAHASA PEMROGRAMAN - JAVA.
Fungsi Arrays yang masuk datang ke Arrays sendiri dengan loops. Kita telah melihat di bagian sebelumnya bahwa untuk menetapkan nilai-nilai ke posisi array, kita melakukan ini :
  • aryNums[0] = 10;
Tapi hal itu tidak terlalu praktis jika kita memiliki banyak nomor untuk menetapkannya ke dalam sebuah array. Sebagai contoh, bayangkan sebuah program undian yang memiliki banyak angka untuk ditetapkan mulai dari angka 1 sampai 49 posisi dalam array. Daripada mengetik daftar panjang posisi array dan nilai-nilai, kita dapat menggunakan loop. Berikut adalah beberapa kode yang menggunakan loops :


  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package arraysloops;

  7. /**
  8.  *
  9.  * @author Christianto Dharma Wibowo
  10.  */
  11. public class ArraysLoops {

  12.     /**
  13.      * @param args the command line arguments
  14.      */
  15.     public static void main(String[] args) {
  16.         // TODO code application logic here
  17.         int[] lottery_numbers = new int[49];
  18.         int i;
  19.         for(i=0; i < lottery_numbers.length; i++){
  20.             lottery_numbers[i]=i+1;
  21.             System.out.println( lottery_numbers[i]);
  22.         }
  23.     
  24.     }
  25.       
  26. }


run:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49

BUILD SUCCESSFUL (total time: 2 seconds)


Jadi kita mendirikan sebuah array yang menampung 49 nilai integer. Perhatikan kondisi akhir loop:
  • i < lottery_numbers.length
Length adalah properti dari objek array yang dapat kita gunakan untuk mendapatkan ukuran array (berapa banyak posisi yang dibutuhkan). Jadi lingkaran ini akan terus berputar-putar selama nilai dalam variabel i kurang dari ukuran array.

Untuk memberikan nilai pada setiap posisi dalam array, kita memiliki baris ini:
  • lottery_numbers[i]=i+1;
Sebagai ganti nilai hard-code antara kurung persegi yang menjadi array-nya,  kita telah memiliki variabel yang disebut i. Hal ini akan ditambahkan oleh 1 setiap kali putaran loop, ingat. Setiap posisi array yang kemudian dapat diakses hanya dengan menggunakan nilai lingkaran. Nilai yang sedang ditugaskan untuk setiap posisi adalah i + 1. Jadi sekali lagi, itu hanya nilai lingkaran bertambah, kali ini dengan 1 ditambahkan ke dalamnya. Karena nilai loop dimulai dari 0, ini akan memberikan angka 1-49.

Jalur lain dalam lingkaran hanya mencetak nilai berapapun yang ada di setiap posisi array System.out.println( lottery_numbers[i]);. Jika kita ingin, kita bisa menulis kode untuk mencampur adukkan angka dalam array. Setelah kita telah campur aduk nilai-nilai tersebut, maka kita bisa mengambil 6 angka pertama dan menggunakannya sebagai nomor undian. Menulis potongan lain dari kode yang membandingkan 6 angka dengan nomor pemenang dan kita bisa memiliki sebuah program undian.
Kode Undian : 


  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package undiand3mibumigora;

  7. /**
  8.  *
  9.  * @author Christianto Dharma Wibowo
  10.  */
  11. import static java.lang.System.out;
  12. import java.util.Scanner;
  13. import java.util.Random;
  14. public class UndianD3miBumiGora {

  15.     /**
  16.      * @param args the command line arguments
  17.      */
  18.     public static void main(String[] args) {
  19.         int[] numbers = new int[49];
  20.                                 //int[] numbers = new int[49];
  21.         int[] winningNumbers = new int[6]; //array holding 6 random numbers
  22.         int[] userNumber = new int[6]; //array holding the input
  23.         Scanner theNumbers = new Scanner(System.in);
  24.         int guesses;
  25.         int counter = 0;
  26.         int i;
  27.         /*
  28.         for(i = 0; i <  numbers.length; i++){
  29.                 numbers[i] = i + 1;
  30.            out.println(numbers[i]);
  31.            }
  32.         */
  33.         //generate 6 random numbers
  34.         for(i = 0; i < winningNumbers.length; i++ ){
  35.                 int randomNums = new Random().nextInt(49) + 1;
  36.                 winningNumbers[i] =  randomNums;                               
  37.         }
  38.         out.println("Enter the 6 numbers");
  39.         for(i = 0; i < userNumber.length; i++){
  40.                 guesses = theNumbers.nextInt();
  41.                 userNumber[i] = guesses;
  42.                 if(winningNumbers[i] == userNumber[i] ){
  43.                   counter+=1;
  44.                 }
  45.          }
  46.         if (counter == 6) {
  47.             out.println("kamu menang!! selamat yah!");
  48.         }
  49.         else    
  50.             out.println("kamu kalah! maaf yah bisa coba lagi kok");
  51.         }
  52. }


Ide di balik program undian ini adalah bahwa komputer menghasilkan 6 nomor acak dalam kisaran 1 sampai 49, dan menyimpannya dalam array, pengguna akan memasukkan nilainya sendiri satu-persatu angka sampai dengan 6 tebakan angka, lalu menyimpannya ke dalam array, maka setiap entri dibandingkan dengan apa yang komputer telah simpan dan untuk setiap tebakan tepat counter akan bertambah oleh 1. Jika counter adalah 6 maka pengguna menang, jika tidak pengguna akan kalah.

Penjumlahan Array of Numbers dengan untuk loop
Ini adalah contoh bagaimana mendapatkan jumlah elemen angka dalam array menggunakan for loop.  for statement menyediakan cara kompak untuk iterate diatas rentang nilai. Mendapatkan jumlah menggunakan  loop menyiratkan bahwa kita harus:
  • Buat array angka, dalam nilai-nilai contoh int.
  • Buat untuk pernyataan, dengan variabel int dari 0 sampai dengan panjang array, bertambah satu setiap kali dalam lingkaran.
  • Dalam for statement tambahkan masing-masing elemen array untuk int sum.
Mari kita lihat potongan kode yang berikut:



  • /*

    1.  * To change this license header, choose License Headers in Project Properties.
    2.  * To change this template file, choose Tools | Templates
    3.  * and open the template in the editor.
    4.  */
    5. package jumlahelemenarray;

    6. /**
    7.  *
    8.  * @author Christianto Dharma Wibowo
    9.  */
    10. public class JumlahElemenArray {

    11.     /**
    12.      * @param args the command line arguments
    13.      */
    14.     public static void main(String[] args) {
    15.         // TODO code application logic here
    16.         // array to sum
    17. int[] numbers = new int[]{ 10, 10, 10, 10};
    18.  
    19. int sum = 0;
    20.  
    21. for (int i=0; i < numbers.length ; i++) {
    22. sum = sum + numbers[i];
    23. }
    24.  
    25. System.out.println("Sum value of array elements is : " + sum);
    26. }


    27.     }


    Ini adalah salah satu contoh bagaimana array menggunakan  for loop untuk proses penjumlahan di dalam  Java.
    Pada bagian berikutnya, Kita akan melihat bagaimana mengurutkan sebuah array. Sorting Java Arrays

    0 komentar:

    Posting Komentar