Monday, January 4, 2016

program Shell script mencari bilangan ganjil genap pada centos

Pertama-tama kita harus mengerti dan tau aturan yang ada pada shell linux . Berikut perbedaan dari jenis pemrograman dalam linux . 


Fitur-fitur programming dari LINUX shell:
  1. Shell variables
  2. Operators
  3. Logic structures
Shell variables: variabel shell merupakan nama simbolik yang dapat diakses dari memori
Operators: Script Shell mendukung banyak operator, termasuk operasi matematik
Logic structures: Script Shell mendukung sequential logic (untuk menjalankan perintah serial), decision logic (untuk percabangan), looping logic (untuk proses looping), dan case logic (untuk proses seleksi)

Read (Input)
Fungsi : untuk membaca data dari keyboard atau file.
Bentuk umum :
read var1 var2 ... varn
Keterangan :
- kata pertama di-assign ke var 1, kata kedua ke var2 dan seterusnya.
- jika jumlah variabel dalam list lebih sedikit dari jumlah data yang dibaca maka sisa baris disimpan dalam variabel terakhir (var n).
Membaca data nama dan alamat dari keyboard
$ read nama alamat dudi depok

Echo(Output)
Fungsi : untuk menampilkan string ke standard output (layar).
Bentuk umum :
echo [-pilihan] arg1 arg2 ... argn
Keterangan :
- Setiap argumen dipisahkan oleh satu spasi.
- Pilihan yang sering digunakan :
-n : tidak menampilkan baris baru (newline)
-e : untuk menampilkan backslash-escaped characters



kondisi
Kondisi digunakan untuk menghasilkan nilai balik. Untuk melakukan pemeriksaan kondisi dapat menggunakan tanda test, berikut macam macam perbandingan nilai :


-eq : sama dengan (=)
-ge : lebih besar sama dengan (>=)
-gt : lebih besar (>)
-le : lebih kecil sama dengan (<=)
-lt : lebih kecil (<)


-untuk operator string
 
-untuk operator integer
 
if then else
biasanya digunakan untuk menentukan percabangan
bentuk penulisan :

if kondisi
then
statement
else
statement
fi

PERULANGAN/LOOPING
until do done
biasanya digunakan untuk perulangan, di dalam until perulangan akan terus dilakukan sampai kondisi bernilai benar.
bentuk penulisan :

until kondisi
do
statement
done


while do done
digunakan untuk perulangan, namun berbeda dengan until dimana pada while pengulangan akan terus dilakukan selama kondisi bernilai benar
bentuk penulisan :

while kondisi
do
statement
done

for do done
di gunakan untuk perulangan
bentuk penulisan :

echo “masukkan angka : ”
read angka
counter=1
for cetak in `seq 1 $angka`
do
echo -n “-”
echo -n “$cetak”
done

case in esac
digunakan untuk pemilihan
bentuk penulisan :

case $variable in
option-1)
statement
;;
option-2)
statement
;;
option-n)
statement
;;
esac


Pengutipan
Karakter khusus adalah karakter yang mempunyai fungsi khusus bagi shell. 
Contoh karakter khusus :

? : substitusi nama file
* : substitusi nama file
` : substitusi perintah
$ : substitusi variabel




-Untuk menjawab soal yang di atas , pertama-tama masuk kedalam terminal dan buat file
 cat > tugas.sh 
-masuk ke dalam vi tugas.sh
-masukkan program seperti dibawah ini
pil='y'
while [ $pil == 'y' ] || [ $pil == 'Y' ]
do
clear

echo " HALLO , SELAMAT DATANG DI PROGRAM SHELL SCRIPT  . . . . . ! !
echo "                                       PROGRAM INI DI BUAT OLEH :
echo -n  " NIM  : "
read a
echo -n " NAMA  : "
read b
echo "=========================================================="
echo -n " silahkan masukkan batas loop $b : "
read loop

if [ $loop -le 200 ] ; then
    for (( i=0 ; i<=loop ; i++ )) ;
do
echo -n $i ","
       done
    else
       exit
fi
echo ""
echo "==========================================================="
bil_ganjil=0;
bil_genap=0;
   for ((x=0 ; x<=$loop ; x++)
do
   let hitung=$x%2;
   if [ $hitung -eq 0 ] ; then
     let bil_genap = $bil_genap+1;
     else
     let bil_ganjil = $bil_ganjil+1;
fi
done
echo ""
echo "banyak bilangan genap = $bil_genap "
echo "banyak bilangan ganjil = $bil_ganjil  "
echo ""
echo -n  " kembali ke awal ? y/n : "
read pil

while [ $pil == 'n' ] || [ $pil == "N" ]
do
   exit
done
done


maka hasil outputnya sebagai berikut :
setelah kodingan tadi selesai , save dalam vi dengan wq!
kemudian sh tugas.sh

 
 
penjelasan program :
variabel pil dijdikan sebagai program untuk memilih pilihan keluar ya atau tidak
-kondisi if dimana jika nilai batas yang diinputkan kurang dari sama dengan 200 maka angkanya akan ditampilkan. Jika lebih dari 200 maka program keluar.
-nilai genap dan ganjil harus di deklarasi untuk proses looping dan penambahan nilai
-let digunakan untuk menambahkan nilainya
-variabel "hitung" digunakan untuk menampung nilai dari $x%2. Yang kemudian masuk ke sebuah kondisi jika nilai dari hitung=0, nilai bilangan genap bertambah 1. Jika tidak maka nilai bilangan ganjilnya bernilai 1.

0 komentar:

Post a Comment