Tuesday, September 10, 2013

MATERI PERKULIAHAN TI S1 (UDINUS)

Algoritma & Struktur Data


Materi Pembelajaran:
  1. Array
  2. Void
  3. Rekursif
  4. Fungsi Input/Output Pada C++
  5. Tipe Data C++
  6. Basis Data




Array
  •  Kumpulan variabel memiliki tipe data yang sama
  • Variabel bisa simpel (char, float, double, int) atau tipe data kompleks (struct, pointer, class)
  • Setiap elemen array ditandai dengan nama array dan diikuti dengantanda kurung siku buka dan tutup dimana didalamnya terdapat jumlah elemen array
  •  Elemen array harus dinyatakan sebagai non negatif integer
Contoh Program :
#include <iostream.h>
#include <conio.h>

main()
{
   int a[5]={10,15,20,25,30};
   int b[5]={10,20};

   int c[5]={15,0,30};
   int j;  

// Menampilkan nilai dari element array
cout<<endl;
for(j=0;j<5;j++)
{
cout<<"A ["<<j<<"] = "<<a[j]<<" , B ["<<j<<"] = "<<b[j]<<" , C ["<<j<<"] = "<<c[j]<<endl;
}
getch();






Outputnya: 












Penjelasan Lebih detail Mengenai Array dapat Anda Lihat disini : ARRAY

__________________________________________


Void 

Void adalah tipe data yang digunakan untuk tipe suatu fungsi yang tidak mengembalikan nilai. Void itu digunakan biasa nya untuk sebuah function atau procedure yang tidak membutuhkan nilai balik. Input dalam tipe data void disebut dengan “Parameter”.
Ciri" :
 
1. Tidak adanya keyword return.
2. Tidak adanya 
tipe data di dalam deklarasi fungsi.
3. Menggunakan keyword void.
4. Tidak dapat langsung ditampilkan hasilnya.
5. Tidak memiliki nilai kembalian fungsi.


Contoh Program:

Void lpp (int p, int l)
{
Int luas;
Cout<<”Luasnya adalah = “<<luas;
}
void main()
{
  lpp (6,5);
  lpp (7,3);
  lpp (8,4);
getch();
} 

__________________________________________________


Rekursif


Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri.  Fungsi ini akan terus berjalan sampai kondisi berhenti terpenuhi, oleh karena itu dalam sebuah fungsi rekursif perlu terdapat 2 blok penting, yaitu blok yang menjadi titik berhenti dari sebuah proses rekursi dan blok yang memanggil dirinya sendiri.
Contoh – contoh penerapan rekursif:

1. Fungsi cetak ke layar
Fungsi ini mencetak  nilai dari paremeter yang dilempar kepadanya.  Jika nilai dari parameter tersebut  > 0, fungsi akan mencetak nilai dari parameter tersebut dan kemudian memanggil dirinya lagi, jika tidak, program berhenti.


 






Untuk melihat lebih jelas, terapkan fungsi di atas dalam sebuah program

2. Fungsi pangkat
Fungsi ini digunakan untuk menghitung nilai: Xn dengan n berupa bilangan bulat positif.  Solusi dari persoalan ini:
jika n = 1 MAKA Xn = X
selain itu  Xn = X * Xn-1
Sebagai contoh diambil nilai X=5 dengan n=3, pelukisan proses pemecahannya:



Berikut adalah fungsi pangkat dengan menggunakan solusi di atas:



a adalah bilangan yang dipangkatkan, sedangkan b adalah bilangan pemangkatnya.  Jika nilai dari b adalah 1, return a, lainnya return a dikali dengan fungsi pangkat dengan parameter a dan b-1.  Untuk lebih jelas, terapkan dalam program.







3. Fungsi faktorial
Faktorial dapat dibuat dengan menerapkan rekursi.  Berikut ini adalah fungsi faktorial rekursif dari sebuah program.








 
Fungsi faktorial diatas akan melakukan rekursi selama nilainya > 1.  Pelukisan penyelesaiannya:

























Sumber : http://www.kelasinformatika.com/2012/06/mengenal-fungsi-rekursif-dengan_10.html#ixzz2GuAs7sQS

_________________________________________________ 


Fungsi Input/Output pada C++


Berbicara tentang input dan ouput data dalam C++ tidak jauh dari penggunaan keyboard untuk input dan tampilan layar monitor untuk output. Dalam C++ menggunakan berbagai macam format untuk input dan output tergantung dari penggunaan file header yang digunakan, kemudian yang akan dibahas kali ini adalah penggunaan 2 standar input dan output dasar yang sering digunakan dalam C++ dengan format yang berbeda.
1. Input (Memasukkan Data)
Dengan menggunakan #include <stdio.h> bagi yang belum tahu fungsi stdio.h lihat artikel sebelumnya aturan dan perintah dasar c++

a. Fungsi scanf()
fungsi scanf() berguna untuk meninput data baik berupa bilangan, karakter, ataupun kalimat secara terformat. Berikut format-format yang digunakan untuk scanf() :
%c : Membaca sebuah karakter
%s : Membaca sebuah string
%i, %d : Membaca sebuah bilangan bulat (integer, desimal)
%f, %e : Membaca sebuah bilangan pecahan (real, float)
%o : Membaca sebuah bilangan octal
%x : Membaca sebuah bilangan heksadesimal
%u : Membaca sebuah bilangan tak bertanda
b. Fungsi gets()
fungsi gets() berguna untuk memasukkan data bertipe karakter, tanpa penggunaan format seperti scanf(), dan tidak dapat untuk menginput data numeric ataupun string.
c. Fungsi getchar()
fungsi getchar berguna untuk membaca data yang bertipe karakter.


Dengan menggunakan #include <iostream.h> bagi yang belum tahu fungsi iostream.h lihat artikel sebelumnya aturan dan perintah c++

a. Fungsi cin >> var
fungsi cin >> berguna untuk menginput data berupa numerik, string, dan karakter. Var dapat lebih dari satu variabel (cin >> var >> var) dan dapat berupa karakter.
b. Format : cin.get.(var, sizeof(var)), penggunaan format ini untuk menginput string lebih dari satu kata atau seperti kita menekan spasi, tetapi akan terjadi kesalahan jika satu program digunakan lebih dari satu kali. Dan untuk menangani ini lebih baik menggunakan format cin.getline(var, sizeof(var)).
c. Format : cin.getline(var, sizeof(var)).

2. Output (Menampilkan Data)
Dengan menggunakan #include <stdio.h>
a. Menampilkan output ke layar monitor
Fungsi printf() berguna untuk menampilkan semua jenis data (number, string, dan karakter)
Fungsi puts() digunakan untuk menampilkan data string dan secara otomatis akan pidah baris (new line).
Fungsi putchar() digunakan untuk menampilkan sebuah karakter.
b. Mengatur tampilan output
Bentuk sintaks :
printf(”%m,nf”, var)
m : Menyatakan banyaknya digit angka
n : Menyatakan banyaknya digit angka dibelakang koma
var : variabel bertipe float yang akan ditampilkan
Contoh
printf(”%5.2f”, nilai); ”berarti yang akan ditampilkan angka sebanyak 5 digit dan 2 digit angka dibelankang koma”

Dengan menggunakan #include <iostream.h>
Menampilkan output ke layar monitor
Bentuk sintaks
cout << var;
cout << konstanta;
Fungsi cout << dapat digunakan untuk menampilkan semua jenis data (numeric dan karakter) yang dapat berupa nilai, karakter ataupun konstanta.


_________________________________________________

Tipe Data C++



        Tipe data merupakan format yang digunakan untuk menginisialisasi sebuah variabel, dimana variabel tersebut mempunyai ukuran, size maupun bertipe string, character ataupun number.Untuk menyimpan suatu variabel diperlukan tempat khusus di dalam memori komputer, Besar dan tipe dari Variabel-variabel di dalam standar program C++ dispesifikasikan sebagai berikut :

Nama
Keterangan
Ukuran
Jangkauan
char
Abjad/karakter atau untuk bilangan bulat kecil
1 byte
signed: -128 to 127
unsigned: 0 to 255
short int (short)
Bilangan bulat dengan jangkauan pendek
2 byte
signed: -32768 to 32767
unsigned: 0 to 65535
int

Bilangan bulat
4 byte
signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295
long int (long)
Integer dengan jangkauan panjang
4 byte
signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295
bool
Boolean, dapat bernilai benar atau salah (true or false)
i byte
true or false
float
Angka dengan titik mengambang (bilangan cacah)
4 byte
3.4e +/- 38 (7 digit)
double
Bilangan cacah dengan ketelitian ganda
8 byte
1.7e +/- 308 (15 digits)
long double
Bilangan cacah dengan ketelitian ganda panjang
8 byte
1.7e +/- 308 (15 digits)
wchar_t
Karakter lebar, biasa dipakai untuk Unicode karakter

2 byte
1 karakter lebar

Variabel

Variabel merupakan suatu pengenal atau identifier yang digunakan untuk memberikan suatu nilai tertentu didalam pemrograman. Nilai suatu variable bersifat dinamis yang berarti dapat berubah-ubah, lain hal dengan kontanta yang nilai bersifat tetap / mutlak. Aturan dalam pendeklarasian variable :

1. Variabel dapat dideklarasi dengan menggunakan gabungan huruf dan angka dengan syarat karakter pertama haruslah huruf.

2. Variabel yang dideklarasi tidak boleh menggunakan spasi, apabila ingin menggunakan spasi lebih baik gunakan garis bawah(underscore).

3. Variabel yang dideklarasi tidak boleh menggunakan simbol-simbol khusus seperti : $, &, ?, <, dan sejenisnya.

4. Panjang variable bebas, tetepi yang bisa dikenali hanyalah 31 karakter pertama. Apabila nama variable panjang sebaiknya disingkat, misalnya Nomor induk pegawai disingkat NIP.
Contoh Program :





Sumber : 
http://dickynd.wordpress.com/2008/11/10/tipe-data-dasar-c/
http://id.wikipedia.org/wiki/C%2B%2B
____________________________________________________

Basis Data

Basis dapat diartikan sebagai markas atau gudang, tempat bersarang/berkumpul. Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep, keadaan dan sebagainya yang direkam dalam bentuk angka, huruf, simbol, teks, gambar, bunyi, atau kombinasinya.

Beberapa definisi basis data :


1. Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasikan sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah.
2. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan
3. Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronik.


     Jadi Basis Data adalah sekumpulan data yang saling berhubungan satu dengan yang lainnya yang diorganisasikan berdasarkan sebuah skema atau struktur tertentu, tersimpan di hardware komputer dan dengan software untuk melakukan manipulasi untuk kegunaan tertentu.



Tujuan Pemanfaatan Basis Data 

1. Kecepatan dan Kemudahan

    Yakni agar pengguna basis data bisa:

-menyimpan data
-melakukan perubahan/manipulasi terhadap data
-menampilkan kembali data dengan lebih cepat dan mudah dibandingkan dengan cara biasa (baik manual ataupun elektronis).

2. Efisiensi Ruang Penyimpanan (Space)
    Dengan basis data kita mampu melakukan penekanan jumlah redundansi (pengulangan) data, baik dengan menerapkan sejumlah pengkodean atau dengan membuat relasi-relasi antara kelompok data yang saling berhubungan.

    Agar data sesuai dengan aturan dan batasan tertentu dengan cara memanfaatkan pengkodean atau pembentukan relasi antar data bersama dengan penerapan aturan/batasan (constraint) tipe data, domain data, keunikan data dsb.



3. Ketersediaan (Availability)
     Agar data bisa diakses oleh setiap pengguna yang membutuhkan, dengan penerapan teknologi jaringan serta melakukan pemindahan/penghapusan data yang sudah tidak digunakan / kadaluwarsa untuk menghemat ruang penyimpanan.


4. Kelengkapan (Completeness)
    Agar data yang dikelola senantiasa lengkap baik relatif terhadap kebutuhan pemakai maupun terhadap waktu, dengan melakukan penambahan baris-baris data ataupun melakukan perubahan struktur pada basis data; yakni dengan menambahkan field pada tabel atau menambah tabel baru.


5. Keamanan (Security)
     Agar data yang bersifat rahasia atau proses yang vital tidak jatuh ke orang / pengguna yang tidak berhak, yakni dengan penggunaan account (username dan password) serta menerapkan pembedaan hak akses setiap pengguna terhadap data yang bisa dibaca atau proses yang bisa dilakukan.

6. Kebersamaan (Sharability)
     Agar data yang dikelola oleh sistem mendukung lingkungan multiuser (banyak pemakai), dengan menjaga / menghindari munculnya problem baru seperti inkonsistensi data (karena terjadi perubahan data yang dilakukan oleh beberapa user dalam waktu yang bersamaan) atau kondisi deadlock (karena ada banyak pemakai yang saling menunggu untuk menggunakan data).

No comments:

Post a Comment