Minggu, 30 Juli 2017

Share:

Sabtu, 29 Juli 2017

Struktur Kontrol Percabangan

A. Percabangan 1 kondisi (Tunggal) atau Struktur Kondisi IF….
Struktur if dibentuk dari pernyataan if dan sering digunakan untuk menyeleksi suatu kondisi tunggal. Bila proses yang diseleksi terpenuhi atau bernilai benar, maka pernyataan yang ada di dalam blok if akan diproses dan dikerjakan. Bentuk umum:
if(kondisi)
pernyataan;

Contoh Program 1 :
/* Program struktur kondisi if tunggal untuk memeriksa suatu kondisi */
//Nama programmer :........
#include "stdio.h"
#include "conio.h"
int main()
{
float nilai;
printf("Masukan nilai yang didapat :");
scanf("%f", &nilai);
if(nilai > 65)
printf("\n ANDA LULUS !!!!\n");
getch();
}
Bila program tersebut dijalankan dan kita memasukan nilai 80, maka perintah mencetak perkataan LULUS !!!! akan dilaksanakan, namun sebaliknya bila kita memasukan sebuah nilai yang kurang dari 65 maka program akan berhenti dan tidak dihasilkan apa-apa.

Contoh Program 2 :
/* Program contoh penerapan struktur kondisi if tunggal*/
//Nama programmer :........
#include "stdio.h"
#include "conio.h"
int main()
{
int a,b,c,max;
printf("Masukan bil 1 : ");fflush(stdin); scanf("%i",&a);
printf("Masukan bil 2 : ");fflush(stdin); scanf("%i",&b);
printf("Masukan bil 3 : ");fflush(stdin); scanf("%i",&c);
if((a>b)&&(a>c))
max=a;
if((b>a)&&(b>c))
max=b;
if((c>a)&&(c>b))
max=c;
printf("Bil terbesar : %i \n",max);
if(max>0)
printf("Bil tsb adalah bil positif \n");
if(max<0)
printf("Bil tsb adalah bil negatif \n");
getch();
}
B. Percabangan Ganda
Percabangan ganda apabila terdapat 2 alternatif instruksi yang dijalankan. Logika ini memungkinkan kompiler menjalankan salah satu dari 2 alternatif instruksi yang ada, dan salah satu instruksi pasti dijalankan. Notasi algoritmik yang digunkanan :

If (kondisi) {
Instruksi pertama
}else{
Instruksi kedua
}

Contoh :
Program memeriksa inputan apakah bilangan ganjil atau genap. Apabila diperiksa bilangan genap maka tulis “Bilangan genap” dan kalau bukan maka tulis “Bilangan ganjil”.

#include <stdio.h>
void main(){
int angka;
scanf(“%d”,&angka);
if (angka % 2 == 0)
printf (“Bilangan Genap”);
else
printf(“Bilangan Ganjil”);
}

3. Percabangan Lebih dari 2
Pada dasarnya hanya terdapat 2 jenis seleksi dalam struktur algoritma pemrograman, namun bukan berarti hanya bisa dikembangkan pada 2 jenis tersebut saja. Struktur seleksi dapat dikembangkan menjadi bentuk yang tidak terbatas dan dapat dikombinasikan kedalam bentuk perulangan selama notasi penulisannya tidak terdapat kesalahan.

Kemampuan logika seseorang dalam merancang program dan mengamati dari permasalahan yang ada menjadi bagian yang paling penting dalam melakukan pengembangan dari bentuk seleksi ini.
Dibawah ini akan diberikan contoh seleksi menggunakan kondisi lebih dari 2.

Contoh :
Program untuk menentukan grade dari sebuah nilai ujian, dengan aturan grade A untuk rentang nilai 80 – 100, grade B untuk nilai 70 – 80 dan grade C untuk nilai 50 – 70 dan grade D untuk nilai dibawah itu. 

#include <stdio.h>
void main(){
int nilai;
scanf(“%d”,&nilai);
if (nilai >= 80 && nilai <= 100)
print(“Grade A”);
else if (nilai >= 70 && nilai <= 80)
printf(“Grade B”);
else if (nilai >= 50 && nilai <= 70)
printf(“Grade C”);
else
printf(“Grade D”);
}

4. Percabangan Bersarang Struktur Case
Struktur case sebenarnya memiliki fungsi yang sama dengan struktur if yang telah kita pelajari diatas. Struktur case ini dapat meringkaskan alur logika yang terjadi apabila diaplikasikan pada pada alur seleksi yang memiliki lebih dari 2 kondisi. Berikut adalah notasi algoritmanya : 

switch (kondisi){
case kondisi_1 :
break;
case kondisi2 :
break;
default : }

Struktur logika seleksi menggunakan struktur case ini jauh lebih ringkas apabila diaplikasikan pada struktur seleksi yang memiliki kondisi lebih dari 2. Kompiler program akan menjalankan instruksi dari struktur case dan memeriksa setiap kondisi yang ada, apabila belum ada kondisi yang bernilai benar maka kompiler akan terus menjalankan instruksi dibawahnya sampai ditemukan kondisi yang bernilai benar. Namun apabila hingga kondisi terakhir diperiksa dan tidak ditemukan kondisi yang bernilai benar maka kondisi default yang akan dijalankan.

Contoh :
Program untuk menentukan apakah karakter „%‟, spasi, „&‟ atau „$‟ yang ditekan oleh
pengguna melalui keyboard.
#include <stdio.h>
void main(){
int tombol;
scanf(“%d”,&tombol);
swicth(tombol){
case „32‟:
printf(“Anda menekan tombol spasi”);
break;

case ‟36: printf(“Anda menekan tombol $”);
break;
case „37‟ : printf(“Anda menekan tombol %”);
break;
case „38‟: printf(“Anda menekan tombol &”);
break;
default : printf(“Anda tidak mematahui aturan.”);
}} 

Perbedaan yang paling jelas antara stukrut if dengan struktur case adalah : 
  • Struktur if dapat menerima kondisi yang berupa operasi logika. Sedangkan stuktur case tidak.
  • Struktur case lebih efektif apabila digunakan untuk logika seleksi lebih dari 2 kondisi.
  • Struktur case dan sktuktur if dapat dikombinasikan kedalam satu bagian, dengan catatan tata cara penulisan notasi tidak terdapat kesalahan.
  • Struktur case tidak dapat melakukan pengecekan terhadap tipe data string / kalimat.

Share:

Input dan Ouput

MEMASUKKAN DATA
A. scanf()
  • Fungsi pustaka scanf() digunakan untuk menginput data berupa data numerik, karakter dan string secara terformat.
  • Hal-hal yang perlu diperhatikan dalam pemakaian fungsi scanf() :
    - Fungsi scanf() memakai penentu format
    - Fungsi scanf() memberi pergantian baris secara otomatis
    - Fungsi scanf() tidak memerlukan penentu lebar field
    - Variabelnya harus menggunakan operator alamat &
     Kode penentu format :
         - %c : Membaca sebuah karakter
         - %s : Membaca sebuah string
         - %i, %d : Membaca sebuah bilangan bulat (integer)
         - %f, %e : Membaca sebuah bilangan pecahan (real)
         - %o : membaca sebuah bilangan octal
         - %x : Membaca sebuah bilangan heksadesimal
         - %u : Membaca sebuah bilangan tak bertanda 

Contoh Program :
/* Program memasukan inputan dengan beberapa tipe data */
//Nama programmer :....
#include <stdio.h>
#include <conio.h>
int main()
{
int jumlah;
char huruf, nis[10];
float nilai;
printf("Masukkan sebuah bilangan bulat :");
scanf("%d", &jumlah );

printf("Masukkan sebuah karakter : ");
scanf("%c", &huruf );
printf("Masukkan nis Anda : ");
scanf("%s", &nis );
printf("Masukkan sebuah bil pecahan : ");
scanf("%f", &nilai );

printf("\nNilai variable yang Anda masukkan adalah :\n");
printf("jumlah = %d \n", jumlah );
printf("huruf = %c \n", huruf );
printf("nis = %s \n", nis );
printf("nilai = %f \n", nilai );
getch();
}

B. gets() 
  • Fungsi gets() digunakan untuk memasukkan data bertipe karakter dan tidak dapat digunakan untuk memasukkan data numerik.
  • Harus diakhiri dengan penekanan tombol enter
  • Cursor secara otomatis akan pindah baris
  • Tidak memerlukan penentu format
Contoh Program :
/* Program inputan tipe data karakter string dengan fungsi gets*/
//Nama programmer :....
#include "stdio.h"
#include "conio.h"
int main()
{
char nama[40];
char alamat[40];
printf("Masukkan nama Anda : "); gets(nama);
printf("Masukan alamat anda :"); gets(alamat);
printf("Nama Anda adalah %s \n", nama);
printf("Alamat Anda adalah %s \n", alamat);
getch();
}


C. getchar()
  • Fungsi getchar() digunakan untuk membaca data yang bertipe karakter
  • Harus diakhiri dengan penekanan tombol enter
  • Karakter yang dimasukkan terlihat pada layar
  • Pergantian baris secara otomatis
D. getch() dan getche()
  • Fungsi getch() dan getche() digunakan untuk membaca data karakter.
  • Karakter yang dimasukkan tidak perlu diakhiri dengan penekanan tombol enter.
  • Tidak memberikan efek pergantian baris secara otomatis
  • Jika menggunakan fungsi getch() karakter yang dimasukkan tidak akan ditampilkan
    pada layer sehingga sering digunakan untuk meminta inputan berupa password.
  • Sedangkan pada getche() karakter yang dimasukkan akan ditampilkan pada layar.
 Contoh Program :
//contoh penggunaan getch dan getche
36
//Nama programmer:....
#include "stdio.h"
#include "conio.h"
int main()
{
char a1, a2;
printf("Masukkan sebuah karakter : ");
a1 = getche();
printf("\nKarakter yang Anda masukkan adalah %c\n", a1);
printf("\nMasukkan sebuah karakter lagi: ");
a2 = getch();
printf("\nKarakter yang Anda masukkan adalah : %c", a2);
getch();
}

CATATAN :
Jika terdapat beberapa proses input (memasukkan data) sekaligus, maka sebaiknya ditambahkan fungsi fflush(stdin); setelah fungsi scanf(). Fungsi fflush(stdin) berfungsi menghapus buffer di dalam alat I/O.
 
 
MENAMPILKAN DATA
A. Menampilkan data ke layar monitor
  • Menggunakan fungsi printf(), puts(), dan putchar().
  • Fungsi printf() digunakan untuk menampilkan semua jenis data (numeric dan karakter)
  • Fungsi puts() digunakan untuk menampilkan data string dan secara otomatis akan
    diakhiri dengan perpindahan baris.
  • Fungsi putchar() digunakan untuk menampilkan sebuah karakter. 
B. Mengatur tampilan bilangan pecahan (float).
Bentuk umum :
printf(“%m.nf”, argument);
  • m : menyatakan panjang range
  • n : menyatakan jumlah digit di belakang koma.
  • argument : nilai atau variable yang akan ditampilkan. 
Contoh :
printf(“%5.2f”, nilai);
artinya variable nilai akan ditampilkan sebanyak 5 digit dengan 2 digit di belakang koma.

Contoh Program 1 :
/* Program untuk menampilkan data berupa bilangan pecahan */
//Nama programmer:.....
#include "stdio.h"
#include "conio.h"
int main()
{
float nilai;

puts("Masukkan nilai Anda :" ); scanf("%f", &nilai);
printf("\n Anda memperoleh nilai %5.2f", nilai);
printf("\n Apakah Anda telah puas mendapat nilai %6.4f ", nilai);
getch();
}

Contoh Program 2 :
/* Program untuk menampilkan data berupa bilangan integer dan string */
//Nama programmer:.....
#include "stdio.h"
#include "conio.h"
int main()
{
int umur;
char nama[30];
puts("Masukkan nama Anda : ");
gets(nama);
puts("Masukkan umur Anda : ");
scanf("%d", &umur);
printf("Nama Anda : %s \n", nama);
printf("Umur Anda : %d \n", umur);
getch();
}

C. Menampilkan data ke printer
  •  Untuk menampilkan data ke printer dapat menggunakan fungsi fprintf(), fputs() dan fputc().
  •  Fungsi fprintf() digunakan untuk mencetak semua jenis tipe data ke printer dan secaraotomatis memberikan efek perpindahan baris.
  •  Fungsi fputs() digunakan untuk mencetak tipe data string ke printer 
  •  Fungsi fputc() digunakan untuk mencetak tipe data karakter ke printer
Contoh Program :
#include “stdio.h”
#include “conio.h”
int main()
{
fprintf(stdprn, “Hallo, Saya akan tercetak di printer”);
fputs(stdprn, “Saya juga akan tercetak di printer”);
}
Share:

Jumat, 28 Juli 2017

Tipe Data, Variabel Konstanta, Operator, dan Ekspresi

1. Tipe Data
Tipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan dalam pemrograman komputer.
Setiap variabel atau konstanta yang ada dalam kode program, sebaiknya kita tentukan dengan pasti tipe datanya. Ketepatan pemilihan tipe data pada variabel atau konstanta akan sangat menentukan pemakaian sumberdaya komputer (terutama memori komputer). Salah satu tugas penting seorang programmer adalah memilih tipe data yang sesuai untuk menghasilkan program yang efisien dan berkinerja tinggi.
Ada banyak tipe data yang tersedia tergantung jenis bahasa pemrograman yang dipakai. Namun secara umum dapat dikelompokkan seperti pada Gambar dibawah ini


Ada 2 jenis tipe data :
1. Tipe data primitive adalah tipe data dasar yang tersedia secara langsung pada suatu bahasa pemrograman.
2. Tipe data composite adalah tipe data bentukan yang terdiri dari dua atau lebih tipe data primitive.

A. Tipe data numeric
Tipe data numeric digunakan pada variabel atau konstanta untuk menyimpan nilai dalam bentuk bilangan atau angka. Semua bahasa pemrograman menyediakan tipe data numeric, hanya berbeda dalam jenis numeric yang diakomodasi. 

Jenis yang termasuk dalam tipe data numeric antara lain : 
1. integer (bilangan bulat)
2. float (bilangan pecahan).
3. tipe data Single adalah tipe data untuk bilangan pecahan dengan presisi yang terbatas
4. Tipe data Double adalah tipe data untuk bilangan pecahan dengan presisi yang lebih akurat.

Penentuan tipe data numeric untuk suatu variabel/konstanta harus sangat berhati-hati. Manual dan petunjuk pada masing-masing bahasa pemrograman pada bagian tipe data harus diperhatikan dengan seksama.

Tipe Data Tambahan, yang dimiliki oleh Bahasa C/C++, adalah :
Unsigned digunakan bila data yang digunakan hanya data yang positif saja
Tipe Data Tambahan
Contoh program bahasa C
//Contoh program tipe data
//Nama Programmer : ..........
#include "stdio.h"
#include "conio.h"
int main()
{
int x;
float y;
char z;
double w;
x = 10;
y = 9.45;
z = 'C';
w = 3.45E+20;
printf("Nilai dari x adalah : %i\n", x);
printf("Nilai dari y adalah : %f\n", y);
printf("Nilai dari z adalah : %c\n", z);
printf("Nilai dari w adalah : %lf\n", w);
getch();
}

Dalam bahasa C terdapat lima tipe data dasar, yaitu :
1. char format penulisan : %c
2. int format penulisan : %i, %d
3. float format penulisan : %f
4. double format penulisan : %lf
5. void tidak bertipe

2. Variabel
Variabel adalah tempat dimana kita dapat mengisi atau mengosongkan nilainya dan memanggil kembali apabila dibutuhkan. Setiap variabel akan mempunyai nama (identifier) dan nilai. 

Contoh Nama variabel dan nilai.
username = “joni”
Nama = “Udin”
Harga = 2500
HargaTotal = 34000

Pada sebagian besar bahasa pemrograman, variabel harus dideklarasikan lebih dulu untuk mempermudah compiler bekerja. Apabila variabel tidak dideklarasikan maka setiap kali compiler bertemu dengan variabel baru Pemberian nama variabel harus mengikuti aturan yang ditetapkan oleh bahasa pemrograman yang kita gunakan. Namun secara umum ada aturan yang berlaku untuk hampir semua bahasa pemrograman. Aturan-aturan tersebut yaitu :
  • Nama variabel harus diawali dengan huruf.
  • Tidak boleh menggunakan spasi pada satu nama variabel. Spasi bisa diganti dengan karakter underscore (_).
  • Nama variabel tidak boleh mengandung karakter-karakter khusus,seperti : .,+, -, *, /, <, >,
    &, (, ) dan lain-lain.
  • Nama variabel tidak boleh menggunakan kata-kata kunci d bahasa pemrograman
Contoh penamaan variabel


Jenis-jenis Variabel 
1. Variabel Numerik
Variabel numerik ini dibagi menjadi menjadi 3 (tiga) macam :
  • Bilangan Bulat
  • Bilangan Desimal Berpresisi Tunggal atau Floating Point.
  • Bilangan Desimal Berpresisi Ganda atau Double Precision.
2. Variabel Text
  • Character ( Karakter Tunggal )
  • String ( Untuk Rangkaian Karakter )  
Deklarasi Variabel
Adalah proses memperkenalkan variabel kepada bahasa C/C++ dan pendeklarasian tersebut bersifat mutlak karena jika tidak diperkenalkan terlebih dulu maka bahasa C/C++ tidak menerima variabel tersebut. Deklarasi Variabel ini meliputi tipe variabel, seperti : integer atau character dan nama variabel itu sendiri. Setiap kali pendeklarasian variabel harus diakhiri oleh tanda titik koma ( ; ).
Bentuk penulisannya:
Tipe data nama variabel;
Contoh Deklarasi
       char nama_siswa;
       char grade;
       float rata_rata ;
       int nilai

Konstanta
Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah. Jadi konstanta adalah juga variabel bedanya adalah pada nilai yang disimpannya. Jika nilai datanya sepanjang program berjalan tidak berubahubah, maka sebuah varibel lebih baik diperlakukan sebagai konstanta. 

Sebagai contoh, jika kita membuat program perhitungan matematik yang menggunakan nilai pi (3.14159) yang mungkin akan muncul dibanyak tempat pada kode program, kita dapat membuat pi sebagai konstanta. Penggunaan konstanta pi akan lebih memudahkan penulisan kode program dibanding harus mengetikkan nilai 3.14159 berulang-ulang. 

Penggunaan tipe data numeric.
Kode Program A
#include “stdio.h”
int main() {
int x, z;
float y;
x = 12;
y = 2.15;
z = x * y;
cout << "X =" << x << endl;
cout << "Y =" << y << endl;
cout << "Z =" << z << endl;
return 0; }

Hasil eksekusi Program A
X =12
Y =2.15
Z = 25

Kode Program B
#include <iostream>
using namespace std;
int main() {
int x;
float y, z;
x = 12.8;
y = 2.15;
z = x * y;
cout << "X =" << x << endl;
cout << "Y =" << y << endl;
cout << "Z =" << z << endl;
return 0; }

Hasil eksekusi Program B
X =12
Y =2.15
Z =25.8

Kode Program C
#include <iostream>
using namespace std;
int main() {
int x;
float y, z;
x = 12;
y = 2.15;
z = x * y;
cout << "X =" << x << endl;
cout << "Y =" << y << endl;
cout << "Z =" << z << endl;
return 0; }

Hasil eksekusi Program C 
X =12
Y =2.15
Z =25.8

Selain itu, bahasa C juga menyediakan beberapa karakter khusus yang disebut karakter escape, antara lain :
- \a : untuk bunyi bell (alert)
- \b : mundur satu spasi (backspace)
- \f : ganti halaman (form feed)
- \n : ganti baris baru (new line)
- \r : ke kolom pertama, baris yang sama (carriage return)
- \v : tabulasi vertical
- \0 : nilai kosong (null)
- \’ : karakter petik tunggal
- \” : karakter petik ganda
- \\ : karakter garis miring

B. Character
Bersama dengan tipe data numeric, character merupakan tipe data yang paling banyak digunakan. Tipe data character kadang disebut sebagai char atau string. Tipe data string hanya dapat digunakan menyimpan teks atau apapun sepanjang berada dalam tanda petik dua (“…”) atau petik tunggal (‘…’). Perhatikan contoh berikut.
Contoh Deklarasi tipe data
 # include <iostream.h>
void main ()
{
     cout << " Hai, selamat menggunakan c++";

C. Boolean
Tipe data Boolean digunakan untuk menyimpan nilai True/False (Benar/Salah). Pada sebagian besar bahasa pemrograman nilai selain 0 menunjukkan True dan 0 melambangkan False. Tipe data ini banyak digunakan untuk pengambilan keputusan pada struktur percabangan dengan IF … THEN atau IF … THEN … ELSE. 

Contoh :
Program Pascal
If Nilai >= 60 Then
writeln(‘Lulus Ujian’);
Else
Writeln(‘Tidak lulus’);
End if
D. Array
Array atau sering disebut sebagai larik adalah tipe data yang sudah terstruktur dengan baik, meskipun masih sederhana. Array mampu menyimpan sejumlah data dengan tipe yang sama (homogen) dalam sebuah variabel. Setiap lokasi data array diberi nomor indeks yang berfungsi sebagai alamat dari data tersebut.

Contoh:
Penggunaan Array
Var
        X: array[1..100] of integer;
Cara mengisi data pada elemen larik dalam pemrograman adalah seperti
contoh berikut :
X[1]:= 4;
X[2]:= 3;
X[3]:= 2;
X[4]:= 1;

E. Record atau Struct
Seperti halnya Array, Record atau Struct adalah termasuk tipe data komposit. Record dikenal dalam bahasa Pascal/Delphi sedangkan Struct dikenal dalam bahasa C++. Berbeda dengan array, tipe data record mampu menampung banyak data dengan tipe data berbedabeda (heterogen).

Sebagai ilustrasi array mampu menampung banyak data namun dengan satu tipe data yang sama, misalnya integer saja. Sedangkan dalam record, kita bisa menggunakan untuk menampung banyak data dengan tipe data yang berbeda, satu bagian integer, satu bagian lagi character, dan bagian lainnya Boolean. Biasanya record digunakan untuk menampung data suatu obyek. Misalnya, siswa memiliki nama, alamat, usia, tempat lahir, dan tanggal lahir. Nama akan akan menggunakan tipe data string, alamat bertipe data string, usia bertipe data single (numeric), tempat lahir bertipe data string dan tanggal lahir bertipe data date.

F. Image
Image atau gambar atau citra merupakan tipe data grafik
G. Date Time
Nilai data untuk tanggal (Date) dan waktu (Time) secara internal disimpan dalam format yang spesifik. Variabel atau konstanta yang dideklarasikan dengan tipe data Date dapat digunakan untuk menyimpan baik tanggal maupun jam. Tipe data ini masuk dalam kelompok tipe data composite karena merupakan bentukan dari beberapa tipe data.

Berikut ini contoh tipe data dalam Visual Basic.
            Dim WaktuLahir As Date
            WaktuLahir = “01/01/1997”
            WaktuLahir = “13:03:05 AM”
            WaktuLahir = “02/23/1998 13:13:40 AM”
            WaktuLahir = #02/23/1998 13:13:40 AM#

H. Subrange
Tipe data subrange merupakan tipe data bilangan yang mempunyai jangkauan nilai tertentu sesuai dengan yang ditetapkan programmer. Biasanya tipe data ini mempunyai nilai batas minimum dan nilai batas maksimum. Tipe data ini didukung dengan sangat baik dalam Delphi.
Berikut ini contoh deklarasi tipe data subrange dalam Delphi.
Type
          BatasIndeks = 1..20
          RentangTahun = 1950..2030
Var
          Indeks : BatasIndeks
          Tahun : RentangTahun

I. Enumerasi
Tipe data ini merupakan tipe data yang mempunyai elemen-elemen yang harus disebut satu persatu dan bernilai konstanta integer sesuai dengan urutannya. Nilai konstanta integer elemen ini diwakili oleh suatu nama variable yang ditulis di dalam kurung. Tipe data ini juga dijumpai pada Delphi dan bahasa pemrograman deklaratif seperti SQL.

Berikut ini contoh deklarasi tipe data enumerasi dalam Delphi.
Type
          Hari_dlm_Minggu = (Nol, Senin, Selasa, Rabu,Kamis, Jumat, Sabtu,Minggu)
          Nama_Bulan = (Nol, Januari, Pebruari, Maret,April, Mei, Juni, Juli,Agustus,
          September, Oktober, Nopember, Desember)
Var
          No_Hari : Hari_dlm_Minggu
          No_Bulan : Nama_Bulan

J. Object
Tipe data object digunakan untuk menyimpan nilai yang berhubungan dengan obyek-obyek yang disediakan oleh Visual Basic, Delphi dan dan bahasa pemrograman lain yang berbasis GUI. Sebagai contoh, apabila kita mempunyai form yang memiliki control Command button yang kita beri nama Command1, kita dapat mendeklarasikan variabel sebagai berikut :

Contoh Penggunaan tipe data object.
          Dim A As CommandButton
          Set A = Command1
          A.Caption = “HEY!!!”
          A.FontBold = True

OPERATOR
Operator merupakan simbol atau karakter yang biasa dilibatkan dalam program untuk melakukan sesuatu operasi atau manipulasi, seperti penjumlahan, pengurangan dan lain lain.

Operator mempunyai sifat sebagai berikut :
1. Unary
Sifat Unary pada operator adalah hanya melibatkan sebuah operand pada suatu operasi aritmatik
Contoh : -5
2. Binary
Sifat Binary pada operator adalah melibatkan dua buah operand pada suatu operasi
aritmatik
Contoh : 4 + 8
3. Ternary
Sifat Tenary pada operator adalah melibatkan tiga buah operand pada suatu operasi
aritmatik
Contoh : (10 % 3) + 4 + 2

1. Operator Aritmatika
Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah : Tabel Operator Aritmatika
//Contoh penggunaan Operator Aritmatika
//Nama programmer :.......

#include "stdio.h"
#include "conio.h"
int main()
{
printf("Nilai dari 9 + 4 = %i\n", 9 + 4);
printf("Nilai dari 9 - 4 = %i\n", 9 - 4);
printf("Nilai dari 9 * 4 = %i\n", 9 * 4);
printf("Nilai dari 9 / 4 = %i\n", 9 / 4);
printf("Nilai dari 9 % 4 = %i\n", 9 % 4);
getch();
}

/* Penggunaan operator untuk
mencetak deret bilangan genap
antara 1 – 100 */

//Nama programmer :.......
#include "conio.h"
#include "stdio.h"
int main()
{
int bil;
for (bil=1; bil<100; bil++)
{
if(bil%2==0)
printf("%5.0i", bil);
}
getch();
}

Operator Penambah dan Pengurang
Masih berkaitan dengan operator pemberi nilai, Bahasa C menyediakan operator penambah dan pengurang. Dari contoh penulisan operator pemberi nilai sebagai penyederhanaannya dapat digunakan operator penambah dan pengurang.

Tabel Operator Penambah dan Pengurangan

A = A + 1 atau A = A - 1; disederhanakan menjadi :
A += 1 atau A -= 1; masih dapat disederhanakan menjadi A ++ atau A--
Notasi “ ++ “ atau “ -- “ dapat diletakan didepan atau di belakang variabel

Contoh : A ++ atau ++A / A-- atau –A
Kedua bentuk penulisan notasi ini mempunyai arti yang berbeda.
  • Jika diletakan didepan variabel, maka proses penambahan atau pengurangan akan dilakukan sesaat sebelum atau langsung pada saat menjumpai ekspresi ini, sehingga nilai variabel tadi akan langsung berubah begitu ekspresi ini ditemukan, sedangkan
  • Jika diletakan dibelakang variabel, maka proses penambahan atau pengurangan akan dilakukan setelah ekspresi ini dijumpai atau nilai variabel akan tetap pada saat ekspresi ini ditemukan.
/* Penggunaan Notasi Didepan Variabel*/
// nama programmer :.....
#include <stdio.h>
#include <conio.h>
int main()
{
int a = 10, b = 5;

printf("Nilai A = %d", a);
printf("\nNilai ++A = %d", ++a);
printf("\nNilai A = %d", a);
printf("\nNilai B = %d", b);
printf("\nNilai --B = %d", --b);
printf("\nNilai B = %d", b);
getch();
}

Output :
Nilai A = 10
Nilai ++A = 11
Nilai A = 11
Nilai B = 5
Nilai –B = 4
Nilai B = 4

/* Perbedaan operator peningkatan ++
yang diletakkan di depan dan dibelakang
operand */

//Nama programmer :......
#include <stdio.h>
#include <conio.h>
int main()
{
int x, nilai;
x = 5;

nilai = ++x; /* berarti x = x + 1; nilai = x; */
printf("nilai = %d, x = %d\n", nilai, x);
nilai = x++; /* berarti nilai = x; nilai = x + 1; */
printf("nilai = %d, x = %d\n", nilai, x);
getch();
}

Outputnya : nilai = 6, x = 6
nilai = 6, x = 7

/*Contoh ke-2 operator peningkatan
unary */
//Programmer :……

#include "stdio.h"
#include "conio.h"
int main()
{
int b, nilai;
b = 15;
nilai = --b; /* berarti b = b - 1; nilai = b; */
printf("nilai = %d, b = %d\n", nilai, b);
nilai = b--; /* berarti nilai = b; b = b + 1; */
printf("nilai = %d, b = %d\n", nilai, b);
getch();
}

Ouputnya : nilai = 14, b= 14
nilai = 14, b=13

Komentar Program
Komentar program hanya diperlukan untuk memudahkan pembacaan dan pemahaman suatu program (untuk keperluan dokumentasi program). Dengan kata lain, komentar program hanya merupakan keterangan atau penjelasan program. Untuk memberikan komentar atau penjelasan dalam bahasa C digunakan pembatas /* dan */ atau menggunakan tanda // untuk komentar yang hanya terdiri dari satu baris. Komentar program tidak akan ikut diproses dalam program (akan diabaikan).


Share:

Struktur Program C/C++

Struktur program C++, sama seperti struktur program C yang terdahulu. Struktur program C++ terdiri sejumlah blok fungsi, setiap fungsi terdiri dari satu atau beberapa pernyataan yang melaksanakan tugas tertentu.
Contoh-1
#include <stdio.h>
#include <conio.h>
int main()
{
printf("Bahasa C\n");
}

Output yang akan dihasilkan, dari program 1 diatas adalah :
Bahasa C


Model Memori

C/C++, mempunyai enam model memori untuk program dan data. Model-model memori tersebut adalah :
  • Model Tiny
  • Model Small
  • Model Medium
  • Model Compact
  • Model Large
  • Model Huge

    a. Model Tiny
    Model memori yang menyediakan jumlah memori untuk program dan data tidak lebih dari 64 Kb.
    b. Model SmallModel memori yang menyediakan jumlah memori untuk masing-masing program dan data tidak lebih dari 64 Kb.
    c. Model MediumModel memori yang menyediakan jumlah memori untuk program tidak lebih dari 64 Kb dan data tidak lebih dari 64 K.
    d. Model CompactModel memori yang menyediakan jumlah memori untuk program lebih dari 64 Kb dan data
    tidak lebih dari 64 K.
    e. Model LargeModel memori yang menyediakan jumlah memori untuk program dan data lebih dari 64 K.
    f. Model HugeModel memori yang menyediakan jumlah memori untuk menyimpan satu jenis data.

Share:

Pengenalan bahasa pemrograman Bahasa C

Sejarah
Bahasa C merupakan perkembangan dari bahasa BCPL yang dikembangkan oleh Martin Richards pada tahun 1967. Selanjutnya bahasa ini memberikan ide kepada Ken Thompson yang kemudian mengembangkan bahasa yang disebut bahasa B pada tahun 1970. Perkembangan selanjutnya dari bahasa B adalah bahasa C oleh Dennis Ricthie sekitar tahun 1970-an di Bell Telephone Laboratories Inc. (sekarang adalah AT&T Bell Laboratories). Bahasa C pertama kali digunakan di computer Digital Equipment Corporation PDP-11 yang menggunakan system operasi UNIX. Hingga saat ini penggunaan bahasa C telah merata di seluruh dunia. Hampir semua perguruan tinggi di dunia menjadikan bahasa C sebagai salah satu mata kuliah wajib. Selain itu, banyak bahasa pemrograman populer seperti PHP dan Java menggunakan sintaks dasar yang mirip bahasa C. Oleh karena itu, kita juga sangat perlu mempelajarinya.

Kelebihan dan Kekurangan Bahasa C

Kelebihan Bahasa C
  • Bahasa C tersedia hampir di semua jenis computer.
  • Kode bahasa C sifatnya adalah portable dan fleksibel untuk semua jenis computer.
  • Bahasa C hanya menyediakan sedikit kata-kata kunci, hanya terdapat 32 kata kunci.
  • Proses executable program bahasa C lebih cepat
  • Dukungan pustaka yang banyak.
  • C adalah bahasa yang terstruktur
  • Bahasa C termasuk bahasa tingkat menengah
Kekurangan Bahasa C
  • Banyaknya Operator serta fleksibilitas penulisan program kadang-kadang
    membingungkan pemakai.
  • Bagi pemula pada umumnya akan kesulitan menggunakan pointer 
Share:

Struktur Dasar Algoritma

Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut dapat berupa runtunan aksi (sequence), pemilihan aksi (selection), pengulangan aksi (iteration) atau kombinasi dari ketiganya. Jadi struktur dasar pembangunan algoritma ada tiga, yaitu:
1.Struktur Runtunan / Beruntun : Digunakan untuk program yang pernyataannya sequential atau urutan.
2.Struktur Pemilihan / Percabangan : Digunakan untuk program yang menggunakan pemilihan atau penyeleksian kondisi.
3.Struktur Perulangan : Digunakan untuk program yang pernyataannya akan dieksekusi berulang-ulang.

1. Struktur Algoritma Runtunan / Berurutan :
Ada tiga struktur dasar yang digunakan dalam membuat algoritma yaitu struktur berurutan (sequencing), struktur pemilihan/keputusan/percabangan (branching) dan struktur pengulangan (looping). Sebuah algoritma biasanya akan menggabungkan ketiga buah struktur ini untuk menyelesaikan masalah.

Struktur berurutan dapat kita samakan dengan mobil yang sedang berjalan pada jalur lurus yang tidak terdapat persimpangan seperti tampak pada Gambar disamping Mobil tersebut akan melewati kilometer demi kilometer jalan sampai tujuan tercapai. Struktur berurutan terdiri satu atau lebih instruksi.
Tiap instruksi dikerjakan secara berurutan sesuai dengan urutan penulisannya, yaitu sebuah instruksi dieksekusi setelah instruksi sebelumnya selesai dieksekusi. Urutan instruksi menentukan keadaan akhir dari algoritma. Bila urutannya diubah, maka hasil akhirnya mungkin juga berubah. 

Menurut Goldshlager dan Lister (1988) struktur berurutan mengikuti ketentuan-ketentuan sebagai berikut:
  • Tiap instruksi dikerjakan satu persatu
  • Tiap instruksi dilaksanakan tepat sekali, tidak ada yang diulang
  • Urutan instruksi yang dilaksanakan pemroses sama dengan urutan aksi sebagaimana
    yang tertulis di dalam algoritmanya
  • Akhir dari instruksi terakhir merupakan akhir algoritma.
Contoh bagan alir logika program berurutan (sequencing)

1. Struktur Algoritma Percabangan
Sebuah program tidak selamanya akan berjalan dengan mengikuti struktur berurutan, kadang-kadang kita perlu merubah urutan pelaksanaan program dan menghendaki agar pelaksanaan program meloncat ke baris tertentu. Peristiwa ini kadang disebut sebagai percabangan/pemilihan atau keputusan. Hal ini seperti halnya ketika mobil/motor berada dalam persimpangan

Pada struktur percabangan, program akan berpindah urutan pelaksanaan jika suatu kondisi yang disyaratkan dipenuhi. Pada proses seperti ini simbol flowchart Decision harus digunakan. Simbol decision akan berisi pernyataan yang akan diuji kebenarannya. Nilai hasil pengujian akan menentukan cabang mana yang akan ditempuh.


Contoh Struktur percabangan untuk masalah batasan umur.
Sebuah aturan untuk menonton sebuah film tertentu adalah sebagai berikut, jika usia penonton lebih dari 17 tahun maka penonton diperbolehkan dan apabila kurang dari 17 tahun maka penonton tidak diperbolehkan nonton. Buatlah flowchart untuk permasalahan tersebut.

Penyelesaian:
Permasalahan diatas merupakan ciri permasalahan yang menggunakan struktur percabangan. Hal ini ditandai dengan adanya pernyataan jika ..maka ...(atau If ... Then dalam Bahasa Inggris.

Bagan alir logika (Flowchart) penyelesaian masalah nonton film

2. Struktur Algoritma Perulangan / Pengulangan
Dalam banyak kasus seringkali kita dihadapkan pada sejumlah pekerjaan yang harus diulang berkali.Salah satu contoh yang gampang kita jumpai adalah balapan mobil.

Struktur pengulangan terdiri dari dua bagian :
  • Kondisi pengulangan, yaitu syarat yang harus dipenuhi untuk melaksanakan pengulangan. Syarat ini biasanya dinyatakan dalam ekspresi Boolean yang harus diuji apakah bernilai benar (true) atau salah (false) 
  • Badan pengulangan (loop body), yaitu satu atau lebih instruksi yang akan diulang
Pada struktur pengulangan, biasanya juga disertai bagian inisialisasi dan bagian terminasi. Inisialisasi adalah instruksi yang dilakukan sebelum pengulangan dilakukan pertama kali. Bagian insialisasi umumnya digunakan untuk memberi nilai awal sebuah variable. Sedangkan terminasi adalah instruksi yang dilakukan setelah pengulangan selesai dilaksanakan. Ada beberapa bentuk pengulangan yang dapat digunakan, masing-masing dengan syarat dan karakteristik tersendiri. Beberapa bentuk dapat dipakai untuk kasus yang sama, namun ada bentuk yang hanya cocok untuk kasus tertentu saja.
Pemilihan bentuk pengulangan untuk masalah tertentu dapat mempengaruhi kebenaran algoritma. Pemilihan bentuk pengulangan yang tepat bergantung pada masalah yang akan diprogram.

Bagan alir logika (flowchart) untuk mencetak pernyataan sebanyak 100 kali




Bagan alir logika (Flowchart) untuk mencetak anggota suatu himpunan.
  • Struktur pengulangan dengan For
    Pengulangan dengan menggunakan For, merupakan salah teknik pengulangan yang paling tua dalam bahasa pemrograman. Hampir semua bahasa pemrograman menyediakan metode ini, meskipun sintaksnya mungkin berbeda. Pada struktur For kita harus tahu terlebih dahulu seberapa banyak badan loop akan diulang. Struktur ini menggunakan sebuah variable yang biasa disebut sebagai loop s counter, yang nilainya akan naik atau turun selama proses pengulangan.
    Contoh :
    Diketahui sebuah himpunan A yang beranggotakan bilangan 1, 3, 5, .., 19. Buatlah flowchart untuk mencetak anggota himpunan tersebut.
    Penyelesaian:
    Pada contoh ini, kita mencoba menentukan hasil dari sebuah flowchart . Bagaimana menurut kalian jawabannya? Marilah kita uraikan jalannya fowchart tersebut. Pada flowchart, setelah Start, kita meletakkan satu proses yang berisi pernyataan A = 1. Bagian inilah yang disebut inisialisasi . Kita memberi nilai awal untuk A = 1. Variabel counter-nya adalah X dengan nilai awal 1 dan nilai akhir 10, tanpa increment (atau secara default increment-nya adalah 1). Ketika masuk ke badan loop untuk pertama kali maka akan dicetak langsung nilai variabel A. Nilai variabel A masih sama dengan 1. Kemudian proses berikutnya adalah pernyataan A = A + 2. Pernyataan ini mungkin agak aneh, tapi ini adalah sesuatu yang pemrograman. Arti dari pernyataan ini adalah gantilah nilai A yang lama dengan hasil penjumlah nilai A lama ditambah 2. Sehingga A akan bernilai 3. Kemudian dilakukan pengulangan yang ke-dua. Pada kondisi ini nilai A adalah 3, sehingga yang tercetak oleh perintah print adalah 3. Baru kemudian nilai A kita ganti dengan penjumlahan A + 2. Nilai A baru adalah 5. Demikian seterusnya. Sehingga output dari flowchart ini adalah 1,3, 5, 7, ..,19.


  • Struktur pengulangan dengan While Pada pengulangan dengan For, banyaknya pengulangan diketahui dengan pasti karena nilai awal (start) dan nilai akhir (end) sudah ditentukan diawal pengulangan. Bagaimana jika kita tidak tahu pasti harus berapa kali mengulang? Pengulangan dengan While merupakan jawaban dari permasalahan ini. Seperti halnya For, struktur pengulangan dengan While juga merupakan struktur yang didukung oleh hampir semua bahasa pemrograman namun dengan sintaks yang berbeda.
    Struktur While akan mengulang pernyataan pada badan loop sepanjang kodisi pada While bernilai benar. Dalam artian kita tidak perlu tahu pasti berapa kali diulang. Yang penting sepanjang kondisi pada While dipenuhi maka pernyataan pada badan loop akan diulang. Penyelesaian: Perhatikan Gambar. bisakah kalian menentukan hasil dari flowchart tersebut? Perhatikan tahapan eksekusi flowchart berikut ini.
    • Pada flowchart ini ada dua variabel yang kita gunakan yaitu A dan B. Kedua variabel
      tersebut kita inisialisasi nilai awalnya (A = 1 dan B = 0) sebelum proses loop terjadi.
      Variabel A adalah variabel counter.
    • Pada simbol decision, nilai A akan diperiksa apakah memenuhi kondisi (<b10). Jika Ya
      maka perintah berikutnya dieksekusi, jika tidak maka program akan berhenti. Pada
      awal eksekusi ini kondisi akan terpenuhi karena nilai A= 1.
    • Jalankan perintah Print B.
    • Nilai variabel A kemudian diganti dengan nilai A lama (1) ditambah 2. Sehingga nilai
      variabel A baru adalah 3. Sedangkan nilai variabel B = 9 (hasil perkalian A = 3).
    • Program akan berputar kembali untuk memeriksa apakah nilai variabel A masih lebih
      kecil dari 10. Pada kondisi ini nilai A = 3, sehingga kondisi masih terpenuhi. Kemudian
      langkah berulang ke langkah ke 3. Begitu seterusnya sampai nilai variabel A tidak lagi
      memenuhi syarat kurang dari 10.
Share:

Cari Blog Ini

Blog Archive