SlideShare a Scribd company logo
1 of 15
4
BAB II
LANDASAN TEORI
Landasan teori ini berisi tentang teori permasalahan serta terori
pemrograman yang menjadi referensi untuk materi pada proposal kali ini. Teori
permasalahan berisi meteri yang mewakili teori pemrograman, yang akan dibuat
program nya dengan menggunakan teori pemrograman.
2.1 Teori Permasalahan
Pada kasus ini metode yang digunakan untuk memecahkan masalah yang
ada adalah metode EOQ dan POQ. Dengan kedua metode tersebut akan
dibandingkan metode mana yang menghasilkan efesiensi dan efektifitas tertinggi
dalam hal produksi dengan biaya seminimal mungkin (Optimum Pendapatan).
Pada teori permasalahan dipakai metode EOQ dan POQ untuk mengetahui
besar kuantitas persediaan yang meminimumkan biaya penyimpanan persediaan
pemesanan serta menentukan interval pemesanan per periode agar dicapai biaya
simpan yang minimum agar tidak terjadi ketimpangan persediaan jumlah barang
atau produk yang dipesan.
2.1.1 Lot Size Economic Order Quantity
EOQ merupakan metode yang digunakan untuk menentukan jumlah
pembelian bahan mentah pada setiap kali pesan dengan biaya yang paling rendah.
Tujuan dari digunakan metode EOQ adalah untuk menentukan jumlah pembelian
bahan mentah pada setiap kali pesan dengan biaya yang paling rendah.
Metode EOQ digunakan agar bisa menentukan berapa jumlah kuantitas
pesanan persediaan dengan biaya seminimum mungkin, EOQ adalah metode yang
termasuk kedalam MRP bersama-sama POQ, EOQ, dan AWW.
Pada metode EOQ berfungsi menentukan kuantitas pesanan persediaan
yang meminimumkan biaya langsung penyimpanan persediaan dan biaya
pemesanan. Rumus EOQ yang yang bisa digunakan adalah :
6
𝐸𝑂𝑄 = √
2.DS
H
…(1)
dimana :
Q = Jumlah satuan per pesanan (Q = EOQ)
D = Kebutuhan bahan baku (Annual Demand)
S = Biaya pesan per pesanan
H = Biaya simpan/unit/hari
2.1.2 Metode Lot Size Period Order Quantity (POQ)
Teknik POQ atau Economic Time Cycle digunakan untuk menentukan
interval waktu order/pemesanan. Jadi pada metode POQ dicari bagaimana periode
pemesanan yang paling baik untuk dapat memenuhi kebutuhan akan suatu produk.
Metode POQ digunakan karena merupakan salah satu metode dalam pengendalia n
persediaan bahan baku yang bertujuan menghemat total biaya persediaan (Total
Inventory Cost) dengan menekankan pada efektifitas frekuensi pemesanan bahan
baku agar lenih terpola. Metode POQ merupakan salah satu pengembangan dari
metode EOQ, yaitu dengan mentransformasi kuantitas pemesanan menjadi
frekuensi pemesanan yang optimal (Divianto, 2011).
Perhitungan metode POQ menggunakan rumus sebagai berikut :
POQ = Q = √
2DS
H[1-
d
p
]
2
... (2)
PCHSCTC 
PDH
W
Q
S
Q
D

dimana :
Q = POQ = Interval waktu order
D = Kebutuhan bahan baku
S = Biaya per pesanan
d = daily production rate (tingkat poduksi per hari)
p = daily demand rate ( tingkat permintaan per hari)
7
EOI=
√2xC/Rxh
1
…(3)
dimana :
C = biaya pesan
R = rata-rata
H = biaya simpan
2.2 Teori Pemrograman
Teori pemrograman yang digunakan dalam meyelesaikan kasus ini
adalah pemrograman yang menggunakan aplikasi software Visual Studio dengan
bahasa pemrograman C#.
2.2.2 Bahasa Pemrograman C#
C# adalah sebuah Bahasa pemrograman yang berorientasi
pada objek yang dikembangkan oleh Microsoft dan menjadi Bahasa pemrograman
yang mendukung .NET programming melalui Visual Studio. Bahasa pemrograman
C# dapat digunakan untuk membangun berbagai macam jenis aplikasi, seperti
aplikasi berbasis windows (desktop) dan aplikasi berbasis web serta berbasis web
services.
2.2.3 Kelebihan C#
Beberapa alasan kuat yag mendasari pemilihan Bahasa C# untuk
mengembangkan aplikasi-aplikasi, yaitu :
a. C# benar-benar berorientasi objek
C# adalah Bahasa yangl menggunakan objek oriented. Ini dapat dilihat
dari kemampuan C# dalam pembentukan objek, class, melakukan
encapsulation, inheritance, dan polymorphism dengan mudah.
b. C# sangat sederhana
Bahasa C# bersifat sederhana karena didasarkan pada Bahasa C dan
8
C ++ bahkan Bahasa Java. Tetapi C# lebih sederhana dari Bahasa-
bahasa pemrograman tersebut karena C# dibuat dengan menghilangkan
kelemahan-kelemahan dari Bahasa-bahasa yang mendasarinya.
c. C# merupakan Bahasa pemrograman modern
Bahasa C# memiliki fasilitas exception handling, garbage collection,
extensible data types, secure code. Fasilitas ini yang ada pada Bahasa
pemrograman modern dan C# telah memilikinya.
d. Mampu membuat berbagai aplikasi
Dengan C# kita dapat membuat berbagai macam aplikasi, mulai dari
aplikasi console, form web, pengolahan kata, dan lain-lain.
2.2.4 Struktur Pemrograman C#
Struktur dalam penggunaan bahasa C# dapat dilihat sebagai berikut
(Wahana, 2008):
1. Namespace
Namespace adalah kumpulan dari class-class yang saling berhubungan,
programmer dapat menyatukan class-class yang masih memiliki
hubungan (misalnya: class-class untuk mengakses database) dengan
sebuah nama yang disebut dengan namespace.
2. Class
Class adalah kombinasi dari data (field) dan fungsi (method)
yang bertugas mengolah data sehingga mencapai hasil yang diinginkan.
3. Komentar
Sebagai catatan agar tidak lupa dengan apa perintah yang
akan dilaksanakan oleh program.
4. Metode
Metode adalah cara sebuah class memperlakukan data yang ada
didalamnya.
9
2.2.5 Algoritma dan Flowchart
Algoritma adalah urutan langkah-langkah logis pada penyelesaian masalah
yang disusun secara sistematis. Tiga struktur dasar algoritma, yaitu :
1. Struktur Runtunan
Struktur dasar algoritma dimana instruksi akan dieksekusi secara
berurutan.
2. Struktur Percabangan
Struktur dasar algoritma dimana pernyataan akan dieksekusi apabila
memenuhi atau tidak memnuhi suatu kondisi.
3. Struktur Perulangan
Struktur dasar algoritma dimana instruksi dieksekusi secara berulang
ulang apabila memenuhi atau tidak memenuhi suatu kondisi.
Flowchart adalah bagan yang menggambarkan suatu algoritma untuk
penyelesaian masalah. Flowchart terbagi dua, yaitu flowchart system dan flowchart
program.
Flowchart System
Bagan yang menggambarkan suatu prosedur dan proses suatu file
dalam suatu media menjadi file dalam media lain dalam suatu sistem data.
Flowchart Program
Bagan yang menggambarkan urutan logika dari suatu prosedur
pemecahan masalah.
Simbol umum dalam flowchart program :
1. Simbol Proses
Fungsi : digunakan untuk mewakili suatu proses didalam program.
Gambar 2.1 Simbol Proses
2. Simbol Keputusan
10
Fungsi : digunakan untuk penyeleksian kondisi di dalam program.
Gambar 2.2 Simbol Keputusan
3. Simbol Input / Output
Fungsi : digunakan untuk mewakili input / output data.
Gambar 2.3 Input/Output
4. Simbol Titik Terminasi
Fungsi : digunakan untuk mewakili awal dan akhir suatu program.
Gambar 2.4 Simbol Titik Terminasi
5. Simbol Preparation
Fungsi : digunakan untuk menyiapkan harga awal dari beberapa variable
yang akan digunakan.
Gambar 2.5 Simbol Preparation
6. Simbol Garis Alir
Fungsi : digunakanuntuk menunjukkan arus dari suatu proses.
Gambar 2.6 Simbol Garis Alir
11
7. Simbol On Page Connector
Fungsi : digunakan untuk menghubungkan flowchart yang berbeda dalam
halaman yang sama.
Gambar 2.7 Simbol On Page Connector
8. Simbol off Page Connector
Fungsi : digunakanuntuk menghubungkan flowchart yang berbeda dalam
halaman yang berbeda.
Gambar 2.8 Simbol Off Page Connector
9. Simbol Elemen Update
Fungsi : digunakan untuk menyatakan elemen Update pada perulangan.
Gambar 2.9 Simbol Elemen Update
12
2.2.6 Elemen-elemen C#
Berikut merupakan elemen-elemen dari C#.
1. Tipe Data
Tabel 2.1 Tipe Data Sederhana
Nama Ukuran
Byte 8
Short 16
Int 32
Long 64
Sbyte 8
Unshort 16
Uint 32
Ulong 64
Meskipun banyak tipe data pada C#, tipe-tipe data yang paling sering
digunakan adalah int, double, string, bool dan object. Masing-masing
memiliki kegunaannya sendiri:
 int, digunakan untuk menyatakan suatu bilangan bulat, positif maupun
negatif, sebagai contoh jumlah murid dalam satu kelas.
 double, digunakan ketika kita perlu menyatakan suatu bilangan pecahan,
misalkan nilai, harga atau berat. Akan tetapi, double adalah data dengan
ketelitian 15-16 digit. Sehingga terkadang tipe data float dengan ketelitian
7 digit lebih disukai untuk contoh contoh tadi, dengan alasan menghemat
memori.
 string, digunakan ketika menyatakan sekumpulan karakter, baik itu nama,
kalimat, password ataupun kode. String sesungguhnya merupakan suatu
array dari char.
13
 bool, bernilai true atau false. Paling sering digunakan untuk menyatakan
suatu kondisi, misalnya Is Enabled, Is Visible, Sedang Hujan, Sedang Lapar,
dan lain lain.
 object, adalah class dasar dari semua tipe data dalam C#. Digunakan untuk
menyatakan tipe data yang tidak pasti.
Tipe-tipe data lainnya adalah:
 Mirip dengan int:sbyte, short, long, untuk tipe bertanda, byte, ushort, uint,
u symbol
 long untuk tipe yang tak bertanda
 Mirip dengan double: float dan decimal
 char, untuk menyimpan satu karakter.
2. Identifier
Identifier merupakan suatu karakter huruf yang digunakan
untuk mengidentifikasi suatu penampung nilai yang akan digunakan dalam
program. (Illustrated C#, 2008)
a. Identifier tidak boleh berupa angka atau diawali karakter angka.
Contoh :
Long 2X;
b. Identifier tidak boleh mengandung spasi
c. Identifier tidak boleh menggunakan karakter simbol.
Contoh :
Long $atu;, long du@
d. Identifier tidak boleh menggunakan kata kunci yang terdapat pada C#
Contoh : int break; int return
3. Komentar
Komentar adalah bagian dari syntax yang tidak ikut dieksekusi saat
proses kompilasi.
14
Tiga tipe komentar :
a. Single – line //
b. Delimited /* */
c. Documentation ///
2.2.7 Teori pemrograman pada C#
Teori atau konsep yang akan dijelaskan yang terdapat di dalam Bahasa
pemrograman C# antara lain :
1. Teori Keputusan
2. Teori Perulangan
3. Teori Array
4. Teori OOP (Object Oriented Programming)
2.2.7.1 Teori Konsep Keputusan
Konsep keputusan adalah konsep yang memiliki fungsi untuk menentukan
pemilihan kondisi yang sederhana diantara opsi-opsi pemrosesan. Konsep
Keputusan terdapat dua jenis konsep, yaitu :
a. Statement IF
Kondisi If berguna untuk mengeksekusi pernyataan pada program. Kondisi If
berupa ekpresi Boolean. Jika pernyataan benar, maka pernyataan akan di
eksekusi. Jika pernyataan salah, maka pernyataan akan dilanjutkan/dilewati.
Sebagai contoh :
if(10 < 11) Console.WriteLine("10 is less than 11");
Pada kasus diatas, 10 bukanlah lebih kecil dari 9, adapun pemanggilan ke
WriteLine() tidak akan dimasukkan.
15
Operator yang dapat digunakan pada suatu pernyataan :
Tabel 2.2 Operator Aritmatika
Konsep if terdapat bermacam-macam jenisnya, yaitu :
1. If tunggal, adalah konsep keputusan if yang hanya mengeksekusi satu kondisi
bernilai benar.
Bentuk umum :
If (kondisi (Boolean))
{
Penyataan dieksekusi;
}
2. If majemuk, adalah susunan perintah if yang disusun agar proses pemilihan kondisi
bisa dilakukan dengan beberapa kondisi lainnya. Jika kondisi benar akan
dieksekusi, jika tidak akan dilanjutkan ke perintah if berikutnya.
Bentuk umum :
If (kondisi(Boolean))
{ pernyataan eksekusi benar;
Else if
Pernyataan kondisi kedua benar;
Else
Pernyataan pilihan terakhir
}
3. If bertingkat, adalah bentuk if dimana dalam blok statement if terdapat statement if
yang lain.
Bentuk umum :
If(kondisi utama)
{
If(kondisi khusus)
Pernyataan yang akan dieksekusi kondisi khusus dan bernilai
benar; }
Operator Arti
< Kurang dengan
<= Sama kurang dengan
> Besar dengan
>= Sama besar dengan
= = Sama dengan
!= Tidak sama dengan
16
b. Statement Switch
Statement switch adalah pernyataan yang digunakan untuk menjalankan salah satu
pernyataan dari beberapa kemungkinan pernyataan, berdasarkan nilai ungkapan dan
penyeleksi. Jika suatu pernyataan tidak terdapat dalam pilihan maka akan
dilanjutkan ke default;
Bentuk umum :
Switch (ekspresi)
{
Case nilai 1 :
Statement;
Break;
Case nilai 2 :
Statement;
Break;
Default :
Statement;
Break;
}
2.2.7.2 Teori Perulangan
Perulangan adalah proses yang digunakan dalam pemrograman untuk
mengulang sekumpulan pernyataan yang sama dan dilakukan berulang-ulang
hingga kondisi tertentu tercapai.
Statement looping terdiri atas dua bagian :
1. Kondisi perulangan yaitu ekspresi Boolean yang harus
dipenuhi untuk melaksanakan perulangan.
2. Bagian kedua blok statement yang akan diulang.
Terdapat tiga pernyataan untuk looping yaitu :
a. While statement
Perulangan yang berguna memproses pernyataan berkali-kali, dimana
pengecekan dilakukan terlebih dahulu sebelum dilakukan perulangan.
Bentuk umum :
While (ekspresi)
{
Statement 1;
Statement 2;
Iterasi;
}
17
b. Do – While Statement
Do – while adalah perulangan yang mirip dengan while, yang berbeda
hanya pada pengecekannya dimana do-while akan melakukan sekali
perulangan baru dilakukan pengecekan.
Bentuk umum ;
inisialisasi;
do
{
statement;
iterasi;
}
while(kondisi);
c. For Statement
For statement adalah konsep perulangan dimana telah diketahui terlebih
dahulu jumlah perulangannya.
Bentuk umum :
for(inisialisasi;kondisi;iterasi)
{
statement;
}
2.2.7.3 Array
Array adalah sejumlah nilai yang memiliki tipe yang sama Tiap-tiap array
terletak pada posisi tertentu yang ditunjuj oleh indeks. Array memiliki 2 jenis, yaitu
:
1. Fixed-Value Array
Array yang memiliki nilai yang telah ditetapkan terlebih dahulu,
bentuk umumnya :
Tipe_data[] nama_array={elemen1,elemen2,elemen3,…};
2. Variable-Length Array
Pada array ini nilai array tidak ditentukan terlebih dahulu, tetapi
telah diinputkan datanya oleh programmer.
Tahap pembuatan array yang belum ditetapkan nilainya harus
melalui tahap pendeklarasian, inisialisasi, dan assigning.
18
a. Pendeklarasian Array
Tahap pendeklarasian array dikenal juga sebagai tahap
pengenalan
array kepada computer, seperti variable, tipe, nama dan ukuran.
Contoh : stringnama [] ;
Nama [] = new string [3] ‘
b. Inisialisasi Array
Tahap untuk memasukkan nilai ke masing-masing elemen array.
Contoh : nama_array[indeks] = nilai ;
Jenis Array berdasarkan dimensi :
a. Array berdimensi satu, adalah array yang didalamnya hanya ada
sebuah indeks.
b. Array berdimensi banyak atau multidimensional array adalah array
yang memiliki lebih dari satu indeks.
Jagged Array
Adalah pengecualian array. Jika pada array dimensinya sejenis, maka pada jagged
array memiliki dimensi yang berbeda-beda.
Bentuk umum :
int[][] swap = new int[2][];
swap[0] = new int[] {3,2,1};
swap[1] = new int[] {5,4,3};
2.2.7.4 Object Oriented Programming (OOP)
Paradigma pemrograman yang berorientasi kepada objek. Keseluruhan data
dan fungsi di dalam paradigm dibungkus dalam kelas-kelas. Prinsip-prinsip yang
terdapat pada OOP diantaranya :
- Abstraksi , adalah proses penyeleksian hal-hal yang perlu dan tidak perlu
dari suatu objek. Dengan tujuan memberikan kepada programmer sebuah
bentuk objek yang benar-benar tepat dan efisien dalam menggambarkan apa
yang terjadi di dunia nyata.
- Enkapsulasi, berfungsi memastikan pengguna sebuah objek tidak dapat
mengganti keadaan dalam dari objek dengan cara yang tidak semestinya,
19
karena hanya metode dalam objek tersebut yang dapat mengakses
keadaanya.
- Polimorfisme, adalah kemampuan untuk memperlakukan objek yang
beragam dengan cara yang sama. Artinya, hanya objek yang mendapat izin
terlebih dahulu yang dapat mengakses nya.
- Inheritance adalah teknik yang menyatakan hubungan hierarki berdasarkan
kelas masing-masing yang merupakan konsep dari pewarisan dimana suatu
class diturunkan dari kelas lainnya.

More Related Content

What's hot

Laporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul ILaporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul IShofura Kamal
 
Referensi pemrograman bahasa pascal
Referensi pemrograman bahasa pascalReferensi pemrograman bahasa pascal
Referensi pemrograman bahasa pascalMutiara Aprilian
 
pengenalan c+
pengenalan c+pengenalan c+
pengenalan c+aks247
 
Listing Program Penjualan Sepatu
Listing Program Penjualan SepatuListing Program Penjualan Sepatu
Listing Program Penjualan SepatuDwi Mardianti
 
Pascal tutorialtpascal701
Pascal tutorialtpascal701Pascal tutorialtpascal701
Pascal tutorialtpascal701Alvin Setiawan
 
Dasar pemrograman turbo pascal
Dasar pemrograman turbo pascalDasar pemrograman turbo pascal
Dasar pemrograman turbo pascalArum Mbedioen
 
Modul algoritma dan pemograman
Modul algoritma dan pemogramanModul algoritma dan pemograman
Modul algoritma dan pemogramanPANJI_ADITYAN
 
Laporan praktikum iv.1 visual
Laporan praktikum iv.1 visualLaporan praktikum iv.1 visual
Laporan praktikum iv.1 visualrahmi wahyuni
 
Laporan hasil praktikum modul ii tipe data
Laporan hasil praktikum modul ii tipe dataLaporan hasil praktikum modul ii tipe data
Laporan hasil praktikum modul ii tipe dataMeycelino A. T
 
Dasar dasar turbo pascal
Dasar dasar turbo pascalDasar dasar turbo pascal
Dasar dasar turbo pascalDuriani
 

What's hot (16)

pemrograman php ii
pemrograman  php iipemrograman  php ii
pemrograman php ii
 
Laporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul ILaporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul I
 
Referensi pemrograman bahasa pascal
Referensi pemrograman bahasa pascalReferensi pemrograman bahasa pascal
Referensi pemrograman bahasa pascal
 
pengenalan c+
pengenalan c+pengenalan c+
pengenalan c+
 
Modul visual c++
Modul visual c++Modul visual c++
Modul visual c++
 
Listing Program Penjualan Sepatu
Listing Program Penjualan SepatuListing Program Penjualan Sepatu
Listing Program Penjualan Sepatu
 
Pascal tutorialtpascal701
Pascal tutorialtpascal701Pascal tutorialtpascal701
Pascal tutorialtpascal701
 
Modul c++
Modul c++Modul c++
Modul c++
 
Modul 2
Modul 2Modul 2
Modul 2
 
Dasar pemrograman turbo pascal
Dasar pemrograman turbo pascalDasar pemrograman turbo pascal
Dasar pemrograman turbo pascal
 
Modul praktikum c++
Modul praktikum c++Modul praktikum c++
Modul praktikum c++
 
Modul algoritma dan pemograman
Modul algoritma dan pemogramanModul algoritma dan pemograman
Modul algoritma dan pemograman
 
Laporan praktikum iv.1 visual
Laporan praktikum iv.1 visualLaporan praktikum iv.1 visual
Laporan praktikum iv.1 visual
 
Laporan hasil praktikum modul ii tipe data
Laporan hasil praktikum modul ii tipe dataLaporan hasil praktikum modul ii tipe data
Laporan hasil praktikum modul ii tipe data
 
Modul08 a
Modul08 aModul08 a
Modul08 a
 
Dasar dasar turbo pascal
Dasar dasar turbo pascalDasar dasar turbo pascal
Dasar dasar turbo pascal
 

Similar to BAB II Landasan Teori TB

Intruksi Fundamental
Intruksi FundamentalIntruksi Fundamental
Intruksi FundamentalAkmal Fajar
 
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdf
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdfDasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdf
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdfRizaJr
 
Slide-INF202-INF202-Slide-01.pdf
Slide-INF202-INF202-Slide-01.pdfSlide-INF202-INF202-Slide-01.pdf
Slide-INF202-INF202-Slide-01.pdfGratechComputer
 
Pengantar Pemrograman Chapter 2
Pengantar Pemrograman Chapter 2Pengantar Pemrograman Chapter 2
Pengantar Pemrograman Chapter 2Dede Kurniadi
 
0-Pengantar Pemrograman lanjut.pptx
0-Pengantar Pemrograman lanjut.pptx0-Pengantar Pemrograman lanjut.pptx
0-Pengantar Pemrograman lanjut.pptxBom Bom
 
ALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMANALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMANBang Jo
 
Teknik kompilasi
Teknik kompilasiTeknik kompilasi
Teknik kompilasiHedyIzmaya
 
Modul praktikum dasar algoritma dan pemograman
Modul praktikum dasar algoritma dan pemogramanModul praktikum dasar algoritma dan pemograman
Modul praktikum dasar algoritma dan pemogramanCatur Suranto S.T
 
Bahasa Pemrograman C++
Bahasa Pemrograman C++Bahasa Pemrograman C++
Bahasa Pemrograman C++Rangga Ananto
 
penggunaan program Simulasi Sistem Antrian Single Server
penggunaan program Simulasi Sistem Antrian Single Serverpenggunaan program Simulasi Sistem Antrian Single Server
penggunaan program Simulasi Sistem Antrian Single Servergilank_upn
 
Teknik pemrograman - aplikasi notepad
Teknik pemrograman - aplikasi notepadTeknik pemrograman - aplikasi notepad
Teknik pemrograman - aplikasi notepadMuhammad Chairul Umam
 
Algoritma dan pemrograman
Algoritma dan pemrogramanAlgoritma dan pemrograman
Algoritma dan pemrogramanMastur Cell
 
m01-struktur-dasar-c.ppt
m01-struktur-dasar-c.pptm01-struktur-dasar-c.ppt
m01-struktur-dasar-c.pptmisrianaputri1
 

Similar to BAB II Landasan Teori TB (20)

Intruksi Fundamental
Intruksi FundamentalIntruksi Fundamental
Intruksi Fundamental
 
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdf
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdfDasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdf
Dasar-Pemrograman-Modul-1-Pengenalan-Pemrograman.pdf
 
Slide-INF202-INF202-Slide-01.pdf
Slide-INF202-INF202-Slide-01.pdfSlide-INF202-INF202-Slide-01.pdf
Slide-INF202-INF202-Slide-01.pdf
 
Pengantar Pemrograman Chapter 2
Pengantar Pemrograman Chapter 2Pengantar Pemrograman Chapter 2
Pengantar Pemrograman Chapter 2
 
0-Pengantar Pemrograman lanjut.pptx
0-Pengantar Pemrograman lanjut.pptx0-Pengantar Pemrograman lanjut.pptx
0-Pengantar Pemrograman lanjut.pptx
 
Modul algoritma dan pemograman
Modul algoritma dan pemogramanModul algoritma dan pemograman
Modul algoritma dan pemograman
 
ALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMANALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMAN
 
Teknik kompilasi
Teknik kompilasiTeknik kompilasi
Teknik kompilasi
 
Algoritam1
Algoritam1Algoritam1
Algoritam1
 
Download gratis modul c++
Download gratis modul c++Download gratis modul c++
Download gratis modul c++
 
1 ADP Algoritma
1   ADP Algoritma1   ADP Algoritma
1 ADP Algoritma
 
Modul praktikum dasar algoritma dan pemograman
Modul praktikum dasar algoritma dan pemogramanModul praktikum dasar algoritma dan pemograman
Modul praktikum dasar algoritma dan pemograman
 
Bahasa Pemrograman C++
Bahasa Pemrograman C++Bahasa Pemrograman C++
Bahasa Pemrograman C++
 
penggunaan program Simulasi Sistem Antrian Single Server
penggunaan program Simulasi Sistem Antrian Single Serverpenggunaan program Simulasi Sistem Antrian Single Server
penggunaan program Simulasi Sistem Antrian Single Server
 
Pengenalan bahasa c++
Pengenalan bahasa c++Pengenalan bahasa c++
Pengenalan bahasa c++
 
Teknik pemrograman - aplikasi notepad
Teknik pemrograman - aplikasi notepadTeknik pemrograman - aplikasi notepad
Teknik pemrograman - aplikasi notepad
 
01 p.prog 2 - pert 2
01  p.prog 2 - pert 201  p.prog 2 - pert 2
01 p.prog 2 - pert 2
 
Algoritma dan pemrograman
Algoritma dan pemrogramanAlgoritma dan pemrograman
Algoritma dan pemrograman
 
flowchart
flowchartflowchart
flowchart
 
m01-struktur-dasar-c.ppt
m01-struktur-dasar-c.pptm01-struktur-dasar-c.ppt
m01-struktur-dasar-c.ppt
 

More from Panji Adnan Coersea M. (7)

Laporan Praktikum KR-02 Calori Work Pac
Laporan Praktikum KR-02 Calori Work PacLaporan Praktikum KR-02 Calori Work Pac
Laporan Praktikum KR-02 Calori Work Pac
 
Curriculum vitae Aeromodeling
Curriculum vitae AeromodelingCurriculum vitae Aeromodeling
Curriculum vitae Aeromodeling
 
BAB V Penutup TB
BAB V Penutup TBBAB V Penutup TB
BAB V Penutup TB
 
BAB IV Analisis TB
BAB IV Analisis TBBAB IV Analisis TB
BAB IV Analisis TB
 
BAB III Algoritma & Flowchart TB
BAB III Algoritma & Flowchart TBBAB III Algoritma & Flowchart TB
BAB III Algoritma & Flowchart TB
 
BAB I Pendahuluan TB
BAB I Pendahuluan TBBAB I Pendahuluan TB
BAB I Pendahuluan TB
 
Abstrak
AbstrakAbstrak
Abstrak
 

BAB II Landasan Teori TB

  • 1. 4 BAB II LANDASAN TEORI Landasan teori ini berisi tentang teori permasalahan serta terori pemrograman yang menjadi referensi untuk materi pada proposal kali ini. Teori permasalahan berisi meteri yang mewakili teori pemrograman, yang akan dibuat program nya dengan menggunakan teori pemrograman. 2.1 Teori Permasalahan Pada kasus ini metode yang digunakan untuk memecahkan masalah yang ada adalah metode EOQ dan POQ. Dengan kedua metode tersebut akan dibandingkan metode mana yang menghasilkan efesiensi dan efektifitas tertinggi dalam hal produksi dengan biaya seminimal mungkin (Optimum Pendapatan). Pada teori permasalahan dipakai metode EOQ dan POQ untuk mengetahui besar kuantitas persediaan yang meminimumkan biaya penyimpanan persediaan pemesanan serta menentukan interval pemesanan per periode agar dicapai biaya simpan yang minimum agar tidak terjadi ketimpangan persediaan jumlah barang atau produk yang dipesan. 2.1.1 Lot Size Economic Order Quantity EOQ merupakan metode yang digunakan untuk menentukan jumlah pembelian bahan mentah pada setiap kali pesan dengan biaya yang paling rendah. Tujuan dari digunakan metode EOQ adalah untuk menentukan jumlah pembelian bahan mentah pada setiap kali pesan dengan biaya yang paling rendah. Metode EOQ digunakan agar bisa menentukan berapa jumlah kuantitas pesanan persediaan dengan biaya seminimum mungkin, EOQ adalah metode yang termasuk kedalam MRP bersama-sama POQ, EOQ, dan AWW. Pada metode EOQ berfungsi menentukan kuantitas pesanan persediaan yang meminimumkan biaya langsung penyimpanan persediaan dan biaya pemesanan. Rumus EOQ yang yang bisa digunakan adalah :
  • 2. 6 𝐸𝑂𝑄 = √ 2.DS H …(1) dimana : Q = Jumlah satuan per pesanan (Q = EOQ) D = Kebutuhan bahan baku (Annual Demand) S = Biaya pesan per pesanan H = Biaya simpan/unit/hari 2.1.2 Metode Lot Size Period Order Quantity (POQ) Teknik POQ atau Economic Time Cycle digunakan untuk menentukan interval waktu order/pemesanan. Jadi pada metode POQ dicari bagaimana periode pemesanan yang paling baik untuk dapat memenuhi kebutuhan akan suatu produk. Metode POQ digunakan karena merupakan salah satu metode dalam pengendalia n persediaan bahan baku yang bertujuan menghemat total biaya persediaan (Total Inventory Cost) dengan menekankan pada efektifitas frekuensi pemesanan bahan baku agar lenih terpola. Metode POQ merupakan salah satu pengembangan dari metode EOQ, yaitu dengan mentransformasi kuantitas pemesanan menjadi frekuensi pemesanan yang optimal (Divianto, 2011). Perhitungan metode POQ menggunakan rumus sebagai berikut : POQ = Q = √ 2DS H[1- d p ] 2 ... (2) PCHSCTC  PDH W Q S Q D  dimana : Q = POQ = Interval waktu order D = Kebutuhan bahan baku S = Biaya per pesanan d = daily production rate (tingkat poduksi per hari) p = daily demand rate ( tingkat permintaan per hari)
  • 3. 7 EOI= √2xC/Rxh 1 …(3) dimana : C = biaya pesan R = rata-rata H = biaya simpan 2.2 Teori Pemrograman Teori pemrograman yang digunakan dalam meyelesaikan kasus ini adalah pemrograman yang menggunakan aplikasi software Visual Studio dengan bahasa pemrograman C#. 2.2.2 Bahasa Pemrograman C# C# adalah sebuah Bahasa pemrograman yang berorientasi pada objek yang dikembangkan oleh Microsoft dan menjadi Bahasa pemrograman yang mendukung .NET programming melalui Visual Studio. Bahasa pemrograman C# dapat digunakan untuk membangun berbagai macam jenis aplikasi, seperti aplikasi berbasis windows (desktop) dan aplikasi berbasis web serta berbasis web services. 2.2.3 Kelebihan C# Beberapa alasan kuat yag mendasari pemilihan Bahasa C# untuk mengembangkan aplikasi-aplikasi, yaitu : a. C# benar-benar berorientasi objek C# adalah Bahasa yangl menggunakan objek oriented. Ini dapat dilihat dari kemampuan C# dalam pembentukan objek, class, melakukan encapsulation, inheritance, dan polymorphism dengan mudah. b. C# sangat sederhana Bahasa C# bersifat sederhana karena didasarkan pada Bahasa C dan
  • 4. 8 C ++ bahkan Bahasa Java. Tetapi C# lebih sederhana dari Bahasa- bahasa pemrograman tersebut karena C# dibuat dengan menghilangkan kelemahan-kelemahan dari Bahasa-bahasa yang mendasarinya. c. C# merupakan Bahasa pemrograman modern Bahasa C# memiliki fasilitas exception handling, garbage collection, extensible data types, secure code. Fasilitas ini yang ada pada Bahasa pemrograman modern dan C# telah memilikinya. d. Mampu membuat berbagai aplikasi Dengan C# kita dapat membuat berbagai macam aplikasi, mulai dari aplikasi console, form web, pengolahan kata, dan lain-lain. 2.2.4 Struktur Pemrograman C# Struktur dalam penggunaan bahasa C# dapat dilihat sebagai berikut (Wahana, 2008): 1. Namespace Namespace adalah kumpulan dari class-class yang saling berhubungan, programmer dapat menyatukan class-class yang masih memiliki hubungan (misalnya: class-class untuk mengakses database) dengan sebuah nama yang disebut dengan namespace. 2. Class Class adalah kombinasi dari data (field) dan fungsi (method) yang bertugas mengolah data sehingga mencapai hasil yang diinginkan. 3. Komentar Sebagai catatan agar tidak lupa dengan apa perintah yang akan dilaksanakan oleh program. 4. Metode Metode adalah cara sebuah class memperlakukan data yang ada didalamnya.
  • 5. 9 2.2.5 Algoritma dan Flowchart Algoritma adalah urutan langkah-langkah logis pada penyelesaian masalah yang disusun secara sistematis. Tiga struktur dasar algoritma, yaitu : 1. Struktur Runtunan Struktur dasar algoritma dimana instruksi akan dieksekusi secara berurutan. 2. Struktur Percabangan Struktur dasar algoritma dimana pernyataan akan dieksekusi apabila memenuhi atau tidak memnuhi suatu kondisi. 3. Struktur Perulangan Struktur dasar algoritma dimana instruksi dieksekusi secara berulang ulang apabila memenuhi atau tidak memenuhi suatu kondisi. Flowchart adalah bagan yang menggambarkan suatu algoritma untuk penyelesaian masalah. Flowchart terbagi dua, yaitu flowchart system dan flowchart program. Flowchart System Bagan yang menggambarkan suatu prosedur dan proses suatu file dalam suatu media menjadi file dalam media lain dalam suatu sistem data. Flowchart Program Bagan yang menggambarkan urutan logika dari suatu prosedur pemecahan masalah. Simbol umum dalam flowchart program : 1. Simbol Proses Fungsi : digunakan untuk mewakili suatu proses didalam program. Gambar 2.1 Simbol Proses 2. Simbol Keputusan
  • 6. 10 Fungsi : digunakan untuk penyeleksian kondisi di dalam program. Gambar 2.2 Simbol Keputusan 3. Simbol Input / Output Fungsi : digunakan untuk mewakili input / output data. Gambar 2.3 Input/Output 4. Simbol Titik Terminasi Fungsi : digunakan untuk mewakili awal dan akhir suatu program. Gambar 2.4 Simbol Titik Terminasi 5. Simbol Preparation Fungsi : digunakan untuk menyiapkan harga awal dari beberapa variable yang akan digunakan. Gambar 2.5 Simbol Preparation 6. Simbol Garis Alir Fungsi : digunakanuntuk menunjukkan arus dari suatu proses. Gambar 2.6 Simbol Garis Alir
  • 7. 11 7. Simbol On Page Connector Fungsi : digunakan untuk menghubungkan flowchart yang berbeda dalam halaman yang sama. Gambar 2.7 Simbol On Page Connector 8. Simbol off Page Connector Fungsi : digunakanuntuk menghubungkan flowchart yang berbeda dalam halaman yang berbeda. Gambar 2.8 Simbol Off Page Connector 9. Simbol Elemen Update Fungsi : digunakan untuk menyatakan elemen Update pada perulangan. Gambar 2.9 Simbol Elemen Update
  • 8. 12 2.2.6 Elemen-elemen C# Berikut merupakan elemen-elemen dari C#. 1. Tipe Data Tabel 2.1 Tipe Data Sederhana Nama Ukuran Byte 8 Short 16 Int 32 Long 64 Sbyte 8 Unshort 16 Uint 32 Ulong 64 Meskipun banyak tipe data pada C#, tipe-tipe data yang paling sering digunakan adalah int, double, string, bool dan object. Masing-masing memiliki kegunaannya sendiri:  int, digunakan untuk menyatakan suatu bilangan bulat, positif maupun negatif, sebagai contoh jumlah murid dalam satu kelas.  double, digunakan ketika kita perlu menyatakan suatu bilangan pecahan, misalkan nilai, harga atau berat. Akan tetapi, double adalah data dengan ketelitian 15-16 digit. Sehingga terkadang tipe data float dengan ketelitian 7 digit lebih disukai untuk contoh contoh tadi, dengan alasan menghemat memori.  string, digunakan ketika menyatakan sekumpulan karakter, baik itu nama, kalimat, password ataupun kode. String sesungguhnya merupakan suatu array dari char.
  • 9. 13  bool, bernilai true atau false. Paling sering digunakan untuk menyatakan suatu kondisi, misalnya Is Enabled, Is Visible, Sedang Hujan, Sedang Lapar, dan lain lain.  object, adalah class dasar dari semua tipe data dalam C#. Digunakan untuk menyatakan tipe data yang tidak pasti. Tipe-tipe data lainnya adalah:  Mirip dengan int:sbyte, short, long, untuk tipe bertanda, byte, ushort, uint, u symbol  long untuk tipe yang tak bertanda  Mirip dengan double: float dan decimal  char, untuk menyimpan satu karakter. 2. Identifier Identifier merupakan suatu karakter huruf yang digunakan untuk mengidentifikasi suatu penampung nilai yang akan digunakan dalam program. (Illustrated C#, 2008) a. Identifier tidak boleh berupa angka atau diawali karakter angka. Contoh : Long 2X; b. Identifier tidak boleh mengandung spasi c. Identifier tidak boleh menggunakan karakter simbol. Contoh : Long $atu;, long du@ d. Identifier tidak boleh menggunakan kata kunci yang terdapat pada C# Contoh : int break; int return 3. Komentar Komentar adalah bagian dari syntax yang tidak ikut dieksekusi saat proses kompilasi.
  • 10. 14 Tiga tipe komentar : a. Single – line // b. Delimited /* */ c. Documentation /// 2.2.7 Teori pemrograman pada C# Teori atau konsep yang akan dijelaskan yang terdapat di dalam Bahasa pemrograman C# antara lain : 1. Teori Keputusan 2. Teori Perulangan 3. Teori Array 4. Teori OOP (Object Oriented Programming) 2.2.7.1 Teori Konsep Keputusan Konsep keputusan adalah konsep yang memiliki fungsi untuk menentukan pemilihan kondisi yang sederhana diantara opsi-opsi pemrosesan. Konsep Keputusan terdapat dua jenis konsep, yaitu : a. Statement IF Kondisi If berguna untuk mengeksekusi pernyataan pada program. Kondisi If berupa ekpresi Boolean. Jika pernyataan benar, maka pernyataan akan di eksekusi. Jika pernyataan salah, maka pernyataan akan dilanjutkan/dilewati. Sebagai contoh : if(10 < 11) Console.WriteLine("10 is less than 11"); Pada kasus diatas, 10 bukanlah lebih kecil dari 9, adapun pemanggilan ke WriteLine() tidak akan dimasukkan.
  • 11. 15 Operator yang dapat digunakan pada suatu pernyataan : Tabel 2.2 Operator Aritmatika Konsep if terdapat bermacam-macam jenisnya, yaitu : 1. If tunggal, adalah konsep keputusan if yang hanya mengeksekusi satu kondisi bernilai benar. Bentuk umum : If (kondisi (Boolean)) { Penyataan dieksekusi; } 2. If majemuk, adalah susunan perintah if yang disusun agar proses pemilihan kondisi bisa dilakukan dengan beberapa kondisi lainnya. Jika kondisi benar akan dieksekusi, jika tidak akan dilanjutkan ke perintah if berikutnya. Bentuk umum : If (kondisi(Boolean)) { pernyataan eksekusi benar; Else if Pernyataan kondisi kedua benar; Else Pernyataan pilihan terakhir } 3. If bertingkat, adalah bentuk if dimana dalam blok statement if terdapat statement if yang lain. Bentuk umum : If(kondisi utama) { If(kondisi khusus) Pernyataan yang akan dieksekusi kondisi khusus dan bernilai benar; } Operator Arti < Kurang dengan <= Sama kurang dengan > Besar dengan >= Sama besar dengan = = Sama dengan != Tidak sama dengan
  • 12. 16 b. Statement Switch Statement switch adalah pernyataan yang digunakan untuk menjalankan salah satu pernyataan dari beberapa kemungkinan pernyataan, berdasarkan nilai ungkapan dan penyeleksi. Jika suatu pernyataan tidak terdapat dalam pilihan maka akan dilanjutkan ke default; Bentuk umum : Switch (ekspresi) { Case nilai 1 : Statement; Break; Case nilai 2 : Statement; Break; Default : Statement; Break; } 2.2.7.2 Teori Perulangan Perulangan adalah proses yang digunakan dalam pemrograman untuk mengulang sekumpulan pernyataan yang sama dan dilakukan berulang-ulang hingga kondisi tertentu tercapai. Statement looping terdiri atas dua bagian : 1. Kondisi perulangan yaitu ekspresi Boolean yang harus dipenuhi untuk melaksanakan perulangan. 2. Bagian kedua blok statement yang akan diulang. Terdapat tiga pernyataan untuk looping yaitu : a. While statement Perulangan yang berguna memproses pernyataan berkali-kali, dimana pengecekan dilakukan terlebih dahulu sebelum dilakukan perulangan. Bentuk umum : While (ekspresi) { Statement 1; Statement 2; Iterasi; }
  • 13. 17 b. Do – While Statement Do – while adalah perulangan yang mirip dengan while, yang berbeda hanya pada pengecekannya dimana do-while akan melakukan sekali perulangan baru dilakukan pengecekan. Bentuk umum ; inisialisasi; do { statement; iterasi; } while(kondisi); c. For Statement For statement adalah konsep perulangan dimana telah diketahui terlebih dahulu jumlah perulangannya. Bentuk umum : for(inisialisasi;kondisi;iterasi) { statement; } 2.2.7.3 Array Array adalah sejumlah nilai yang memiliki tipe yang sama Tiap-tiap array terletak pada posisi tertentu yang ditunjuj oleh indeks. Array memiliki 2 jenis, yaitu : 1. Fixed-Value Array Array yang memiliki nilai yang telah ditetapkan terlebih dahulu, bentuk umumnya : Tipe_data[] nama_array={elemen1,elemen2,elemen3,…}; 2. Variable-Length Array Pada array ini nilai array tidak ditentukan terlebih dahulu, tetapi telah diinputkan datanya oleh programmer. Tahap pembuatan array yang belum ditetapkan nilainya harus melalui tahap pendeklarasian, inisialisasi, dan assigning.
  • 14. 18 a. Pendeklarasian Array Tahap pendeklarasian array dikenal juga sebagai tahap pengenalan array kepada computer, seperti variable, tipe, nama dan ukuran. Contoh : stringnama [] ; Nama [] = new string [3] ‘ b. Inisialisasi Array Tahap untuk memasukkan nilai ke masing-masing elemen array. Contoh : nama_array[indeks] = nilai ; Jenis Array berdasarkan dimensi : a. Array berdimensi satu, adalah array yang didalamnya hanya ada sebuah indeks. b. Array berdimensi banyak atau multidimensional array adalah array yang memiliki lebih dari satu indeks. Jagged Array Adalah pengecualian array. Jika pada array dimensinya sejenis, maka pada jagged array memiliki dimensi yang berbeda-beda. Bentuk umum : int[][] swap = new int[2][]; swap[0] = new int[] {3,2,1}; swap[1] = new int[] {5,4,3}; 2.2.7.4 Object Oriented Programming (OOP) Paradigma pemrograman yang berorientasi kepada objek. Keseluruhan data dan fungsi di dalam paradigm dibungkus dalam kelas-kelas. Prinsip-prinsip yang terdapat pada OOP diantaranya : - Abstraksi , adalah proses penyeleksian hal-hal yang perlu dan tidak perlu dari suatu objek. Dengan tujuan memberikan kepada programmer sebuah bentuk objek yang benar-benar tepat dan efisien dalam menggambarkan apa yang terjadi di dunia nyata. - Enkapsulasi, berfungsi memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari objek dengan cara yang tidak semestinya,
  • 15. 19 karena hanya metode dalam objek tersebut yang dapat mengakses keadaanya. - Polimorfisme, adalah kemampuan untuk memperlakukan objek yang beragam dengan cara yang sama. Artinya, hanya objek yang mendapat izin terlebih dahulu yang dapat mengakses nya. - Inheritance adalah teknik yang menyatakan hubungan hierarki berdasarkan kelas masing-masing yang merupakan konsep dari pewarisan dimana suatu class diturunkan dari kelas lainnya.