Friday, July 3, 2020

contoh program java array 1 dimensi 8 kolom dan lainnya

Berikut contoh soal dan penyelesaiannya:

1.    Buat kode untuk menginputkan bilangan integer ke dalam array 1 dimensi 8 kolom, kemudian urutkan isi array tsb, lalu copykan secara baris isi array tsb ke dalam array 2 dimensi 2 baris 4 kolom serta cari nilai tertinggi baris pertama dalam array tsb. 

Illustrasi :
X (1 dimensi 8 kolom)
Y (2 dimensi 2 baris 4 kolom)

setelah diinput dari keyboard isi dari X adalah :
3 1 5 4 2 6 8 7

maka, isi dari Y adalah:
1 2 3 4 
5 6 7 8
nilai tertinggi baris pertama = 4


Penyelesaian:

Contoh Programnya:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;


public class soalno1 {
  public static void main(String []  args){
      BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
      int[] array1d = new int[8];
      int[][] array2d = new int[2][4];
      try{
        //menginput array 1dimensi
        for(int i=0 ; i<array1d.length ; i++){
            System.out.print("Masukan bilangan ke-"+(i+1)+" :");
            array1d[i] = Integer.parseInt(in.readLine());
            System.out.println();
        }
        
        //mengurutkan array 1dimensi
        for(int i=0;i<array1d.length;i++){
            for(int j=array1d.length-1;j>i;j--){
                if(array1d[j]<array1d[j-1]){
                   int temp = array1d[j-1];
                   array1d[j-1] = array1d[j];
                   array1d[j] = temp;
                }
            }
        }
        
       //mengcopy array 1d ke array 2d
        int col=0;
        for(int i=0;i<array2d.length;i++){
            for(int j=0;j<array1d.length/array2d.length;j++){
                array2d[i][j] = array1d[col];
                col++;
            }
        }
        
        //mencetak array 2d
        for(int i=0;i<array2d.length;i++){
            for(int j=0;j<array1d.length/array2d.length;j++){
                System.out.print(array2d[i][j]+",");
            }
            System.out.println();
        }
        
        int max = 0;
        //mencetar nilai tertinggi pada array 2d pada baris pertama
        for(int i=0;i<1;i++){
            for(int j=0;j<array1d.length/array2d.length;j++){
                if(array2d[i][j] > max){
                    max = array2d[i][j];
                }
            }
        }
        
        System.out.println("Nilai tertinggi pada baris pertama array 2d adalah = "+max);
        
      }catch(IOException ie){
          ie.printStackTrace();
      }
  }   
}


Screen Shoot command Line Sintax Java :




Hasil Output Programnya:



2. Buat program untuk menginputkan sembarang Text, kemudian mencetak secara terbalik text tersebut serta merubah dari huruf besar ke kecil atau sebaliknya, mengitung panjang text,  jumlah huruf,  jumlah angka serta spasi.

Contoh Keluaran:

Inputkan text: budi LuhUR 2010

Output reverse: 0102 ruHUl IDUB
Panjang text: 15
Jumlah Huruf: 9
Jumlah Angka: 4
Jumlah Spasi: 2

Penyelesaian:

Contoh Programnya:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;


public class soalno2 {
    public static void main(String [] args){
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        
        try {
            System.out.print("Masukan Text :");
            StringBuffer sb = new StringBuffer(in.readLine());
            
            int spasi = 0;
            int huruf = 0;
            int angka = 0;
            //melakukan perhitungan jumlah spasi huruf dan angka
            for(int i=0;i<sb.length();i++){
               byte c = (byte) sb.charAt(i);
               if(c > 64){
                   huruf++;
               }else if(c == 32){
                   spasi++;
               }else{
                   angka++;
               }
            }
            
            //membalik string
            sb.reverse();
           
            
            String temp = sb.toString();
            String kebalikan = "";
            for(int i=0;i<temp.length();i++){
                byte c = (byte) sb.charAt(i);
                String t = String.valueOf((char)c);
                if(c>96){
                   kebalikan+= t.toUpperCase();
                }else if(c>64){
                   kebalikan+= t.toLowerCase();
                }else{
                   kebalikan+= t;
                }
            }
            
            System.out.println("Output Reverse :"+kebalikan);
            System.out.println("Panjang Teks :"+sb.length());
            
          
            System.out.println("huruf :"+huruf);
            System.out.println("angka :"+angka);
            System.out.println("spasi :"+spasi);
            
        } catch (IOException ex) {
           
        }
        
        
    }
}


Screen Shoot command Line Sintax Java :



Hasil Output Program:




No comments:

Post a Comment