Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

15
1 BAB I PENDAHULUAN 1.1 LATAR BELAKANG Pemograman dalam struktur data ada beberapa macam,salah satunya adalah pemograman C++. Dalam pemograman ini biasanya menggunakan variable Array,Struktur dan Linked List. Makalah ini membahas tentang 3 variabel tersebut dimana ketiga variable mempunyai ciri dan umum yang berbeda sesuai dengan tipe file yang digunakan pembaca. Seperti array yang menggunaka satu dimensi dan dua dimensi serta 3 dimensi dimana sangat berbeda dengan struktur yang menggunakan tingkatan prosedur. Program ini merupakan pemograman yang berbeda dari pemograman lainnya misalnya VB,Delphi atau Pascal namun perbedaannya tidak begitu signifikan. Program yang kami buat untuk menampilkan contoh program pembelian baju dengan menggunakan structure, label, seleksi kondisi (nested if),sintaks input dan output. Dimana akan dioperasikan pada saat konsumen membeli pakaian pada toko tertentu. Program ini dibuat untuk mempermudah penjual dalam pencatatan sejumlah barang yang terjual dan untuk mencatat data konsumen yang membeli pakaian,tanpa harus dilakukan secara manual. 1.2 TUJUAN Tujuan disusunnya Makalah ini yaitu untuk menyelesaikan salah satu tugas mata pelajaran yang khususnya mata pelajaran Algoritma dan Pemograman sekaligus tugas atau nilai tambahan untuk UAS. Selain itu, penulis berharap di buatnya makalah ini bukan hanya untuk tugas yang di berikan semata, akan tetapi bisa membantu kita semua dalam hal mempelajari ilmu pengetahuan yang khususnya Pemograman C++ ini. Harapan penulis yaitu semoga makalah ini tidak hanya bermanfaat bagi penulis akan tetapi sangat-sangat bermanfaat khususnya juga bagi para pembaca atau kita semua yang membutuhkan untuk referensi ataupun salah satu

description

Algoritma Dan Pemrograman Semester I

Transcript of Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

Page 1: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

1

BAB I

PENDAHULUAN

1.1 LATAR BELAKANG

Pemograman dalam struktur data ada beberapa macam,salah satunya adalah

pemograman C++. Dalam pemograman ini biasanya menggunakan variable Array,Struktur

dan Linked List.

Makalah ini membahas tentang 3 variabel tersebut dimana ketiga variable

mempunyai ciri dan umum yang berbeda sesuai dengan tipe file yang digunakan pembaca.

Seperti array yang menggunaka satu dimensi dan dua dimensi serta 3 dimensi dimana sangat

berbeda dengan struktur yang menggunakan tingkatan prosedur.

Program ini merupakan pemograman yang berbeda dari pemograman lainnya

misalnya VB,Delphi atau Pascal namun perbedaannya tidak begitu signifikan.

Program yang kami buat untuk menampilkan contoh program pembelian baju

dengan menggunakan structure, label, seleksi kondisi (nested if),sintaks input dan output.

Dimana akan dioperasikan pada saat konsumen membeli pakaian pada toko tertentu.

Program ini dibuat untuk mempermudah penjual dalam pencatatan sejumlah barang

yang terjual dan untuk mencatat data konsumen yang membeli pakaian,tanpa harus dilakukan

secara manual.

1.2 TUJUAN

Tujuan disusunnya Makalah ini yaitu untuk menyelesaikan salah satu tugas mata

pelajaran yang khususnya mata pelajaran Algoritma dan Pemograman sekaligus tugas atau

nilai tambahan untuk UAS.

Selain itu, penulis berharap di buatnya makalah ini bukan hanya untuk tugas yang di

berikan semata, akan tetapi bisa membantu kita semua dalam hal mempelajari ilmu

pengetahuan yang khususnya Pemograman C++ ini. Harapan penulis yaitu semoga makalah

ini tidak hanya bermanfaat bagi penulis akan tetapi sangat-sangat bermanfaat khususnya juga

bagi para pembaca atau kita semua yang membutuhkan untuk referensi ataupun salah satu

Page 2: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

2

sarana untuk menambah wawasan dalam hal ilmu pengetahuan yang khususnya Pemograman

C++. Semoga makalah ini bisa bermanfaat bagi penulis khsususnya dan kita semua amiin.

1.3 RUANG LINGKUP

Ruang lingkup makalah ini adalah untuk mahasiswa AMIK BSI khususnya yang

memiliki mata kuliah Algoritma dan Pemograman.

Page 3: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

3

BAB II

PEMBAHASAN

2.1 LISTING

#include <conio.h>

#include <iostream.h>

#include <iomanip.h>

#include <stdio.h>

struct

{

int banyakk,banyak,beli[6],harga[6],total_harga[6],total;

char kode[6],ukuran[6],*baju[6];}transaksi;

main()

{ char nama[20];

int y;

cout<<"\n STRUK PEMBELIAN\n";

cout<<"\n TOKO BUSANA CANTIK SELALU\n";

cout<<"\n Menjual Aneka Pakaian Anak-anak,Remaja dan dewasa\n";

cout<<"\n JL.Raya Margonda No.200 Telp 021-0001110 Depok - jawa barat\n";

cout<<"\n**************************************************************";

cout<<"\n KODE BAJU UKURAN MERK BAJU HARGA BAJU ";endl;

Page 4: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

4

cout<<"\n---------------------------------------------------------";endl;

cout<<"\n Z S ZARRA Rp. 150.000 ";endl;

cout<<"\n Z M ZARRA Rp. 160.000 ";endl;

cout<<"\n Z L ZARRA Rp. 170.000 ";endl;

cout<<"\n B S HUGO BOSS Rp. 230.000 ";endl;

cout<<"\n B M HUGO BOSS Rp. 240.000 ";endl;

cout<<"\n B L HUGO BOSS Rp. 260.000 ";endl;

cout<<"\n Q S QUIKSILVER Rp. 250.000 ";endl;

cout<<"\n Q M QUIKSILVER Rp. 260.000 ";endl;

cout<<"\n Q L QUIKSILVER Rp. 270.000 ";endl;

cout<<"\n---------------------------------------------------------";endl;

cout<<"\n Nama supplier = ";gets(nama);

cout<<"\n Banyak baju yang dibeli = ";cin>>transaksi.banyak;

for (y=1;y<=transaksi.banyak;++y)

{cout<<"\nBaju Ke - "<<y;endl;

cout<<"\nMasukan kode baju [Z/B/Q] = ";cin>>transaksi.kode[y];endl;

cout<<"Masukan ukuran baju [S/M/L] = ";cin>>transaksi.ukuran[y];endl;

cout<<"jumlah beli = ";cin>>transaksi.beli[y];endl;

Page 5: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

5

if (transaksi.kode[y]=='Z'||transaksi.kode[y]=='z')

{

if (transaksi.ukuran[y]=='S'||transaksi.ukuran[y]=='s')

{transaksi.harga[y]=150000;transaksi.baju[y]="ZARRA";}

else if (transaksi.ukuran[y]=='M'||transaksi.ukuran[y]=='m')

{transaksi.harga[y]=160000;transaksi.baju[y]="ZARRA";}

else if (transaksi.ukuran[y]=='L'||transaksi.ukuran[y]=='l')

{transaksi.harga[y]=170000;transaksi.baju[y]="ZARRA";}

}

else if (transaksi.kode[y]=='B'||transaksi.kode[y]=='b')

{

if (transaksi.ukuran[y]=='S'||transaksi.ukuran[y]=='s')

{transaksi.harga[y]=230000;transaksi.baju[y]="HUGO BOSS";}

else if (transaksi.ukuran[y]=='M'||transaksi.ukuran[y]=='m')

{transaksi.harga[y]=240000;transaksi.baju[y]="HUGO BOSS";}

else if (transaksi.ukuran[y]=='L'||transaksi.ukuran[y]=='l')

{transaksi.harga[y]=260000;transaksi.baju[y]="HUGO BOSS";}

}

else if (transaksi.kode[y]=='Q'||transaksi.kode[y]=='q')

{

if (transaksi.ukuran[y]=='S'||transaksi.ukuran[y]=='s')

Page 6: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

6

{transaksi.harga[y]=250000;transaksi.baju[y]="QUIKSILVER";}

else if (transaksi.ukuran[y]=='M'||transaksi.ukuran[y]=='m')

{transaksi.harga[y]=260000;transaksi.baju[y]="QUIKSILVER";}

else if (transaksi.ukuran[y]=='L'||transaksi.ukuran[y]=='l')

{transaksi.harga[y]=270000;transaksi.baju[y]="QUIKSILVER";}

}

transaksi.total_harga[y]=transaksi.beli[y]*transaksi.harga[y];

transaksi.total=transaksi.total+transaksi.total_harga[y];

}

clrscr();

cout<<"Nama supplier = "<<nama<<endl;

cout<<"============================================================

=======\n";

cout<<"No. kode ukuran merk jumlah beli harga total harga \n";

cout<<"============================================================

=======\n";

for(y=1;y<=transaksi.banyak;++y)

{

Page 7: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

7

cout<<setiosflags(ios::left)<<setw(5)<<y;

cout<<setiosflags(ios::left)<<setw(6)<<transaksi.kode[y];

cout<<setiosflags(ios::left)<<setw(6)<<transaksi.ukuran[y];

cout<<setiosflags(ios::left)<<setw(14)<<transaksi.baju[y];

cout<<setiosflags(ios::left)<<setw(12)<<transaksi.beli[y];

cout<<setiosflags(ios::left)<<setw(14)<<transaksi.harga[y];

cout<<setiosflags(ios::left)<<setw(12)<<transaksi.total_harga[y];

cout<<endl;

}

cout<<"============================================================

=======\n";

cout<<"\nTotal = Rp. "<<transaksi.total;

getch();

}

Page 8: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

8

2.2 TAMPILAN

Gambar 2.2.1 - Input Pembelian

Gambar 2.2.2 – Output Pembelian

Page 9: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

9

2.3 PENJELASAN PROGRAM

2.3.1 File Header

#iostream File header ini ditulis dengan diikuti using namespace std;. Memiliki

beberapa perintah umum seperti cout untuk output dan cin untuk input.

#stdio.h File header ini merupakan singkatan dari standar input output. Jadi sudah

jelas kalau perintah yang ada dijadikan sebagai standar input dan output. Contoh perintah :

scanf, gets, printf, puts, putchar.

#conio.h File header ini merupakan singkatan dari Console Input and Output dan

digunakan untuk membuat teks antarmuka pengguna. Contoh perintah : getchar, getch,

getche, clrscr().

2.3.2 Tipe data

Tipe data Keterangan

Char Menyatakan sebuah karakter seperti A, f, 9,atau *

Int Menyatakan Bilangan bulat antara -32768 sampai dengan +32767

Long Menyatakan bilangan bulat namun jumlahnya nilainya lebih banyak dari

pada biasanya, menampung bilangan antara 2147483648 – 2147483647

Short Menyatakan Bilangan Bulat namun dengan nilai yang normal, contohnya

pada short int yaitu antara -32768 – 32767

Double Menyatakan bilangan real dengan ketelitian tinggi (15 digit).

Dapat menampung bilangan antara 10-308 sampai dengan 10308

Float Menyatakan bilangan real dengan ketelitian rendah (7 digit)

Dapat menampung bilangan antara 10-38 sampai dengan 1038

2.3.3 Operator aritmatika

Operator Aritmatika

Keterangan

Pangkat

Pangkat

Sqrt

Menghitung akar

Page 10: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

10

%

Sisa hasil bagi (modulus)

* , /

Perkalian, Pembagian

+ , -

Penjumlahan, Pengurangan

2.3.4 Perulangan (Looping)

Struktur pengulangan digunakan untuk mengulang suatu perintah sebanyak yang

diinginkan. Untuk melakukan perintah dengan melakukan banyak perulangan akan lebih

efisien apabila kita menggunakan perulangan. Ada beberapa perulangan dalam C++ yaitu :

for,nested for,goto,while,do..while.

2.3.5 Statement goto (Label)

Dalam bahasa pemrograman c++ memiliki statement goto yang digunakan agar

program melompat ke baris yang telah ditentukan. Untuk menggunakan statement goto, maka

diperlukan juga label untuk menandakan kemana program tersebut akan melompat. Label

tersebut dapat di tulis seperti LABEL: atau nama-nama yang lain. Statement goto dapat di

ditempatkan dimana saja sesuai dengan kebutuhan program.

2.3.6 Seleksi Kondisi

2.3.6.1 Bentuk if tunggal

Sintak dari bentuk if tunggal adalah sebagai berikut:

if (kondisi)

{ pernyataan;}

Bentuk ini menunjukkan bahwa jika kondisi tersebut dipenuhi, maka pernyataan

dalam if akan dijalankan, sebaliknya jika kondisi tersebut tidak dipenuhi maka pernyataan

dalam if juga tidak akan dijalankan. Berikut ini contoh penggunaan bentuk if tunggal:

Page 11: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

11

2.3.6.2 Bentuk if – else.

Sintak dari bentuk if – else adalah sebagai berikut :

if (kondisi)

{pernyataan1;}

else

{pernyataan2;}

Jika kondisi di dalam if dipenuhi,maka pernyataan1 dijalankan. Sebaliknya jika

kondisi if tidak dipenuhi maka pernyataan2 baru dijalankan.

2.3.6.3 Bentuk if – else if - . . . – else

Penyeleksian akan dilakukan mulai dari kondisi yang pertama (kondisi1). Jika

kondisi ini dipenuhi maka pernyataan yang mengikuti akan dijalankan (pernyataan1) dan

seleksi kondisi dihentikan (kondisi-kondisi yang lain tidak akan diperiksa).

Namun jika kondisi1 tidak dipenuhi maka seleksi kondisi langsung dilanjutkan ke

kondisi2. Jika kondisi2 dipenuhi maka pernyataan2 dijalankan,namun jika tidak maka seleksi

dilanjutkan ke kondisi3. Begitu seterusnya. jika semua kondisi tidak ada yang bernilai benar

maka pernyataan yang ada di else yang akan dijalankan. Bentuk else sendiri bersifat

optional,dapat tidak digunakan.

Bentuk ini disebut juga sebagai bentuk bertingkat. Sintak dari bentuk ini adalah

sebagai berikut:

if(kondisi1)

{pernyataan_1;}

else if(kondisi2)

{pernyataan_2;}

else if(kondisi3)

{ pernyataan_3;}

. . .

else {pernyataan_n;}

2.3.7 Fungsi strcmp()

String Compare digunakan membandingkan dua string dengan cara membandingkan

string 1 ke string 2. Fungsi ini dimulai membandingkan karakter pertama dari setiap string.

Page 12: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

12

Jika mereka sama satu sama lain,terus dengan pasangan berikutnya sampai membandingkan

karakter yang berbeda atau sampai ke terminator karakter null.

2.3.8 Array

Array adalah suatu variable yang terdiri dari sekumpulan data dimana data-data

tersebut mempunyai tipe data yang sama. Setiap data disimpan dalam alamat memori yang

berbeda-beda dan disebut dengan elemen array.

Setiap elemen mempunyai nilai indek sesuai dengan urutannya, melalui indek inilah kita

dapat mengakses data-data tersebut.

Array dideklarasikan dengan tanda [] (bracket), baik dalam bahasa C++ dan Java.

Bentuk umum dari tipe data array adalah :

tipe_data nama_array[jumlah_elemen].

2.3.8.1 Array Dimensi Satu

Setiap elemen array dapat diakses melalui index

-Index array secara default dimulai dari 0

-Deklarasi array :

tipe_array nama_array[ukuran]

2.3.8.2 Array Dimensi Dua

Array dua dimensi merupakan array yang terdiri dari m buah baris dan n buah kolom

bentuknya dapat berupa matriks atau tabel.

Deklarasi array :

tipe_array nama_array[baris][kolom]

2.3.9 Fungsi goto (x,y)

Fungsi goto (x,y) mempunyai dua parameter. Parameter tersebut adalah koordinat

dimana kita ingin meletakan kursor. Titik pojok kiri atas mempunyai titik koordinat [0,0].

Jika ingin menggeser kekanan maka x ditambahkan sesuai dengan posisi yang kmu inginkan.

Jika ingin menggeser ke bawah maka y ditambahkan.

Page 13: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

13

2.3.10 Struktur (struct)

Struktur adalah pengelompokan variabel-variabel yang bernaung dalam satu nama

yang sama.

Bentuk umum:

struct

{

elemen_struktur;

.....

} nama_tipe_struktur;

Page 14: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

14

BAB III

PENUTUP

3.1 KESIMPULAN

Adapun beberapa kesimpulan yang dapat diambil adalah :

1. Dalam bahasa C++ semua hal yang berhubungan dengan sintaks harus diperhatikan

secara seksama,hal ini dikarenakan sebuah program tidak akan bias running apabila salah

satu sintaks itu missing.

2. Dalam membangun program kita harus memperhatikan huruf reverse

word,variable,konstanta,dan lain-lain karena program C++ bersifat case sensitive (huruf

kecil dan besar dianggap berbeda).

3. Struktur Data merupakan salah satu bahan dasar dasar pembuatan program. Pemakaian

struktur data yang tepat didalam proses pemograman akan menghasilkan algoritma yang

jelas dan tepat sehingga menjadikan program secara keseluruhan lebih sederhana.

4. Array merupakan bagian dari struktur data yaitu termasuk dalam struktur data sederhana

yang dapat didefinisikan sebagai pemesanan alokasi memori sementara pada komputer.

3.2 SARAN

1. Semoga makalah ini menjadi sebuah titik pendorong bagi pemula yang ingin belajar

bahasa C++ secara mendalam.

2. Semoga makalah ini menjadi pegangan pembaca dalam memahami setiap sintaks umum

yang ada pada bahasa C++.

3. Diharapkan makalah ini berguna dan dapat menjadi sarana pembelajaran oleh pembaca

dan menjadi lebih paham mengenai program dan aplikasi lain pendukungnya.

Page 15: Pendahuluan, pembahasan, penutup dan daftar pustaka Makalah Algoritma dan Pemrograman

15

DAFTAR PUSTAKA

Raharjo, Budi, “Pemrograman C++ (revisi kedua)”, Informatika - Bandung, 2011

Utama, Didit N. & Widayanti, Riya, “Algoritma & Pemrograman dengan Borland C++”,

Graha Ilmu – Yogya, 2005

Kadir, Abdul “Pemrograman C++”, Andi Offset – Yogya, 2004