Pertama kali dapat matkuliah ini sebenernya cukup buat otak njelimet dan awur-awuran,,,karena memang dasar saya di SMK tidak mendapat pelajaran ini. Tapi karena bapak dosen mengajarnya dengan santai dan penuh canda tawa...so far saya cukup mengerti,,,(ya ga ngerti banget sih,,,lumayan lah :D),,diselingi cerita pengalaman masa muda pak Doddy Sanjaya selaku dosen yg mengajar,,,cuckup membuat otak santai seperti di pantai.
Pesan untuk teman-teman yang sealiran,,,jangan pernah meremehkan mata kuliah ini karena mata kuliah ini cukup bikin otak njelimet :D,,,peace pak Doddy,,,tapi dengan seringnya latihan dan belajar,,,logika pasti terasah,,dan juga akan menjadi berguna bukanhanya dalam proses pembuatan program,,tapi juga akan membantu kita di kehidupan nyata.
Dunia IT kita
Minggu, 06 Januari 2013
Yang Paling Penting Dalam Pelajaran Algoritma
Menurut saya,,,semua elemen dari Algoritma sangat penting...Tapi tetap untuk bisa menguasainya dan jadi programer handal kita harus memulai dari dasar,,dan terus bertahap naik. Karena tidak ada yang instan,,,semua perlu proses.
Mengapa Kita Harus Belajar Logaritma.
Menurut pribadi sih mempelajari Algoritma bagus untuk mengasah logika karena dalam bahasa pemrograman dan saat pembuatan program Logika sangat di perlukan untuk pemecahan masalah dan pengambilan keputusan yang logis. Ini juga bisa kita terapkan dalam kehidupan sehari-hari
Sabtu, 05 Januari 2013
Tipe Data, Struktur Kontrol, Looping (Perulangan), Function, Aray, Void Rekursi.
Tipe Data
Tipe Data pada 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
|
|
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
|
|
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.
Berikut contoh program :
Struktur Kontrol
Dalam sebuah proses program, biasanya terdapat kode penyeleksian kondisi, kode pengulangan program, atau kode untuk pengambilan keputusan. Untuk tujuan tersebut, C++ memberikan berbagai kemudahan dalam sintaknya. Terdapat sebuah konsep, yakni Blok Instruksi. Sebuah blok dari instruksi merupakan sekelompok instruksi yang dipisahkan dengan tanda semicolon (;) dan berada diantara tanda { dan }.
¡ Untuk Blok Instruksi, penggunaan tanda { dan } boleh ditiadakan. Dengan syarat, hanya pernyataan tunggal yang akan dilaksanakan oleh blok instruksi. Apabila pernyataan yang dijalankan lebih dari satu, maka tanda { dan } wajib disertakan.
¡ Format penulisannya :
if (kondisi) pernyataan;
¡ kondisi adalah ekspresi yang akan dibandingkan. Jika kondisi bernilai benar, maka pernyataan akan dijalankan. Namun, jika kondisi bernilai salah, maka pernyataan akan diabaikan.
Contoh pernyataan berikut akan menampilkan tulisan x adalah 100 apabila x bernilai 100:
if (x==100)
cout << “x adalah 100″;
¡ Jika menginginkan lebih dari sebuah pernyataan yang dijalankan, ketika kondisi terpenuhi maka blok instruksi harus menyertakan tanda { dan }.
if (x==100)
{
cout << “x adalah “;
cout << x;
}
- Contoh dengan 2 pernyataan :
¡ Bila menginginkan sesuatu dijalankan ketika kondisi tidak terpenuhi, dapat ditambahkan keywordelse. Sintaknya adalah :
if (kondisi)
pernyataan1;
else
pernyataan2;
Contoh :
if (x==100)
cout <<”x adalah 100″;
else
cout <<”x bukan 100″;
- Contoh dengan 3 pernyataan :
¡ Pernyataan if…else… dapat terdiri dari beberapa else. Pada contoh berikut, program akan memberikan jawaban terhadap inputan data, apakah berupa nilai positif, negative atau nol :
if (x>0)
cout<<”positive”;
else if (x<0)
cout<<”negative”;
else
cout<<”x adalah 0″;
- Swicth … Case
Logika menggunakan switch sama dengan menggunakan perintah if yang telah dijelaskan sebelumnya.
Sintaknya adalah :
switch (pilihan)
{
case nilai1 :
blok pernyataan 1
break;
case nilai2 :
blok pernyataan 2
break;
default :
blok pernyataan default
}
Cara kerjanya:
- switch akan mengevaluasi pilihan dan apabila isinya sama dengan nilai1, maka blok pernyataan 1 akan dijalankan sampai menemukan perintah break untuk kemudian keluar dari blok switch.
- Bila pilihan tidak sama isinya dengan nilai1, maka akan dicocokkan lagi dengan nilai2. dan apabila isinya sama dengan nilai2, maka blok pernyataan 2 akan dijalankan sampai menemukan perintah break untuk kemudian keluar dari blok switch.
- Terakhir, apabila isi pilihan tidak sesuai dengan nilai1, nilai2 dan seterusnya maka secara otomatis yang dijalankan adalah blok pernyataan default.
- Versi switch
switch (x)
{
case 1:
cout<<”x adalah 1″;
break;
case 2:
cout<<”x adalah 2″;
break;
default:
cout<<”tidak teridentifikasi”;
}
- Versi If else
if (x==1)
{
cout<<”x adalah 1″;
}
else if(x==2)
{
cout<<”x adalah 2″;
}
else
{
cout<<”tidak teridentifikasi”;
}
¡ Sedangkan untuk program yang memiliki beberapa nilai pilihan, maka dapat ditulis seperti contoh berikut:
switch (x)
{
case 1:
case 2:
case 3:
cout<<”x = 1, 2 atau 3″;
break;
default:
cout<<”x tidak sama dengan 1, 2 atau 3 “;
}
Looping
Proses perulangan ada 3 yakni For,While dan do While.
- Pertama saya akan membahas For. Bentuk umum pernyataan For yaitu :
For (inisialisasi; syarat pengulangan; pengubah nilai pencacah)
{
Pernyataan;
}
Contoh :
Include <iostream>
Include <conio>
Main()
{
For (int a=1 ; a<=5; a++)
Cout<<a;
Getch();
}
*Maka cout yang dikeluarkan adalah : ” 12345”
- Kedua saya akan membahas While. Bentuk umum pernyatan While yaitu :
While (syarat)
Pernyataan/Perintah ;
Contoh :
#include <iostream>
#include <conio>
main()
{
int i=1;
while (i<=5)
{
cout<<i;
i++;
}
getch();
}
*maka cout yang dikeluarkan adalah : “12345”
- Ketiga saya akan membahas Do While. Bentuk umum pernyatan Do While yaitu :
do
Pernyataan/Perintah ;
While (syarat);
Contoh :
#include <iostream>
#include <conio>
main()
{
int i=1;
do
{
cout<<i;
i++;
} while (i<=5);
getch();
}
*maka cout yang dikeluarkan adalah : “12345”
Contoh soal mengasilkan cout sebagai berikut dengan menggunakan For,While & do While :
2 x 1=2
2 x 2=4
2 x 3=6
2 x 4=8
2 x 5=10
2 x 6=12
2 x 7=14
2 x 8=16
2 x 9=18
2 x 10=20
Jawab :
- Bentuk For
#include <iostream>
#include <conio>
main()
{
for (int i=1;i<=10;i++)
{
cout<<”2 x “<<i<<”=”<<2*i<<endl;
}
getch();
}
- Bentuk While
#include <iostream>
#include <conio>
main()
{
int i=1;
while (i<=10)
{
cout<<”2 x “<<i<<”=”<<2*i<<endl;
i++;
}
getch();
}
- Bentuk Do While
#include <iostream>
#include <conio>
main()
{
int i=1;
do
{
cout<<”2 x “<<i<<”=”<<2*i<<endl;
i++;
} while (i<=10);
getch();
}
Sumber By : Ikadekyuda.wordpress.com
Function
Function merupakan sebuah blok instruksi yang dieksekusi dan dipanggil dari bagian lain tubuh program.
Fungsi dan Function :
- Mengurangi pengulangan penulisan program yang berulangan atau sama.
- Dapat melakukan pendekatan top-down dan divide-and-conquer:
- Program besar dapat dipisah menjadi program-program kecil.
- Program menjadi terstruktur, sehingga mudah dipahami dan dikembangkan.
- Kemudahan dalam mencari kesalahan-kesalahan karena alur logika jelas dan kesalahan dapat dilokalisasi dalam suatu modul tertentu saja.
- Modifikasi program dapat dilakukan pada suatu modul tertentu saja tanpa mengganggu program keseluruhan.
- Mempermudah dokumentasi.
- Reusability: Suatu fungsi dapat digunakan kembali oleh program atau fungsi lain
Kategori Function dalam C/C+ +
Standard Library Function
Yaitu fungsi-fungsi yang telah disediakan oleh C/C++ dalam file-file header atau librarynya. Misalnya: clrscr(), printf(), getch() Untuk function ini kita harus mendeklarasikan terlebih dahulu library yang akan digunakan, yaitu dengan menggunakan preprosesor direktif.
Programmer-Defined Function
Adalah function yang dibuat oleh programmer sendiri. Function ini memiliki nama tertentu yang unik dalam program, letaknya terpisah dan program utama, dan bisa dijadikan satu ke dalam suatu library buatan programmer itu sendiri yang kemudian juga di-include-kan untuk penggunaanya.
Format
Format penulisannya adalah sebagai berikut:
tipe nama(argumen1, argumen2,…)
{
pernyataan;
}
Dimana:
- tipe berisi tipe data yang akan dikembalikan oleh fungsi
- nama merupakan pengenal untuk memanggil fungsi
- argumen (dapat dideklarasikan sesuai dengan kebutuhan).
- Tiap-tiap argumen terdiri dari tipe-tipe data yang diikuti oleh pengenalnya. Sama seperti mendeklarasikan variable baru (contoh, int x).
- pernyataan merupakan bagian tubuh fungsi. Dapat berupa pernyataan tunggal ataupun pernyataan majemuk.
Contoh
#include <iostream.h>
#include <conio.h>
int penjumlahan(int a, int b)
{
int r;
r=a+b;
return r;
}
void main()
{
int z;
z=penjumlahan(5,3);
cout<<”Hasil penjumlahan = ” << z;
getch();
}
Hasil eksekusinya adalah :
Hasil penjumlahan = 8
Langkah kerja
Ketika program dieksekusi, yang dijalankan pertama kali adalah fungsi main().
Terlihat jelas bahwa dalam main() terdapat variable z dengan tipe data integer.
Setelah itu, fungsi penjumlahan dipanggil. Maka akan terdapat proses pertukaran data sebagai berikut:
z = penjumlahan ( 5 , 3 );
int penjumlahan(int a, int b)
maka setelah terjadi pengisian nilai, variable a akan terisi dengan nilai 5 dan variable b akan terisi dengan nilai 3.
Fungsi penjumlahan mendeklarasikan sebuah variable baru lagi (int r;) dan kemudian menjumlahkan nilai r=a+b; dengan hasil akhir variable r = 8. Karena masing-masing variable a dan b sudah terisi dengan nilai 5 dan 3.
Kode :
return r;
merupakan pengakhir fungsi penjumlahan dan memberikan hasil akhir nilai r kepada fungsi yang memanggilnya (dalam hal ini fungsi main()).
Proses pengembalian nilai dapat digambarkan sebagai berikut:
int penjumlahan(int a, int b)
8
z = penjumlahan ( 5 , 3 );
maka ketika perintah cout<<”Hasil penjumlahan =” << z; dijalankan, hasilnya adalah 8.
Pendeklarasian fungsi tanpa tipe (menggunakan void)
Kadang-kadang terdapat fungsi yang tanpa memerlukan adanya pengembalian nilai. Misalkan, sebuah fungsi yang hanya bertugas mencetak kalimat ke layar monitor dan tanpa memerlukan adanya pertukaran parameter.
Dalam kondisi seperti ini, maka dipergunakan kata kunci void.
Contoh :
#include <iostream.h>
#include <conio.h>
void garis()
{
int i;
for (i=0;i<35;i++)
cout<<”-”;
}
void main()
{
garis();
cout<<”\n I Kadek Yuda \n”;
garis();
cout<<”\n 120010050 \n”;
garis();
getch();
}
*catatan : Yang harus diperhatikan adalah, pemanggilan fungsi harus disertai dengan tanda(). Seperti contoh di atas, fungsi garis walaupun didekarasikan tanpa tipe data dan tanpa argumen, dipanggil dalam fungsi main dengan garis().
Sumber By : Ikadekyuda.wordprees.com
Array
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 dengan tanda kurung siku buka dan tutup dimana didalamnya terdapat jumlah elemen array
– Elemen array harus dinyatakan sebagai non negatif integer
– 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 dengan tanda kurung siku buka dan tutup dimana didalamnya terdapat jumlah elemen array
– Elemen array harus dinyatakan sebagai non negatif integer
Contoh Program :
//Program Mengunakan Array
#include<iostream.h>
#include<conio.h>
main()
{
int a[5]={5,10,15,20,25};
int b[5]={10,20};
int c[5]={15,0,30};
int j;
//Program Mengunakan Array
#include<iostream.h>
#include<conio.h>
main()
{
int a[5]={5,10,15,20,25};
int b[5]={10,20};
int c[5]={15,0,30};
int j;
cout<<endl;
for(j=0;j<5;j++)
{
cout<<”A ["<<j<<"] = “<<a[j]<<” , B ["<<j<<"] = “<<b[j]<<” , C ["<<j<<"] = “<<c[j]<<endl;
}
getch();
}
for(j=0;j<5;j++)
{
cout<<”A ["<<j<<"] = “<<a[j]<<” , B ["<<j<<"] = “<<b[j]<<” , C ["<<j<<"] = “<<c[j]<<endl;
}
getch();
}
dan cout yang dihasilkan :
Void Rekursi
Fungsi dalam C dapat dipakai secara rekursi, dalam artian suatu fungsi dapat memanggil dirinya sendiri.
contoh program :
Dengan Rekursi
#include <iostream>
#include <conio>
#include <conio>
void pake_rekursi(int n)
{
n++;
cout<<n<<endl;
if(n<10)
{
pake_rekursi(n);
}
}
{
n++;
cout<<n<<endl;
if(n<10)
{
pake_rekursi(n);
}
}
main()
{
pake_rekursi(0);
getch();
}
{
pake_rekursi(0);
getch();
}
coutnya adalah :
Tanpa rekursi
#include <iostream>
#include <conio>
#include <conio>
void tanpa_rekursi(int n)
{
int i;
for (i=1;i<=n;i++)
{
cout<<i<<endl;
}
}
{
int i;
for (i=1;i<=n;i++)
{
cout<<i<<endl;
}
}
main()
{
tanpa_rekursi(10);
getch();
}
{
tanpa_rekursi(10);
getch();
}
Sumber : Segala Sumber
Langganan:
Postingan (Atom)