algoritma dan pemrograman

48
ALGORITMA DAN PEMROGRAMAN Pertemuan 1. Logika adalah suatu ilmu atau kaidah yang menyatakan benar atau salah. Algoritma adalah Langkah – langkah yang logis dan terperinci dalam melaksanakan suatu tugas. Langkah –langkah pembuatan Algoritma : 1. Harus memahami masalah. Contoh : Menetapkan gaji Pegawai. - Gaji pokok - Gaji Transportasi - Tunjangan Istri dan Anak - Tunjangan Jabatan. 2. Menentukan data-data yang akan dipergunakan dalam pembuatan Algoritma. Contoh : Data Mahasiswa, seperti : - Nama - NIM - Tempat Tanggal Lahir - Alamat. 3. Data Input, Data Proses, Data Output. 4. Menetapkan nilai data dari masing-masing variabel. Menurut Awam data standarnya ada dua yaitu : Angka, dan Huruf.

Upload: ikhelk-sychoembank

Post on 27-Dec-2015

21 views

Category:

Documents


2 download

DESCRIPTION

electrical

TRANSCRIPT

Page 1: Algoritma Dan Pemrograman

ALGORITMA DAN PEMROGRAMAN

Pertemuan 1.

   Logika adalah suatu ilmu atau kaidah yang menyatakan benar atau salah.

   Algoritma adalah Langkah – langkah yang logis dan terperinci dalam melaksanakan suatu tugas.

Langkah –langkah pembuatan Algoritma :

1.      Harus memahami masalah.

Contoh :  Menetapkan gaji Pegawai.

-          Gaji pokok

-          Gaji Transportasi

-          Tunjangan Istri dan Anak

-          Tunjangan Jabatan.

2.      Menentukan data-data yang akan dipergunakan dalam pembuatan Algoritma.

Contoh : Data Mahasiswa, seperti :

-          Nama

-          NIM

-          Tempat Tanggal Lahir

-          Alamat.

3.      Data Input, Data Proses, Data Output.

4.      Menetapkan nilai data dari masing-masing variabel. Menurut Awam data standarnya ada dua

yaitu : Angka, dan Huruf.

Apabila terjadi proses penambahan perhitungan maka disebut nilainya angka, sedangkan apabila

terjadi proses penggabungan dua buah kata diapit tanda petik maka nilainya teks.

5.      Membuat Algoritma

Contoh : B = A + C

-       Langkah pertama mulai

-       Deklarasikan Variabel (A,B,C :Angka)

-       Langkah ketiga tampilkan form/layar input data.

-       Langkah keempat B =A+C, hitung.

-       Langkah kelima tampilkan B.

-       Langkah keenam selesai.

Page 2: Algoritma Dan Pemrograman

  Data

Data adalah fakta atau bagian dari fakta yang mengandung arti yang dihubungkan dengan

kenyataan, simbol-simbol, angka-angka, huruf-huruf yang menunjukkan suatu ide, objek, kondisi

atau situasi.

  Pemrograman, Kumpulan yang saling berhubungan satu sama lainnya untuk mendapatkan output.

-            Mulai

-            Deklarasikan Variabel P, Q, R, S, Y : Angka

-            Tampilkan Form.

-            Hitung P = Q+R+S+Y

-            Tampilkan P.

-            Selesai / End

Algoritma sebagai Langkah-langkah pemecahan Masalah, dapat dituliskan dalam beberapa cara,

yaitu :

1.      Uraian Deskriptif

Penulisan Algoritma dengan uraian Deskriptif adalah dua cara menggambarkan langkah-langkah

pemecahan masalah dengan menggunakan bahasa biasa.

2.      Bagan Alir (Flow Chart)

Bagan Alir adalah penulisan Algoritma dengan menggunakan notasi grafik, terdapata beberapa

notasi dan penggambaran Flow Chart antara lain :

Page 3: Algoritma Dan Pemrograman

3.      Pseudo Code

Pseudo Code adalah kode atau tanda yang menyerupai (Pseudo) atau merupakan penjelasan

secara menyelesaikan permasalahan. Pseodu Code ini sering digunakan oleh manusia untuk

menuliskan Algoritma

Contoh : Mencari bilangan terbesar dari dua bilangan yang di inputkan.

Contoh Algoritma :

-          Masukkan bilangan pertama

-          Masukkan bilangan kedua

-          Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4, jika tidak kerjakan langkah 5

-          Tampilkan bilangan pertama

-          Tampilkan bilangan kedua

Contoh Pseudo –Code :

-          Input a

-          Input b

-          If a > b, maka kerjakan langkah 4

-          Print a

-          Print b

Page 4: Algoritma Dan Pemrograman

PEMROGRAMAN atau PROGRAM

Defenisi pemrograman / programan adalah kumpulan induksi-induksi tersendiri yang biasanya

disebut source code yang dibuat oleh programer (pembuat program). Suatu program pada

dasarnya terdiri dari 3 bagian, yaitu : input, proses, dan output.

Perbedaan Algoritma dan Program :

Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis

dalam program adalah algoritma. Program ditulis dengan bahasa pemrograman, jadi bisa disebut

program adalah suatu implementasi dari bahasa pemrograman.

Bahasa pemrograman terbagi menjadi 2, yaitu :

1.      BTR (Bahasa Tingkat Rendah) atau disebut dengan asembly merupakan bahasa dengan

pemetaan satu per satu terhadap intruksi komputer. Contohnya Mesin 01010

2.      BTT (Bahasa Tingkat Tinggi) adalah bahasa yang dimengerti oleh manusia. Contohnya Pascal,

Php, Basic, Html, Java, dll.

PROGRAM = ALGORITMA + BAHASA (Struktur Data)

Create Database Academik

Use Academik

Create Table mahasiswa

NIM Char (5)

Nama Char (20)

Alamat Char (25)

Sistem adalah suatu elemen-elemen yang saling berhubungan.

Informasi adalah Kumpulan data-data yang sudah dinilai dan bisa dibuktikan.

Page 5: Algoritma Dan Pemrograman

Bagaimanapun juga untuk data Algoritma sangat erat hubungannya pada sebuah program.

Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi

lebih baik, begitu juga sebaliknya.

Paradigma Pemrograman :

  Komputer

  Sistem Operasi

Bahasa Pemrograman

Program Aplikasi

  Pemakai

1.             Pemrograman Prosedur

           Berdasarkan urutan-urutan sekuensial

           Program adalah suatu rangkaian prosedur untuk memanipulasi data. Prosedur merupakan

kumpulan intrusi yang dikerjakan secara berurutan

           Harus mengingat prosedur mana yang sudah dipanggil

2.             Pemrograman Fungsional

           Berdasarkan teori fungsi matematika

           Fungsi merupakan dasar utama program

3.             Pemrograman Terstruktur

           Secara berurutan dan terstruktur

           Program dapat di bagi-bagi menjadi prosedur dan fungsi

           Contoh pascal dan bahasa C

4.             Pemrograman Modular

           Pemrograman ini membentuk banyak modul

           Modul merupakan kumpulan dari prosedur dan fungsi yang berdiri sendiri.

           Sebuah programan dapat merupakan kumpulan modul-modul

5.             Pemrograman Berorientasi Objek

         Pemrograman berdasarkan prinsip objek, dimana objek memiliki data/variabel/property dan

methed/ prosedur yang dapat dimanipulasi. Contohnya C, C++, Pascal dan Java.

Page 6: Algoritma Dan Pemrograman

6.             Pemrograman Berorientasi Fungsi

         Pemrograman ini berfokus pada fungsi tertentu saja, sangat tergantung pada tujuan pembuatan

bahasa pemrograman ini. Contohnya SQL (Structured Query Language), Html, dll.

7.             Pemrograman Deklaratif

           Pemrograman ini mendeskripsikan suatu masalah dengan pernyataan dari pada memecahkan

masalah dengan implementasi algoritma. Contohnya : Prolog.

BAHASA C

Bahasa C atau C++  adalah suatu bahasa pemrograman. Bahasa C termasuk bahasa pemrograman

tingkat menengah, maksudnya bahasa C bisa dipelajari dengan lebih mudah karena mudah

dimengerti tetapi mempunyai kemampuan yang lebih tinggi.

Bahasa C bisa digunakan untuk merekayasa programan untuk segala kebutuhan, baik untuk

aplikasi bisnis, matematis, bahkan game.

Semua bahasa mempunyai kelebihan dan kekurangan sendiri-sendiri. Begitu juga dengan Bahasa

C, adapun sebagian kelebihan dari Bahasa C adalah :

1.      Banyak memiliki operator untuk mengolah / memanipulasi data.

2.      Bahasa C termasuk sebagai bahasa yang terinstruktur sehingga program dapat lebih mudah

dipahami dan dikembangkan.

3.      Bahasa C lebih mudah dimengerti karena lebih mirip pada bahasa manusia.

4.      Kecepatan eksekusi tinggi.

5.      Mengenal data pointer.

Kelemahan dari bahasa C adalah :

1.        Banyaknya operator atau cara penulisan  program kadang menimbulkan kebingungan para

pemakainya.

2.        Perlunya ketelitian dalam penulisan program karena perintah (statement) dalam bahasa C

bersifat case sensitif (hurup kapital dan huruf kecil dibedakan).

Contoh :

#include  <stdio.h>

#include  <conio.h>

Main ()

Page 7: Algoritma Dan Pemrograman

{

Printf (“ini program saya yang pertama \n”);

Printf (“\n saya belajar bahasa C \n di\”STMIK Potensi Utama\”\n Medan “);

Getch ();

Return 0;

}

Keteranag :

-            Include

Print tersebut digunakan untuk memanggil file header (include file) dan didalamnya terdapat

perintah prototipe yang bisa digunakan dalam program yang dibuat, jika perintah include tidak

ditulis, maka komputer tidak mengerti perintah-perintah yang ditulis

-            Header File

Nama file yang digunakan dalam include seperti <stdio.h>, <conio.h> disebut header file karena

ditempatkan di paling atas program. Extention h berarti header dalam file header ini, terdapat

fungsi atau prototipe yang bisa digunakan dalam program. Sebuah file header memiliki lebih dari

1 fungsi atau variabel global.

-            Fungsi Main()

Fungsi ini adalah suatu fungsi khusus yang akan dieksekusi pertama. Setiap program harus

mempunyai fungsi main(). Fungsi main() ditandai dengan tanda { yang menyatakan awal dari

program dan  diakhiri denngan tanda } yang menyatakan akhir dari suatu program.

-            Printf()

Adalah suatu fungsi yang berguna untuk menulis  pesan ke layar. Pesan yang akan ditulis dalam

diapit oleh tanda kutip. Pesan-pesan yang ditulis dapat diatur dengan mengatur format dari

penulisannya, fungsi printf() tidak hanya menulis pesan dalam 1 baris saja, tetapi bisa  lebih,

untuk berpindah baris maka gunakan perintah \n yang berarti New Line (baris baru). Penulisan \n

boleh ditempatkan didepan, ditengah, atau diakhir. Untuk menuliskan tanda kutip (“) maka harus

digunakan tanda \”.

-            Tanda ; (Semi kolom)

Page 8: Algoritma Dan Pemrograman

Setiap perintah harus diakhiri dengan tanda ;, hilangnya taanda ; akan menyebabkan kesalahan

compile.

-            Getch()

Getch() adalah suatu fungsi  yang berfungsi  intuk pembacaan data sebuah karakter, sehingga

program akan terdiam sampai pengguna menekan suatu tombol. Fungsi ini berada dalam file

header conio.h sehingga perintah untuk conio.h harus dituliskan, kalau perintah getch() tidak

ditulis maka program akan di kerjakan denga cepat dan eksekusi tidak dapat terlihat.

-            Return

Adalah perintah yang memberikan nilaai kepada fungsinya. Setiap fungsi harus mempunyai nilai

kembaliannya (Return Value).

Page 9: Algoritma Dan Pemrograman

Type Data, Variabel, dan Operasi Perhitungan

   Tipe Data

Komputer bisa diartikan sebagai alat menghitung. Untuk melakukan proses perhitungan tersebut,

maka di butuhkan data yang diproses. Type data ada beberapa jenis, yaitu :

1.        Tipe Data Karakter

Untuk tipe data karakter kita gunakan perintah char. Contoh :

-          Char karakter;

-          Char kar1, kar2, kar3;

-          Char kar4 = ‘A’;

-          Char kar5 = 65;

Tipe data ini mempunyai jangkauan dari 0-255 atau karakter ASCII ke 0 sampai karakter ASCII

255. Tipe data karakter bisa ditampilkan sebagai suatu karakter atau sebagai bilangan. Hal ini

tergantung dari bagaimana penulisannya apakah dianggap sebagai karakter atau sebagai

bilangan. Untuk menuliskan isi dari data bertipe char adalah dengan menggunakan printf dengan

format penulisannya menggunakan tanda %c, kalau ingin ditampilakan sebagai suatu karakter

atau tanda %i jika ingin ditampilkan sebagai suatu bilangan.

#include <stdio.h>

#include <conio.h>

Main()

{

Char K1, K2;

K1 = ‘A’;

K2 = K1;

Printf (“Nilai Variabel K1 adalah %c\n”, K1);

Pritnf (“Nilai Variabel K2 dalam bentuk angka = %d \n”, K2);

Getch ();

Return 0;

2.        Tipe Data Bilangan Bulat

Ada beberapa tipe data standar yang digunakan untuk data-data bilangan bulatt

Page 10: Algoritma Dan Pemrograman

Tipe Data Memori Format Jangkauan Nilai

Int 2 byte %d / %i -32.768 s/d 32.767

Unsigred int 2 byte %u 0 s/d 65.535

Char 1 byte %d / %i -128 s/d 127

Unsigred char 1 byte %u 0 s/d 255

Unsigred long 4 byte %lu 0 s/d 4.294.967.293

Long 4byte %ld / %li -2.147.483.648 s/d

2.147.483.647

Tipe data yang ada dalam tabel tersebut khusus untuk data yang nilai bilangannya bulat. Cara

pendeklarasian lainnya, yaitu :

Int a;

Unsigred int b;

Char c;

Long d;

3.        Tipe Data Bilangan Pecahan

Tipe data untuk bilangan pecahan terdiri dari beberapa jenis

Tipe Data Memori Format Jangkauan Nilai

Float 4 byte %f 3.4*(10^-38)-3.4*(10^+38)

Dauble 8 byte %f 1.7*(10^-308)-1.7*(10^+308)

Long double 10 byte %lf 3.4*(10^-4932)-3.4*(10^+4932)s

Dalam pemrograman C, untuk vertikal yang menampung data string tidak ada perintah khusus,

karena dalam C, string adalah sebuah array karakter atau sebuah pointer ke subuah variabel char.

Cara Pendeklarasian adalah :

-          Char nama [50];

-          Char *alamat;

Contoh Program 1 :

#include <stdio.h>

#include <conio.h>

Page 11: Algoritma Dan Pemrograman

Main()

{

Char nama [50];

Chara *alamat;

Printf (“nama :”); scanf(“%s”, nama);

Printf (“alamat :”); gets(alamat);

Printf (“data yang telah dimasukkan adalah :\n”);

Printf (“nama :%s\n alamat : %s\n”, nama, alamat);

Getch();

Return 0;

}

  Operator – Operator Perhitungan

Untuk melakukan perhitungan – perhitungan data, maka diperlukan operator-operator

perhitungan. Operator-operator yang paling umum dipakai dalam pemrograman Bahasa C adalah

:

Operator Contoh

+ C = a + b

- C = a – b

* C = a * b

/ C = a / b

++ a++

-- a--

Page 12: Algoritma Dan Pemrograman

% C = a%b

Contoh program 2 :

# include <stdio.h>

# include <conio.h>

Main()

{

Int X=20, Y=8, Z;

Clrscr();

Printf (“X=%d dan Y=%d\n”,X, Y);

Printf (“X/Y = %d\n”, X/Y);

Printf (“X%%Y = %d\n”, X%Y);

X + = 2;

Printf (“Nilai X Sekarang :%i\n”,X);

Printf (“Nilai X Setelah X++ :%i\n”, X);

Printf (“Nilai Y :%d\n”, Y++);

Printf (“Nilai Y Setelahnya :%d\n”, Y);

Z = ++X

Printf (“Nilai Z : %d\n”, Z);

Getch;

Return 0;

}

  Input dan Output Data

Pemasukan (Input) Data

     Umumnya suatu pemrograman mempunyai proses pemasukan data. Dalam program Bahasa

C, pemasukan data dapat dilakukan dengan perintah scanf. Fungsi scanf merupakan fungsi yang

dapat digunakan untuk memasukkan berbagai jenis data, tergantung dengan format penentunya.

Format-format penentu tipe data  yang umum dipakai adalah :

Format Kegunaan

%c Digunakan untuk pemasukan data bertipe char

Page 13: Algoritma Dan Pemrograman

%d atau %i Digunakan untuk pemasukan data bertipe int, dan char

%u Digunakan untuk pemasukan data berupa unsigred int atau

unsigred char

%f Digunakan untuk pemasukan data berupa bilangan pecahan

(float)

%s Digunakan untuk pemasukan data berupa string

Bentuk umum penggunaan scanf adalah “

Scanf (“format”, &nama variabel);

Fungsi scanf () kurang begitu bagus jika dipakai untuk pembuatan string, karena data yang

tersimpan adalah hanya sampai menemukan spasi, maksudnya jika kita mengisikan 2 buah kata

dengan pemisah spasi maka data yang masuk ke variabel tersebut hanyalah yang pertama.

Oleh karena itu pembuatan bertipe string biasanya menggunakan perintah gets() yang bentu

umumnya adalah Gets (nama variabel);

Contoh :

Gets (nama);

Gets (alamat);

Page 14: Algoritma Dan Pemrograman

Contoh program menggunakan Fungsi Scanf :

#include <stdio.h>

Main()

{

Int luas, keliling, panjang sisi ;

Printf (“Masukkan Panjang Sisi Bujursangkar :”);

Scanf (“%d”, &panjang sisi);

Luas = panjang sisi * panjang sisi ;

Keliling = panjang sisi * 4;

Printf (“\n Data Bujursangkar \n”);

Printf (“panjang sisi = %6d \n”, panjang_sisi);

Printf (“luas = %6d \n”, luas);

Printf (“keliling = %6d \n”, keliling);

}

Untuk pembacaan data bertipe char, selain menggunakan scanf dengan format %c bisa juga

menggunakan fungsi getch atau getch c. Perbedaan dari getch dan getch c adalah Kalau getch

digunakan untuk membaca data bertipe char tanpa menampilkan ke layar, dan getch c digunakan

untuk membaca data bertipe char dengan menampilkan ke layar.

Contoh :

#include <stdio.h>

#include <conio.h>

Main()

Page 15: Algoritma Dan Pemrograman

{

Char a, b;

Printf (“Masukkan huruf pertama :”);

a = getch();

printf (“Masukkan huruf kedua :”);

b = getch c();

printf (“Data yang dimasukkan adalah %c dan %c \n”a, b);

getch();

return 0;

}

Page 16: Algoritma Dan Pemrograman

STRING dan MANIPULASINYA

            String adalah sebuah array yang bertipe char yang diakhiri dengan karakter null (\o).

Sebagai contoh, deklarasi dibawah ini merupakan deklarasi sebuah array yang bertipe char, dan

bisa disamakan dengan deklarasi sebuah string. Contoh : char array_ch[7] = (‘H’, ‘E’, ‘L’, ‘L’,

‘O’, ‘ ‘, ‘!’, ‘\ o’) ;

Array adalah suatu variabel yang dapat menampung tipe data yang sama dan dibedakan

berdasarkan indeks.

Contoh :

Int N [7]

NO N1 N2 N3 N4 N5 N6

Dalam C, karakter null dapat digunakan untuk menandai akhir sebuah string.

Fungsi – fungsi Manipulasi String :

1.      Gets dan puts

Fungsi gets digunakan untuk membaca data berupa string dari keyboard, sedangkan fungsi puts

untuk menampilakan tring ke layar (monitor)

Contoh :

#include <stdio.h>

Int main (void)

{

Char string [80];

Printf (“masukkan sebuah stringn:”); gets (string) ;

Puts (string);

Return 0 ;

}

2.      String Len

Fungsi strln digunakan untuk mengetahui panjang suatu string.

Contoh “

#include <stdio.h>

#include <string.h>

Page 17: Algoritma Dan Pemrograman

Int main (void)

{

Char string [80];

Int panjang ;

Printf (“masukkan string :”) gets (string) ;

Panjang = strln (string);

Printf (“panjang string adalah %i karakter \n”, panjang);

Return 0;

}

3.      Strlwr dan Strupr

Fungsi strlwr berguna untuk mengubah isi string menjadi huruf kecil, sedangkan fungsi Strupr

berguna untuk mengubah isi string menjadi huruf besar (Kapital).

Contoh :

#include <stdio.h>

#include <conio.h>

#include <string.h>

Main ()

{

Char str1 [80] = “Saya Belajar  Turbo C” ;

Printf (“Nama :%s\n”, str1);

Printf (“upper case : %s\n”, str1);

Strlwr (str1);

Printf (“lowercase : %s\n”, str1);

}

Page 18: Algoritma Dan Pemrograman

PERCABANNGAN

Statement If – Else

Bentuk dasar perintah If – Else adalah sebagai berikut :

If (expression)

     Statement 1 ;

Else

     Statement 2 ;

Statement berikutnya ;

  Jika  ketika dieksekusi ekspresi menghasilkan nilai true, maka statement1 akan dieksekusi dan

statement2 tidak akan dikerjakan dan kemudian program akan mengeksekusi statement

berikutnya, dan jika ekspresi tersebut bernilai false maka statement1 tidak akan dieksekusi dan

statement2 akan dieksekusi, dan dilanjutkan dengan mengeksekusi statement berikutnya.

  Operator - operator yang biasa digunakan dalam operasi Logika dapat dilihat di tabel bawah ini :

Operator Contoh Arti

= = A= =B Apakah isi variabel A sama dengan isi variabel B

! = A! = B Apakah isi variabel A tidak sama dengan isi variabel B

>  A > B Apakah  isi variabel A lebih besar dari isi variabel B

<  A < B Apakah isi variabel A lebih kecil dari isivariabel B

> = A > = B Apakah isi variabel A lebih besar atau sama dengan isi

variabel B

< = A < = B Apakah isi variabel A lebih kecil atau sama dengan isi

variabel B

& & (A<=100) &

& (A>=80)

Apakah A lebih kecil atau sama dengan dari 100 dan A

lebih besar atau sama dengan 80

II (A>100) II

(A<0)

Apakah A lebih besar dari 100 atau A lebih kecil dari 0

! ! (A = = B) Apakah A tidak sama dengan B

  Untuk lebih jelas, perhatikan perintah berikut :

Page 19: Algoritma Dan Pemrograman

#include <stdio.h>

#include (conio.h>

Main ()

{

Int nilai

Printf (“nilai :”); scanf (“%i”, &nilai);

If (nilai > 50)

Printf ("Selamat Anda Lulus”);

Else

Printf (“Maaf Anda tidak lulus”);

Getch();

Return 0;

}

Perintah Switch – Case – Default

  Selain if-else, perintah yang digunakan untuk percabangan adalah switch-case. Bentuk dasar dari

perintah tersebut adalah :

Switch (ekspresi)

{

Case kondisi1 : perintah1 ;break;

Case kondisi2 : perintah2 ;break;

Default :perintah3 ;

}

  Cara kerja perintah diatas adalah : “ Jika ekspresi sama dengan kondisi1, maka perintah1 akan

dieksekusi dan kemudian keluar dari switch, dan jika ekpresi sama dengan kondisi2 maka

perintah2 yang akan dieksekusi dan kemudian keluar dari switch, dan jika tidak 1 kondisi pun

yang sama dengan ekspresi maka perintah3 (perintah default) yang akan diekekusi. Perintah

default kalau tidak diperlukan bisa dihilangkan.

  Untuk lebih jelas, perhatikan perintah dibawah ini :

Page 20: Algoritma Dan Pemrograman

#include <stdio.h>

#include <conio.h>

Main()

{

Char operator, double operand1, operand2 ;

Puts (“Program Kalkulator Sederhana ....... \n”);

Puts (“Operator yang dapat digunakan adalah :”);

Puts (“*=> perkalian \n”);

Puts (“/=> pembagian \n”);

Puts (“+=> penjumlahan \n”);

Puts (“-=> pengurangan \n”);

Puts (“Contoh menghitung => 5/2 lalu tekan enter”);

Printf (“\n Silahkan menghitung angka :”); scanf (“%lf%c%lf, &operand1, &operatore,

&operand2);

Switch (operatore)

{

Case ‘*’ : printf (“hasil = %.10lg”, operand1 * operand2); break ;

Case ‘/’ : printf (“hasil = %.10lg”, operand1 / operand2); break ;

Case ‘+’ : printf (“hasil = %.10lg”, operand1 + operand2); break ;

Case ‘-‘ : printf (“hasil = %.10lg”, operand1 –operand2); break ;

Default ;

     Puts (“\n Perintah Anda Salah Silahkan  Ulangi”);

}

Getch() ;

Return 0 ;

}

Page 21: Algoritma Dan Pemrograman

PERULANGAN (LOOPING)

Untuk memahami mengenai fungsi perulangan, coba lihatlah kasus berikut :

Buatlah suatu program untuk menampilkan angka dari 1 sampai dengan 5.

Jenis – jenis perulangan yang dapat dilakukan oleh bahasa C adalah :

1.      Perulangan dengan perintah FOR

Struktur perulangan for biasa digunakan untuk mengulang suatu proses yang telah diketahui

jumlah perulangannya. Dari segi penulisannya, struktur perulangan for tampaknya lebih efisien

karena susunannya lebih simpel dan sederhana.

Bentuk umum perulangan for:

for(inisialisasi; syarat; penambahan)

pernyataan;

Keterangan :

Inisialisasi : pernyataan untuk menyatakan keadaan awal dari variabel kontrol.

syarat : ekspresi relasi yang menyatakan kondisi untuk keluar dari perulangan.

penambahan : pengatur perubahan nilai variabel kontrol.

Contoh :

#include <iostream.h>

main()

{

            int x;

            for(x = 1; x<= 10; x++)

            {

                        cout<<"BAHASA C++ "<<endl;

            }

return 0;

}

2.      Perulangan dengan perintah WHILE

Pada pernyataan while, pengecekan  terhadap loop dilakukan dibagian awal (sebelum tubuh

loop).

Page 22: Algoritma Dan Pemrograman

Bentuk umum:

 while (kondisi)

         pernyataan;

Perulangan ini banyak digunakan bila jumlah perulangannya belum diketahui. Proses

perulangan  akan terus berlanjut selama kondisinya bernilai benar  (true) dan akan berhenti bila

kondisinya bernilai salah.

Contoh 1 :

#include <iostream.h>

main()

{

            int x;

            x = 1; /* awal variabel */

            while (x <= 10) /* Batas akhir perulangan */

            {

                        cout<<"Bahasa C++ "<<endl;

                        x ++; /* variabel x ditambah dengan 1 */

            }

return 0;

}

Keterangan :

Pada contoh 1 perulangan while, proses atau perintah mencetak kata-kata “BAHASA C++” akan

terus dilakukan selama variabel x masih kurang atau sama dengan 10. Setiap kali melakukan

perulangan, nilai dari variabel x akan bertambah 1.

Contoh 2 :

#include <iostream.h>

main()

{

            int i = 0;

            while (i != 99)

Page 23: Algoritma Dan Pemrograman

            {

                        cout<<" Masukkan Sebuah Bilangan : ";

                        cin>>i;

                        cout<<"Bilangan Anda adalah= "<<i<<endl;

            }

}

Penjelasan :

  Program minta inputan dari user dengan tipe integer

  Selama user belum memasukkan nilai 99 maka program akan terus melooping.

  Looping akan berhenti jika user telah memasukkan angka 99.

3.      Perulangan dengan perintah DO WHILE

           Pada pernyataan do, mula-mula pernyataan dijalankan.

           Selanjutnya, kondisi diuji. Seandainya kondisi bernilai benar, maka pernyataan dijalankan lagi,

kemudian kondisi diperiksa kembali, dan seterusnya.

           Kalau kondisi bernilai salah, maka Pada pernyataan do-while, tubuh loop berupa pernyataan.

           pernyataan tidak dijalankan lagi.

           Pada dasarnya struktur perulangan do....while sama saja dengan struktur while, hanya saja pada

proses perulangan dengan while, seleksi berada di while yang letaknya di atas sementara pada

perulangan do....while, seleksi while berada di bawah batas perulangan. Jadi dengan

menggunakan struktur do…while sekurang-kurangnya akan terjadi satu kali perulangan.

Bentuk Umum :

Do

     Pernyataan ;

While(kondisi)

Contoh :

#include <iostream.h>

main()

{

     int x;

     x = 1;

Page 24: Algoritma Dan Pemrograman

     do

                 {

                             cout<<"BAHASA C++ "<<endl;

                             x ++;

                  }

     while(x <= 10);

     return 0; }

4.      FOR BERSARANG (NESTED FOR)

For bersarang dapat melibatkan lebih dari satu variabel namun yang jelas satu diantaranya akan

digunakan sebagai indeks perulangan.

Bentuk umum:

            for( variabel1=nilai_awal; kondisi1; variabel1++){

                        for( variabel2=nilai_awal; kondisi2; variabel2++){

                                    for( variabel3=nilai_awal; kondisi3; variabel3++){

                                                Statemen_statemen yang akan diulang;

                                                ….

                        }

                        }

            }

Contoh :

#include<iostream.h>

#include<iomanip.h>

int main()

{

            int x,y;

            for (x=1; x<=10; x++)

            {

                         for (y=1; y<=x; y++)

                         {

                            cout<<setw(4)<<x*y<<" ";

                         }

Page 25: Algoritma Dan Pemrograman

            cout<<"\n";

            }

return 0;

}

Pengertian If-Kasus

            Adakalanya sebuah aksi dikerjakan jika kondisi tertentu dipenuhi. Misalkan Anda tiba

diperempatan yang ada  traffic light. Jika lampu traffic light sekarang berwarna merah maka

kendaraan harus berhenti. Langkah ini kita tulis dalam pernyataan berikut :

“ Jika lampu traffic light berwarna merah, maka berhenti “

Pernyaan diatas dapat ditulis dalam pernyataan – pernyataan_pemilihan (selection_statement)

atau disebut juga pernyataan_kondisional sebagai berikut :

                                    If kondisi then

                                          Aksi

Contoh : If mobil rusak then pakai saja sepeda motor.

Contoh 1 kasus :

#include <stdio.h>

#include <conio.h>

Main ()

{

Int nilai ;

Printf (“nilai :”); scanf (“%i, &nilai);

If (nilai >50)

Printf (“selamat anda lulus.”);

Getch ();

Return 0;

Page 26: Algoritma Dan Pemrograman

}

If Else Dua Kasus

            Struktur pemilihan if then hanya memberikan satu pilihan aksi bila kondisi (persyaratan)

dipenuhi bernilai benar, maka tidak memberi pilihan aksi lain bila kondisi bernilai salah.

            Bentuk pemilihan yang lebih umum ialah memilih satu dari dua buah aksi bergantung

pada nilai kondisi :

                                                If kondisi then

                                                            Aksi 1

                                                Else

                                                            Aksi 2

Else artinya “kalau tidak”. Bila kondisi bernilai benar, aksi 1 akan dikerjakan, tetapi kalau tidak,

aksi 2 yang akan dikerjakan. Misalkan pada pernyaan berikut :

            If lampu traffic light berwarna merah then berhenti

Else

            If lampu traffic light berwarna kuning then jalan hati – hati

Else

            Jalan terus

Contoh 2 kasus :

#include <stdio.h>

#include <conio.h>

Main ()

{

Int a, b ;

Printf (“a = “); scanf(“%d”, &a);

Printf (“b = “); scanf(“%d”, &b);

If (a > b)

Printf (“bilangan terbesar :%d”, a);

Else

Printf (“bilangan terbesar :%d”, b);

Getch ();

Page 27: Algoritma Dan Pemrograman

Return 0;

}

Tiga Kasus atau Lebih

            Masalah yang mempunyai tiga buah kasus atau lebih dapat dianalisis dengan konstruksi

if-then-else bertingkat – tingkat

                                    If kondisi then

                                                Pernyataan 1

                                    Else

                                    If kondisi 2 then

                                                Pernyataan 2

                                    Else

                                    If kondisi 3 then

                                                Pernyataan 3

                                                End if

                                    End if

                        End if

Contoh 3 kasus :

#include <stdio.h>

#include <conio.h>

Main()

{

Int nilai ;

Printf (“Nilai :”); scanf (“%i”, &Nilai);

If ((Nilai >=81) && (Nilai <=100)){

Printf (“A.”);

}

Else

If ((Nilai >=61) && (Nilai <=81)){

Printf (“B.”);

} else {

Page 28: Algoritma Dan Pemrograman

Printf (“C.”);

}

Getch ();

Return 0;

}

               Statement Switch

            Statemen switch digunakan untuk melakukan pemilihan terhadap ekspresi atau kondisi

yang memiliki nilai-nilai konstan. Oleh karena itu, ekspresi yang didefenisikan harus

menghasilkan nilai yang bertipe bilangan bulat atau karakter. Untuk mendefenisikan nilai-nilai

konstan tersebut adalah dengan menggunakan kata kunci case. Hal ini yang perlu anda

perhatikan juga dalam melakukan pemilihan dengan menggunakan statemen switch ini adalah

kita harus menambahkan statemen break pada setiap nilai yang kita defenisikan.

Contoh Switch :

#include <stdio.h>

#include <conio.h>

void main(){

            int nomor_bulan;

            printf("masukkan angka bulan (1-12):");scanf("%d",&nomor_bulan);

            switch (nomor_bulan)

            {

            case 1 : printf("januari \n");break;

            case 2 : printf("pebruari \n");break;

            case 3 : printf("maret \n");break;

            case 4 : printf("april \n");break;

            case 5 : printf("mei \n");break;

         case 6 : printf("juni \n");break;

            case 7 : printf("juli \n");break;

Page 29: Algoritma Dan Pemrograman

            case 8 : printf("agustus \n");break;

            case 9 : printf("september \n");break;

            case 10 : printf("oktober \n");break;

            case 11 : printf("november \n");break;

            case 12 : printf("desember \n");break;

            default : printf("bukan bulan yang benar \n");

            getch(); }

}

Page 30: Algoritma Dan Pemrograman

ARRAY (LARIK)

            Array adalah suatu tipe data terstruktur  yang berupa sejumlah data sejenis (bertipe data

sama) yang jumlahnya tetap dan diberi suatu nama tertentu.

            Elemen-elemen array tersusun secara berderet dan dapat diakses secara random di dalam

memori.

            Array memiliki alat yang bersebelahan atau berdampingan tergantung lebar tipe datanya.

            Array dapat berupa array satu dimensi, dua dimensi, bahkan n dimensi.

            Elemen-elemen array bertipe data sama dan bisa berisi nilai yang sama atau berbeda –

beda.

Contoh Deklarasi Array :

A[0] A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] A[9]

Pengaksesan Elemen Array

         Elemen – elemen array dapat diakses oleh program menggunakan suatu indeks tertentu secara

random atau berurutan.

         Pengisian dan pengambilan nilai kepada indeks tertentu dapat dilakukan dengan mengeset nilai

atau menampilkan nilai kepada indeks yang dimaksud.

         Dalam C, tidak terdapat error handling terhadap batasan nilai indeks, apakah indeks tersebut

berada di dalam indeks array yang sudah didefenisikan atau belum. Hal ini merupakan

tanggungjawab programer, sehingga jika programer mengakses indeks yang salah, maka nilai

yang dihasilkan akan berbeda atau rusak karena mengakses alamat memori yang tidak sesuai.

Ilustrasi Array 1 dimensi :

1              2              3              4              5              6              710 44 2 76 56 70 7

        1d2      1d4     1d6     1da      2dc    2de     1eo

Ilustrasi Array 1 Dimensi char :

#include <stdio.h>

Void main (){

Char a[8];

For (int i=0; i<8; i++){

Printf (“%x \n”, &a[i]);

Page 31: Algoritma Dan Pemrograman

}

Ilustrasi Array 1 dimensi int :

#include <stdio.h>

Void main (){

Int a[8];

For (int i=0; i<8; i++){

Printf (“%x \n”, &a [i]);

}

Pengaksesan Elemen Array

Elemen – elemen array dapat diakses oleh program menggunakan suatu indeks tertentu secara

random atau berurutan. Indeks array secara default dimulai dari nol (0)

Deklarasi Array secara umum :

            Tipe_data_nama_var_array [ukuran] ;

Keterangan :

Tipe_data : menyatakan jenis tipe data elemen larik (int, char, float, dll)

Nama_var_array : menyatakan nama variabel yang dipakai.

Ukuran : menunjukkan jumlah maksimal elemen larik, contohnya : int [6]

Inisialisasi Array :

            Menginisialisasi array sama dengan memberikan nilai awal array pada saat didefenisikan.

Int nilai [6] = {8, 7, 6, 5, 6, 4,3} ;

Bisa disederhanakan sehingga menjadi :

Int nilai = {8, 7, 6, 5, 6, 4,3} ;

Keterangan :

Contoh diatas berarti Anda memesan tempat di memori komputer sebanyak 6 tempat dengan

indeks dari 0-5, dimana indeks ke-0 bernilai 8, ke-1 bernilai 7, dan seterusnya, dan semua

elemennya bertipe dan integer.

Page 32: Algoritma Dan Pemrograman

Catatan : Untuk memberikan nilai 0 terhadap seluruh elemen array pada saat didefenisikan, Anda

dapat memberikan nilai awal 0 pada elemen pertama sebagai contoh : int temp [100] = {0}; akan

memberikan hasil pemberian nilai 0 dari subscript bernilai 0 hingga 99.

Contoh :

#include <iostream.h>

#include <conio.h>

Void main ()

{int y [] = {1, 2, 3, 4, 5};

Int n r = 0;

For (n = 0; n<5; n++)

{

r + =y [n]

}

Cout<<” “<<r ;

Getch ();

}

Contoh Input & Output Array :

#include <iostream.h>

Inlclude <conio.h>

Main (){

Int A [5]

For (int i = 0; i<5; i++)

Cint >>A [i]; }

For (int C = 0; C<5; C++)

{cout<<”Nilai pada elemen ke “<<C+1<<”adalah =”<<A [C]<<endl ;}

Getch (); }

Menghapus Elemen Array

#include <iostream.h>

#include <conio.h>

{int A [5] = {20, 9, 1986, 200, 13} ;

Page 33: Algoritma Dan Pemrograman

Int n, hapus ;

Clrscr();

Cout<<”Data yang lama \n”;

For (n=0; n<5; n++)

{cout<<” “<<A [n] ;}

Cout<<”Data yang ingin dihapus :”;

Cin>>hapus ;

Cout<<”\n Data yang baru :\n” ;

For (n = hapus -1; n<5 -1; n++)

{A [n] = A [n + 1]; }

For (n = 0; n<4; n++)

{cout<<” “<<A [n]; }

Getch() ; }

Contoh :

#include <iostream.h>

#include <conio.h>

Void main()

{int nilai [5], x;

Cout<<”masukkan nilai :\n\n” ;

For (x = 0; x<5; x++)

{cout<<”nilai angka :” ;

Cint<< [x] ;}

Cout<<”\n\n output nilai : \n”;

For (x = 0; x<5; x++)

{cout<<”\n nilai angka :” <<nilai [x] ;}

Getch() ; }

Contoh Array

#include <stdio.h>

Page 34: Algoritma Dan Pemrograman

#define MAX 5

 Int main() {

Int A [MAX];

Int j;

Printf (“memasukkan nilai :\n”);

For (j = 0; <MAX; j++){

Printf (“A [%d] = “;j); scanf (“%d”, &a[j];

}

Printf (“\n menampilkan nilai :\n”);

For (j = 0; <MAX; j++){

Printf (“A [%d] = %d\n”, j, A[j]);

}

Return 0;

}

Contoh tidak menggunakan Array

#include <stdio.h>

Int main(){

Float x1, x2, x3, x4, x5 ;

Float rata_rata ;

Printf (“memasukkan nilai :\n”);

Printf (“nilai ke-1 =”); scanf (“%f”, &x1);

Printf (“nilai ke-2 =”); scanf (“%f”, &x2);

Printf (“nilai ke-3 =”); scanf (“%f”, &x3);

Printf (“nilai ke-4 =”); scanf (“%f”, &x4);

Printf (“nilai ke-5 =”); scanf (“%f”, &x5);

Rata-rata =(x1+x2+x3+x4+x5)/5 ;

Printf (“\nNilai rata-rata =%.2f”, rata-rata);

Return 0;

}

Menggunakan Array

Page 35: Algoritma Dan Pemrograman

#include <stdio.h>

#define MAX 5

Int main() {

Float A[MAX], jumlah =0, rata-rata ;

Int j ;

Printf (“masukkan nilai :\n”);

For (j =0; j<MAX; j++){

Printf (“A[%d] =”, j); scanf (“%f”, &a[j]);

Jumlah + =A[j];

}

Rata-rata =jumlah / MAX ;

Printf (“\nNilai rata-rata =%.2f”, rata-rata);

Return 0;

}

#include <stdio.h>

Int main (void) {

Typedef int matrik 32[3] [2];

Matrik 32 A, B, C ;

Int j, k ;

Printf (“mengisikan elemen matrik A :\n”);

For (j=0; j<3; j++) {

For (k=0; k<2; k++) {

Printf (“A[%d] [%d] =”, j, k); scanf (“%d”, &A[j] [k]);

}

printf (“\nMengisikan elemen matrik B :\n”);

For (j=0; j<3; j++){

For (k=0; k<2; k++) {

Printf (“B[%d] [%d] =”, j, k); scanf (“%d”, &B [j] [k]);

}

}

For (j=0; j<3; j++) {

Page 36: Algoritma Dan Pemrograman

For (k=0; k<2; k++){

}

}

Printf (“\nHasil penjumlahan matrik A dan B :\n”);

For (j=0; j<3; j++){

For (k=0; k<2; k++){

Printf (“C[%d] [%d] =%d\n”, j, k, c[j] [k]);

}

}

Return 0;

}