This is default featured slide 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

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.