LANDASAN TEORI
2.1. Algoritma
Algoritma adalah : Cara yang dapat ditempuh oleh komputer dalam
mencapai suatu tujuan, terdiri atas langkah-langkah yang terdefinisi dengan baik,
menerima input, melakukan proses, dan menghasilkan output. Meskipun tidak
selalu, biasanya sebuah algoritma memiliki sifat bisa dihitung (computable) atau
bisa dihitung.
tidak ada arus listrik (biasanya dilambangkan dengan 0). Dengan kata lain, kita
harus menggunakan sandi 0 dan 1 untuk melakukan pemrogaman komputer.
Bahasa pemrogaman yang menggunakan sandi 0 dan 1 ini disebut bahasa mesin.
Karena bahasa mesin sangat susah, maka muncul ide untuk melambangkan
untaian sandi 0 dan 1 dengan singkatan kata yang lebih mudah difahami manusia
biasa disebut dengan mnemonic code. Bahasa pemrogaman yang menggunakan
singkatan kata ini disebut bahasa assembly. Program algoritma harus komplit,
nyata, dan jelas. Meskipun tugas algoritma tidak menghasilkan solusi, tetapi
proses harus berakhir hal ini disebut dengan semi algorithm (prosedur akan
berjalan terus atau biasa disebut dengan perulangan). Intinya kita tidak boleh
menambah masalah, akan tetapi kita harus mampu menyelesaikan masalah
untuk mendapat hasil yang tepat.
Bilangan adalah suatu konsep matematika yang digunakan untuk
pencacahan dan pengukuran. Simbol ataupun lambang yang digunakan untuk
mewakili suatu bilangan disebut sebagai angka atau lambang bilangan. Dalam
matematika, konsep bilangan selama bertahun-tahun lamanya telah diperluas
untuk meliputi bilangan nol, bilangan negatif, bilangan rasional, bilangan
irasional, dan bilangan kompleks.
Prosedur-prosedur tertentu yang mengambil bilangan sebagai masukan
dan menghasil bilangan lainnya sebagai keluran, disebut sebagai operasi
numeris. Operasi uner mengambil satu masukan bilangan dan menghasilkan satu
keluaran bilangan. Operasi yang lebih umumnya ditemukan adalah operasi biner,
yang mengambil dua bilangan sebagai masukan dan menghasilkan satu bilangan
sebagai keluaran. Contoh operasi biner adalah penjumlahan, pengurangan,
perkalian, pembagian, dan perpangkatan. Bidang matematika yang mengkaji
operasi numeris disebut sebagai aritmetika.
Pemrograman merupakan proses mengimplementasikan urutan langkah
untuk menyelesaikan suatu masalah dengan menggunakan suatu bahasa
yang
akan
diolah
oleh
komputer,
bagaimana
data
ini
akan
disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil
dalam berbagai situasi.
2.2. Bahasa Pemrograman C++.
Bahasa Pemrograman merupakan notasi yang dipergunakan untuk
mendeskripsikan proses komputasi dalam format yang dapat dibaca oleh
komputer dan manusia. Proses komputasi umumnya didefinisikan secara formal
menggunakan konsep matematika dari Mesin Turing. Pada dasarnya bahasa
Pemrograman dirancang untuk memfasilitasi komunikasi antara manusia dengan
komputer.
Sebuah bahasa pemrograman disebut Turing Complete jika dapat
dipergunakan untuk mendeskripsikan semua komputasi yang dapat dilakukan
Mesin Turing, yaitu memiliki variable integer dan operator aritmatik, pernyataan
penugasan, pernyataan sekuensial, pernyataan seleksi, dan pernyataan iterasi
Berikut ini adalah daftar bahasa pemrograman komputer:
1.
Assembly
2.
BASIC:
o
ASP
BASIC
COMAL
Visual Basic
VBScript
3.
Batch (MS-DOS)
4.
COBOL
5.
6.
C++
C#
Visual C++
C:
a. Kelompok pertama
C++ mempunyai 32 buah kata yang dipesan (reserved words). Kata kunci
kelompok pertama merupakan turunan dari bahasa C, di antaranya:
auto const
for
long
short struct
unsigned
case default
char do
extern if
while
b. Kelompok kedua
Kata yang dipesan kelompok kedua berjumlah 30. Kata-kata ini adalah baru dan
hanya ada di bahasa C++.
asm
bool
explicit
new
static_cast
typeid
catch
false
operator
template
typename
class
friend
private
this
using
const_cast inline
public
throw
virtual
delete
protected
true
wchar_t
mutable
Kata-kata yang dipesan tersebut di atas tidak boleh dipakai sebagai nama
variable, class, enum, macro, dan struct.
2.2.1. Tipe data dasar
Nama
char
short int
(short)
Keterangan
Ukuran
1 byte
Jangkauan
int
Bilangan bulat
4 byte
unsigned: 0 to
4294967295
signed: -2147483648 to
2147483647
long int
(long)
bool
i byte
float
unsigned: 0 to
4294967295
true or false
double
long double
wchar_t
2.2.2. Variabel
Aturan penulisan pengenal untuk sebuah variabel, konstanta atau fungsi yang di
definisikan oleh pemrogram adalah sebagai berikut :
Pengenal harus di awali dengan huruf (A..Z, atau a..z ) atau karakter garis
bawah (_)
Selanjutnya dapat berupa huruf, digit ( 0..9 ) atau karakter garis bawah
atau tanda dollar ($).
Pengenal tidak boleh menggunakan nama yang tergolong sebagai katakata cadangan ( reserved words ) seperti int, if , while dan sebagainya.
Contoh:
int var_bulat1;
float var_pecahan1, var_pecahan2;
2.2.7. Konstanta.
Konstanta menyatakan nilai yang tetap. Berbeda dengan variabel, suatu
konstanta tidak di deklarasikan. Namun seperti halnya variabel, konstanta juga
memiliki tipe. Penulisan konstanta mempunyai aturan tersendiri, sesuai dengan
tipe masing-masing.
2.2.8. Operator
Operator merupakan simbol atau karakter yang bisa dilibatkan dalam program
untuk melakukan sesuatu operasi atau manipulasi, seperti menjumlahkan dua
buah nilai, memberikan nilai ke suatu variabel, membandingkan kesamaan dua
buah nilai.
Simbol + merupakan operator untuk melakukan operasi penjumlahan dari kedua
operandnya (yaitu a dan b). Karena operator penjumlahan melibatkan dua
operator ini tergolong operator binary. Simbol - (minus) juga merupakan
operator. Simbol ini termasuk sebagai operator unary, yaitu operator yang hanya
memiliki sebuah operand ( yaitu c pada contoh ini ).
2.2.9. Operator Aritmatika.
Operator untuk operasi aritmatika yang tergolong sebagai operator binary
adalah :
* artinya perkalian
/ artinya pembagian
% artinya sisa pembagian
+ artinya penjumlahan
perumusan
algoritma
yang
dibahas
adalah
beberapa
bentuk
algoritma untuk
berorde 2.
Lanjutkan ke langkah-5
Cek harga diskriminan
IF D = 0
Jika ya, hitung akar-akar persamaan
X1X2 = ( -b ) / (2 x a)
5. Cetak hasil X1 dan X2 atau X12 atau pesan (akar-akar
imajiner)
6. Selesai
start
a b c D x1 x2
Input a b c
D=b2+4ac
D=C?
D>C ?
X1=b/2a
X1=(-b + sqrt(D)) /
2a
X2 (b
t(D)) /
X2=X1
X1=-b2/a + sqrt(D)) / 2a
X2 = -b2/a sqrt(D)) / 2a
Print x1i
x2i
Print x1
x2
end
Gambar1. Flowchart penentuan nilai diskriminan
Determinan adalah nilai yang berada dalam akar (sqrt) pada rumus abc. Dalam
hal ini diskriminan menentukan jumlah dan sifat dari akar-akar persamaan
kuadrat. Terdapat tiga kasus yang mungkin terjadi :
1.
J
ika diskriminan bersifat nol, terdapat eksak satu akar, dan akar yang
dimaksud merupakan bilangan riil. Hal ini kadang disebut sebagai akar
ganda, dimana nilainya adalah :
X1 = X2 = -b/2a
2.
J
ika diskriminan bersifat positif, akan terdapat dua akar berbeda yang
kedua-duanya berupa bilangan riil.
X1 = (-b sqrt(D)) / 2a
X2 = (-b sqrt(D)) / 2a