Jumat, 03 Januari 2020

Hai, Perkenalkan nama saya Rofinus Aryanto, saya lahir di Makassar 06 agustus 2001 saya berkuliah di Universitas Muhammadiyah Sidoarjo dan mengambil jurusan Teknik Informatika dan jika ingin mengenal lebih dalam tentang universitas saya silahkan akses link berikut:umsida.ac.id dan fst.umsida.ac.id Dari praktikum Sistem Digital ini saya mendapat ilmu yang banyak dan hampir semuanya bermanfaat, dari yang awalnya tidak bisa menjadi bisa. Sekarang saya akan memberikan rangkuman tentang apa yang sudah saya dapatkan pada Praktikum Sistem Digital. POKOK BAHASAN 1 Pengenalan Gerbang Logika Dasar 1.Gerbang AND Gerbang AND memerlukan 2 atau lebih Masukan (Input) untuk menghasilkan hanya 1 Keluaran (Output). Gerbang AND akan menghasilkan Keluaran (Output) Logika 1 jika semua masukan (Input) bernilai Logika 1 dan akan menghasilkan Keluaran (Output) Logika 0 jika salah satu dari masukan (Input) bernilai Logika 0. Rangkaian AND dinyatakan sebagai Z = A*B atau Z=AB (tanpa symbol) 2.Gerbang OR Gerbang OR memerlukan 2 atau lebih Masukan (Input) untuk menghasilkan hanya 1 Keluaran (Output). Gerbang OR akan menghasilkan Keluaran (Output) 1 jika salah satu dari Masukan (Input) bernilai Logika 1 dan jika ingin menghasilkan Keluaran (Output) Logika 0, maka semua Masukan (Input) harus bernilai Logika 0. Rangkaian OR dinyatakan sebagai Z = A + B. 3.Gerbang NOT (Inverter) Gerbang NOT hanya memerlukan sebuah Masukan (Input) untuk menghasilkan hanya 1 Keluaran (Output). Gerbang NOT disebut juga dengan Inverter (Pembalik) karena menghasilkan Keluaran (Output) yang berlawanan (kebalikan) dengan Masukan atau Inputnya. Berarti jika kita ingin mendapatkan Keluaran (Output) dengan nilai Logika 0 maka Input atau Masukannya harus bernilai Logika 1. Rangkaian NOT dinyatakan sebagai Z = A 4.Gerbang NAND (NOT AND) Arti NAND adalah NOT AND atau BUKAN AND, Gerbang NAND merupakan kombinasi dari Gerbang AND dan Gerbang NOT yang menghasilkan kebalikan dari Keluaran (Output) Gerbang AND. Gerbang NAND akan menghasilkan Keluaran Logika 0 apabila semua Masukan (Input) pada Logika 1 dan jika terdapat sebuah Input yang bernilai Logika 0 maka akan menghasilkan Keluaran (Output) Logika 1. Rangkaian NAND dinyatakan sebagai Z = A * B. 5.Gerbang NOR (NOT OR) Arti NOR adalah NOT OR atau BUKAN OR, Gerbang NOR merupakan kombinasi dari Gerbang OR dan Gerbang NOT yang menghasilkan kebalikan dari Keluaran (Output) Gerbang OR. Gerbang NOR akan menghasilkan Keluaran Logika 0 jika salah satu dari Masukan (Input) bernilai Logika 1 dan jika ingin mendapatkan Keluaran Logika 1, maka semua Masukan (Input) harus bernilai Logika 0. Rangkaian NOR dinyatakan sebagai Z = A + B. 6.Gerbang X-OR (Exclusive OR) X-OR adalah singkatan dari Exclusive OR yang terdiri dari 2 Masukan (Input) dan 1 Keluaran (Output) Logika. Gerbang X-OR akan menghasilkan Keluaran (Output) Logika 1 jika semua Masukan- masukannya (Input) mempunyai nilai Logika yang berbeda. Jika nilai Logika Inputnya sama, maka akan memberikan hasil Keluaran Logika 0. Rangkaian X-OR dinyatakan sebagai Z = (A*B) + (A*B) = A + B Simbol Gerbang X-OR 7.Gerbang X-NOR (Exclusive NOR) Seperti Gerbang X-OR, Gerban X-NOR juga terdiri dari 2 Masukan (Input) dan 1 Keluaran (Output). X-NOR adalah singkatan dari Exclusive NOR dan merupakan kombinasi dari Gerbang X-OR dan Gerbang NOT. Gerbang X-NOR akan menghasilkan Keluaran (Output) Logika 1 jika semua Masukan atau Inputnya bernilai Logika yang sama dan akan menghasilkan Keluaran (Output) Logika 0 jika semua Masukan atau Inputnya bernilai Logika yang berbeda. Hal ini merupakan kebalikan dari Gerbang X-OR (Exclusive OR). Rangkaian X-NOR dinyatakan sebagai Z= (A + B) = A POKOK BAHASAN 2 Penyederhanaan Rangkaian Logika (Menggunakan Metode K-Map) Peta Karnaugh (Karnaugh Map, K-map) dapat digunakan untuk menyederhanakan persamaan logika yang menggunakan paling banyak enam variable. Dalam laporan ini hanya akan dibahas penyederhanaan persamaan logika hingga empat variable. Penggunaan persamaan logika dengan lima atau enam variable disarankan menggunakan program computer. Peta merupakan gambar suatu daerah. Peta karnaugh menggambarkan daerah logika yang telah di jabarkan pada table kebenaran. Penggambaran daerah pada peta karnaugh harus mencakup semuah logika. Daerah pada Peta Karnaugh dapat tamping tindih antara satu kombinasi variable dengan kombinasi variable yang lain. Pada K-Map 2 variabel, variabel yang digunakan yaitu 2. Misalnya variabel A & B. Catatan : - Untuk setiap variabel yang memiliki aksen, maka di dalam tabel ditulis 0. - Untuk setiap variabel yang tidak memiliki aksen, maka di dalam tabel ditulis 1. Contoh : A' (ditulis 0), B (ditulis 1) Pada KMap 3 variabel, variabel yang digunakan yaitu 3. Misalnya variabel A, B & C. Pada KMap 4 variabel, variabel yang digunakan. Misalnya variabel A, B, C & D. POKOK BAHASAN III MULTILEVEL NAND DAN NOR Gerbang NAND dan NOR merupakan gerbang universal, artinya hanya dengan menggunakan jenis gerbang NAND saja atau NOR saja dapat menggantikan fungsi dari 3 gerbang dasar yang lain (AND, OR, NOT). Multilevel, artinya : dengan mengimplementasikan gerbang NAND atau NOR, akan ada banyak level / tingkatan mulai dari sisi input sampai ke sisi output. Keuntungan pemakaian NAND saja atau NOR saja dalam sebuah rangkaian digital adalah dapat mengoptimalkan pemakaian seluruh gerbang yang terdapat dalam sebuah IC logika sehingga kita bisa lebih mengirit biaya dan juga irit tempat karena tidak terlalu banyak IC yang digunakan (padahal tidak semua gerbang yang ada dalam IC tersebut yang digunakan). Adapun cara melakukan konversinya dapat kita lakukan dengan dua cara yaitu: 1. Melalui peneyelesaian persamaan logika/Boolean 2. Langsung menggunakan gambar padanan Pokok Bahasan IV Rangkaian Aritmatika Digital a. Adder Rangkaian Adder (penjumlah) adalah rangkaian elektronika digital yang digunakan untuk menjumlahkan dua buah angka (dalam sistem bilangan biner), sementara itu di dalam komputer rangkaian adder terdapat pada mikroprosesor dalam blok ALU (Arithmetic Logic Unit). Sistem bilangan yang digunakan dalam rangkaian adder adalah: • Sistem bilangan biner (memiliki base/radix 2) • Sistem bilangan oktal (memiliki base/radix 8) • Sistem bilangan Desimal (memiliki base/radix 10) • Sistem bilangan Hexadesimal (memiliki base/radix 16) Namun, diantara ketiga sistem tersebut yang paling mendasar adalah sistem bilangan biner, sementara itu untuk menerapkan nilai negatif, maka digunakanlah sistem bilangan complement. BCD (binary-coded decimal). b. Half Adder Half adder adalah suatu rangkaian penjumlah system bilangan biner yang paling sederhana. Rangkaian ini hanya dapat digunakan untuk operasi penjumlahan data bilangan biner sampai 1 bit saja. Rangkaian half adder mempunyai 2 masukan dan 2 keluaran yaitu Summary out (Sum) dan Carry out (Carry). Rangkaian ini merupakan gabungan rangkaian antara 2 gerbang logika dasar yaitu X-OR dan AND. Rangkaian half adder merupakan dasar bilangan biner yang masing-masing hanya terdiri dari satu bit, oleh karena itu dinamakan penjumlah tak lengkap. 1. Jika A=0 dan B=0 dijumlahkan, hasilnya S (Sum) = 0. 2. Jika A=0 dan B=1 dijumlahkan, hasilnya S (Sum) = 1. 3. Jika A=1 dan B=0 dijumlahkan, hasilnya S (Sum) = 1. 4. Jika A=1 danB=1 dijumlahkan, hasilnya S(Sum)= 0.Dengan nilai pindahan Cout (Carry Out) = 1. Dengan demikian, half adder memiliki dua masukan (A dan B), dan dua keluaran (S dan Cout). c. Full Adder Rangkaian Full-Adder, pada prinsipnya bekerja seperti Half- Adder, tetapi mampu menampung bilangan Carry dari hasil penjumlahan sebelumnya. Jadi jumlah inputnya ada 3: A, B dan Cin, sementara bagian output ada 2: Sum dan Cout. Cin ini dipakai untuk menampung bit Carry dari penjumlahan sebelumnya. Rangkaian Full Adder dapat dibuat dengan menggabung 2 buah Half adder. Rangkaian ini dapat digunakan untuk penjumlahan sampai 1 bit. Jika ingin menjumlahkan lebih dari 1 bit, dapat menggunakan rangkaian Paralel Adder yaitu gabungan dari beberapa Full Adder. d. Subtractor Merupakan Suatu Rangkaian Pengurangan 2 buah bilangan biner. Jenis-jenis rangkaian Sub tractor yaitu : e. Half Subtractor Rangkaian half subtractor adalah rangkaian Sub tractor yang paling sederhana. Pada dasarnya rangkaian half subtractor adalah rangkaian half Adder yang dimodifikasi dengan menambahkan gerbang not. Rangkaian half subtractor dapat dibuat dari sebuah gerbang AND, gerbang X-OR, dan gerbang NOT. Rangkaian ini mempunyai dua input dan dua output yaitu Sum dan Borrow Out(Bo). Rumus dasar pengurangan pada biner yaitu : 1. 0 - 0 = 0 Borrow 0 2. 0 - 1 = 1 Borrow 1 3. 1 - 0 = 1 Borrow 0 4. 1 – 1 = 0 Borrow 0 f. Full Subtractor Pada Rangkaian full subtractor pin Borrow Out dihubungkan dengan pin Borrow In(Bin) sebelumnya dan pin Bin di hubungkan dengan pin Bout pada rangkaian berikutnya begitu seterusnya. Sehingga pada rangkaian Full Subtractor mempunyai 3 input dan 2 output. Rangkaian ini dapat digunakan untuk penjumlahan sampai 1 bit. Jika ingin menjumlahkan lebih daii 1 bit, dapat menggunakan rangkaian Paralel Subtractor yaitu gabungan dari beberapa Full Subtractor. Contoh : Buatlah sebuah rangkaian Half Adder seperti gambar berikut, serta buatlah tabel kebenaran dan tuliskan persamaan yang ada pada Sum dan Cout. Pokok Bahasan V Enkoder dan Dekoder Encoder adalah rangkaian yang berfungsi untuk mengkodekan data input menjadi data bilangan dengan format tertentu. Encoder dalam rangkaian digital adalah rangkaian kombinasi gerbang digital yang memiliki input banyak dalam bentuk line input dan memiliki output sedikit dalam format bilangan biner. Encoder akan mengkodekan setiap jalur input yang aktif menjadi kode bilangan biner. Dalam teori digital banyak ditemukan istilah Encoder seperti “Desimal to BCD Encoder” yang berarti rangkaian digital yang berfungsi untuk mengkodekan line input dengan jumlah line input desimal (0-9) menjadi kode bilangan biner 4 bit BCD (Binary Coded Decimal). Atau “8 line to 3 line Encoder” yang berarti rangkaian Encoder dengan input 8 line dan output 3 line (3 bit BCD). Decoder adalah alat yang digunakan untuk dapat mengembalikan proses encoding sehingga kita dapat melihat atau menerima informasi aslinya. Pengertian Decoder juga dapat di artikan sebagai rangkaian logika yang ditugaskan untuk menerima input-input biner dan mengaktifkan salah satu outputnya sesuai dengan urutan biner tersebut. Fungsi decoder adalah untuk memudahkan kita dalam menyalakan seven segmen. Itu lah sebabnya kita menggunakan decoder agar dapat dengan cepat menyalakan seven segmen. Output dari decoder maksimum adalah 2n. Jadi dapat kita bentuk n-to-2n decoder. Jika kita ingin merangkaian decoder dapat kita buat dengan 3-to-8 decoder menggunakan 2-to-4 decoder. Sehingga kita dapat membuat 4-to-16 decoder dengan menggunakan dua buah 3-to-8 decoder. Contoh : Dengan menggunakan “Digital Works”, Cobalah membuat rangkaian Enkoder 10 – 4 seperti gambar dibawah ini. Buat tabel kebenaran serta Tampilkan hasil outputnya Tabel Kebenaran Pokok Bahasan VI Multiplekser dan Demultiplekser MULTIPLEXER 1. Sebuah Multiplexer adalah rangkaian logika yang menerima beberapa input data digital dan menyeleksi salah satu dari input tersebut pada saat tertentu, untuk dikeluarkan pada sisi output. 2. Seleksi data-data input dilakukan oleh selector line, yang juga merupakan input dari multiplexer tersebut. 3. Blok diagram sebuah multiplexer Contoh : Tabel Kebenaran DEMULTIPLEXER 1. Sebuah Demultiplexer adalah rangkaian logika yang menerima satu input data dan mendistribusikan input tersebut ke beberapa output yang tersedia. 2. Seleksi data-data input dilakukan oleh selector line, yang juga merupakan input dari demultiplexer tersebut. Contoh : Tabel Kebenaran

Minggu, 08 Desember 2019


Perkenalkan nama saya Rofinus Aryanto, saya lahir di Makassar,06 Agustus 2001. saya berkuliah
di Universitas Muhammadiyah Sidoarjo dan mengambil jurusan Teknik Informatika
dan jika ingin mengenal lebih dalam tentang universitas saya silahkan akses link berikut: umsida.ac.id fst.umsida.ac.id

Bab 1 Input dan Jenis Data  :


Setiap program mempunyai bentuk umum seperti di bawah , yaitu :
# prepocessor directive
                  void main ()
                       {
                               // Batang Tubuh Program Utama
                         }
      Penjelasan :

Include :
      Adalah salah satu pengarah prepocessor directive yang tersedia pada C++.     Prepocessor selalu dijalankan terlebih dahulu pada saat proses kompilasi terjadi.
Bentuk umumnya :
            # include <nama_file>
Tidak diakhiri dengan tanda semicolon, karena bentuk tersebut bukablah suatu bentuk pernyataan, tetapi merupakan prepocessor directive. Baris tersebut menginstruksikan kepada komputer yang menyisipkan file lain dalam hal ini file yang berakhiran .h(file header) yaitu file yang berisi sebagai deklarasi, contohnya :

#include<iostream.h> : Diperlukan pada program yang melibatkan objek cout
#include<conio.h> : Digunakan bila melibatkan clrscr(), yaitu perintah untuk membersihkan layar
#include<iomanip.h> Diperlukan bila melibatkan setw() yang bermanfaat untuk mengatur lebar dari suatu tampilan data.

Fungsi main ()

Fungsi ini menjadi awal dan akhir eksekusi program C++. main adalah nama judul fungsi. Melihat bentuk seperti itu dapat kita ambil kesimpulan bahwa batang tubuh program utama berada didalam fungsi main( ). Berarti dalam setiap pembuatan program

Komentar

Komentar tidak pernah dicompile oleh compiler. Dalam terdapat 2 jenis komentar, yaitu:
Jenis 1 : /* Komentar anda diletakkan di dalam ini Bisa mengapit lebih dari satu baris */
Jenis 2 : // Komentar anda diletakkan disini ( hanya bisa perbaris )

Tanda Semicoln

Tanda semicoln “ ; ” digunakan untuk mengakhiri sebuah pernyataan. Setiap pernyataan harus diakhiri dengan sebuah tanda semicoln.

Mengenal cout(dibaca : C out)

Pernyataan cout merupakan sebuah objek didalam C++, yang digunakan untuk mengarahkan data kedalam standar output (cetak pada layar)
Contoh :
Tanda”<<”merupakan sebuah operator yang disebut operator “penyisipan/peletakan”.

Contoh Program Hello Word :
#include <iostream>

using namespace std;

int main()
{
    cout << "Hello world!" << endl;
    return 0;

}










Bab 2 Struktur Pemrograman Pencabangan:

Percabangan adalah cara yang digunakan dalam program untuk mengambil keputusan ke satu kemungkinan True atau False dari beberapa kondisi.

Didalam pemrograman kita harus dapat menentukan aksi apa yang harus dikerjakan oleh pemroses (processor) ketika sebuah kondisi terpenuhi, dengan menggunakan operasi logik.

Macam-macam Percabangan

1. If-else

Pernyataan Percabangan If-Else digunakan untuk memecahkan persoalan untuk mengambil suatu keputusan diantara banyak pernyataan yang ada.
Statement if digunakan untuk melakukan proses percabangan di dalam program.

2. Switch-case
Bentuk dari switch – case merupakan pernyataan yang dirancangan khusus untuk menangani pengambilan keputusan yang melibatkan sejumlah atau banyak alternatif penyelesaian.


-Percabangan tunggal: IF


#include<iostream.h>
main()

{
            int umur;
            cout<<"Masukkan umur kamu= ";
            cin>>umur;
            if (umur >= 60)
                        cout<<"Selamat siang mbah"<<endl;
                        cout<<"Salam buat cucumu ya"<<endl;
            cout<<"jadi umurmu"<<umur<<"tahun";
}


-Percabangan ganda: IF-ELSE :


#include<iostream.h>
main()
{
            int N;
            cout<<"Masukkan nilai (0 s/d 100) = ";
            cin>>N;
            if(N>=60)
                        cout<<"Lulus"<<endl;
                        else if (N<60)
                        cout<<"Tidak Lulus"<<endl;
}








Flowchart adalah adalah suatu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses secara mendetail
dan hubungan antara suatu proses (instruksi) dengan proses lainnya dalam suatu program.

Bab 3 Struktur Pemrograman: Lompatan & Kalang :

Sebuah / kelompok instruksi diulang untuk jumlah pengulangan tertentu. Baik yang terdifinisikan sebelumnya ataupun tidak.

Struktur pengulangan terdiri atas dua bagian :

1. Kondisi pengulangan yaitu ekspresi boolean yang harus dipenuhi untuk melaksanakan pengulangan.
2. Isi atau badan pengulangan yaitu satu atau lebih pertanyaan (aksi) akan diulang.
Perintah atau Notasi dalam struktur pengulangan adalah :
1. pernyataan while
2. Pernyataan do.. while
3. Pernyataan for
4. Pernyataan continue dan break
5. Pernyataan go to


Pernyataan do…while:
Pernyataan do…while mirip seperti pernyataan while, hanya saja pada do…while pernyataan yang terdapat didalamnya minimal akan sekali diesekusi.
 Bentuk umumnya :
 do
  {
   pernyataan;
  } while(kondisi)

Pernyataan for:
Pernyataan for digunakan untuk menghasilkan pengulangan (looping) beberapa kali tanpa penggunaan kondisi apapun. Pada umumnya looping yang dilakukan oleh for telah diketahuin batas awal, syarat looping, dan perubahannya.
Selama kondisi terpenuhi, maka pertanyaan akan diesekusi.
Bentunya umumnya :
for (inisialisasi;kondisi;perubahan)
 {
  Statemen;
 }

Pernyataan continue dan break:
Pernyataan break akan selalu terlihat digunakan bila menggunakan pernyataan switch. Pernyataan ini juga digunakan dalam loop. Bila pernyataan ini diesekusi, maka akan mengakhiri loop dan akan menghentikan itrasi pada saat tersebut.

Pernyataan go to:
Pernyataan go to, diperlukan untuk melakukan suatu lompatan kesuatu pernyataan yang di tandai dengan tanda “ : “ .
Bentuk umumnya :
Go to bawah;
 Pernyataan1;
 Pernyataan2;
Bawah:pernyataan 3;



Bab 4 Struktur Pemrograman Kalang :

Contoh koding tabel kuadrat :
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
 int x=0;
 cout<<"x  x kuadrat\n";
 while (x<=20)
 { cout<<setw(3)<<x<<setw(8)<<(x*x)<<endl;
 x++;
 }
 return 0;
}

Contoh Program Tabel Kuadrat :

Apa fungsi simbol // ?
Simbol // berfungsi sebagai komentar dalam program/ keterangan

Apa fungsi dari keyword break ?
Break berfungsi mengeluarkan eksekusi compiler dari struktur program setelah suatu kondisi tertentu dipenuhi

Apa fungsi dari continue ?
Continue berfungsi melanjutkan eksekusi compiler ke blok selanjutnya setelah suatu kondisi tertentu dipenuhi.

Apa guna dari fungsi setprecision() ?
Setprecision() merupakan suatu fungsi manipulator yang digunakan untuk mengatur jumlah digit decimal yang ingin ditampilkan.

Apa beda ios::fixed dan ios::scientific ?
ios::fixed dan ios::scientific mempunyai fungsi yang sama yaitu format bilangan riil akan tetap dapat diubah dengan memanggil fungsi set atau unset diikuti argument ios::scientific atau ios::fixed

Apa fungsi dari fabs() ?
fabs() berfungsi untuk menghitung nilai mutlak dari x; x bilangan real

Kalang For untuk Perulangan :
#include <iostream>
using namespace std;
int main()
{
            int i;
            for (i=1; i<=18; i++)
            {
                        cout <<"kalang ke-" << i << endl;
            }
}
Bab 5 Variabel Larik & Strings :

Program Sekup Variabel dalam Kalang For :
#include <iostream>
using namespace std;
int main()
{
            int i = 5;
            cout <<"di luar kalang i= " << i << endl;
            for (i=1; i<=10; i++) {
                        cout <<"di dalam kalang i= " << i<< endl;
            }
            cout <<"di luar kalang i= " << i << endl;
}
Hasil Output :Berikut kegunaan fungsi fungsi berikut ini :
Strlen() :Bentuk format strlen (const char*s),
  berfungsi menghitung panjang string s
Strcpy() :Bentuk format strcpy (char*dest, const char*src),
  berfungsi mengcopy string src ke dest
Strcat() :Bentuk format strcat (char*dest, const char*src),
  berfungsi menambahkan kopian src ke bagian akhir dest
Strcmp() :Bentuk format strcmp (const char*s1, const char*s2),
  berfungsi melakukan perbandingan s1 dengan s2
Strcspn() :Bentuk format strcspn (const char*s1, const char*s2),
  berfungsi menemukan bagian awal string s1 yang mengandung s2
Strupr() :Bentuk format strupr (const char*s),
  berfungsi mengubah string menjadi huruf capital (uppercase)
Strlwr() :Bentuk format strlwr (const char*s),
  berfungsi mengubah string menjadi huruf biasa/kecil (lowercase)
Strrev() :Bentuk format strrev (const char*s),
  berfungsi membalik semua karakter string, jadi huruf terakhir menjadi awal
Strset() :Bentuk format strset (const char*s, int ch),
  berfungsi menset semua karakter dalam s ke ch






Bab 6 Sorting (Pengurutan) :

Pengertian Algoritma Sorting adalah kumpulan langkah sistematis atau secara berutan untuk memperoleh hasil yang diinginkan.

Salah satu contoh dari algoritma untuk langkah ini adalah Sorting (pengurutan). Sorting dapat didefinisikan sebagai pengurutan sejumlah data berdasarkan nilai tertentu.
Pengurutan dapat dilakukan dari nilai terkecil ke nilai terbesar (ascending) atau sebaliknya.

Contoh fungsi untuk memotong motong program :

#include <iostream>
#include <iomanip>
#include <math.h>
using namespace std;
main()
{
 int N;
 float jumlah, rerata, STD, pemb, a[15];
 cout << "banyaknya nilai = ";
 cin >> N;
 jumlah = 0;
 for (int i=0; i<N; i++) {
  cout << "Nilaike-" << (i+1) << " = ";
  cin >> a[i];
  jumlah = jumlah+a[i];
 }
 rerata = jumlah/N;
 pemb = 0;
 for (int i=0; i<N; i++) {
  pemb += (a[i]-rerata )*(a[ i]-rerata);
 }
 STD = sqrt(pemb/(N-1));
 cout << "rerata = " << rerata;
 cout << "\nstandar deviasi= "<<STD;
}