• Tidak ada hasil yang ditemukan

3 sks (2,1) 1 sks: Lab Session. Course material: History Algorithm. Programming (C/C++):codeblock,gnu compiler

N/A
N/A
Protected

Academic year: 2021

Membagikan "3 sks (2,1) 1 sks: Lab Session. Course material: History Algorithm. Programming (C/C++):codeblock,gnu compiler"

Copied!
14
0
0

Teks penuh

(1)

Algoritma & Programming Algoritma & Programming

3 sks (2,1) k

2 sks: Teori 1 sks: Lab Session

Course material:

History 

Algorithm

Flowchart atau aliran proses Flowchart atau aliran proses

(2)

Algorithm & ProgrammingAsal kata Algoritma berasal dari nama Abu  Ja’far Mohammed Ibnu Musa al‐

Ja far Mohammed Ibnu Musa al

Khowarizmi, ilmuan Persia yang menulis kitab al jabr w’al‐muqabala (rules of 

restoration and reduction) sekitar tahun 825

 History

restoration and reduction) sekitar tahun 825  M

squares equal roots (ax 2 = bx)

squares equal number (ax 2 = c)

t l b (b )

roots equal number (bx = c)

squares and roots equal number (ax 2 + bx = c)

squares and number equal roots (ax 2 + c = bx)

(3)

• Bahasa tingkat rendah (low level language)

 bahasa yang berorientasi ke mesin

  bahasa yang berorientasi ke mesin.

• Bahasa tingkat tinggi (high level language) 

 bahasa yang berorientasi ke manusia

 Programming Language

(seperti bahasa inggris)

Interpreter : menterjemahkan baris per  baris instruksi. Contoh bahasa Basic.

C il j hk l h

Compiler : menterjamahkan setelah

seluruh instruksi ditulis. Contoh bahasa

Pascal, C, C++, Perl, java, dll.

(4)

Algorithm & Programming Urutan langkah‐langkah untuk memecahkan masalah

1. Urutan logis pengambilan keputusan untuk memecahkan 

masalah

Urutan langkah logis, berarti algoritma harus mengikuti  suatu urutan tertentu, tidak boleh melompat‐lompat.

2 Alur pemikiran dalam menyelesaikan suatu pekerjaan yang

Definisi Algoritma

2. Alur pemikiran dalam menyelesaikan suatu pekerjaan yang  dituangkan secara tertulis. 

alur pikiran, yang artinya algoritma seseorang dapat berbeda  dari algoritma orang lain.

tertulis, yang artinya dapat berupa kalimat, gambar, atau tabel  tertentu. 

• Dalam bidang komputer, algoritma sangat diperlukan dalam  menyelesaikan berbagai masalah pemrograman, terutama  dalam komputasi numeris. Tanpa algoritma yang dirancang  baik maka proses pemrograman akan menjadi salah, rusak, baik maka proses pemrograman akan menjadi salah, rusak,  atau lambat dan tidak efisien. 

Algoritma di butuhkan untuk memerintah 

komputer mengambil langkah‐langkah tertentu untuk 

menyelesaikan masalah

(5)

Step for Solution

Kriteria Pemilihan Algoritma

Ada Output

Efektifitas dan Efisiensi

Jumlah Langkahnya Berhingga B khi

Berakhir

Terstruktur

Suatu Algoritma yg terbaik (The Best): “Suatu algoritma harus Suatu Algoritma yg terbaik (The Best): Suatu algoritma harus

menghasilkan output yg tepat guna (efektif) dlm waktu yg relatif singkat & penggunaan memori yg relatif sedikit (efesien) dgn langkah

yg berhingga & prosedurnya berakhir baik dlm keadaan diperoleh suatu solusi ataupun tdk ada solusinya.“

suatu solusi ataupun tdk ada solusinya.

(6)

Algorithm & Programming

Bagaimana merencanakan algoritma

Bagaimana menyatakan suatu algoritma (menulis

algoritma)

Bagaimana validitas suatu algoritma.

Sequence of Algorithm

Bagaimana Menganalisa suatu Algoritma.

Bagaimana Menguji Program dari suatu Algoritma

Ad.1. Bagaimana merencanakan algoritma

• Dengan Mendefinisikan masalah.

Contoh : Permasalahan menghitung luas lingkaran, dengan data yang diketahui adalah diameter lingkaran.

Rumus : ∏ . r2 dengan Phi = 3.14 atau 22/7.

Ad.2. Bagaimana menyatakan suatu algoritma (menulis algoritma)

• – Dengan psudocode

• Suatu cara penulisan algoritma agar ide dan logika dari algoritma dapat disampaikan/diekspresikan menggunakan gaya bahasa pemrograman tertentu.

Dengan flowchart / diagram alir

• Program Flowchart, yaitu bagan yang menggambar‐kan urutan logika dari suatu

prosedur pemecahan masalah.

(7)

Flowchart 1 dari 3

Flowchart adalah penggambaran secara grafik dari langkah‐langkah dan urut‐urutan

prosedur dari suatu program Flowchart prosedur dari suatu program. Flowchart  menolong analis dan programmer untuk memecahkan masalah kedalam segmen‐

segmen yang lebih kecil dan menolong dalam menganalisis alternatif‐alternatif lain dalam pengoperasian. Flowchart biasanya

pengoperasian. Flowchart biasanya

mempermudah penyelesaian suatu masalah khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut.

(8)

Algorithm & Programming

Flowchart 2 dari 3

Flowchart adalah penggambaran secara grafik dari langkah‐langkah dan urut‐urutan

prosedur dari suatu program Flowchart prosedur dari suatu program. Flowchart  menolong analis dan programmer untuk memecahkan masalah kedalam segmen‐

segmen yang lebih kecil dan menolong dalam menganalisis alternatif‐alternatif lain dalam pengoperasian. Flowchart biasanya

pengoperasian. Flowchart biasanya

mempermudah penyelesaian suatu masalah khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut.

 Masukkan nilai jmlBrg d h S t

 Masukkan nilai jmlBrg dan hrgSat

 REPEAT WHILE jmlBrg < 10 dan hrgSat

 harga = jmlBrg x hrgSat

 Cetak nilai harga

 REPEAT WHILE jmlBrg < 10

 Cetak pesan "Tidak boleh kurang dari 10"

 Masukkan nilai jmlBrg dan hrgSat END REPEAT

END REPEAT

(9)

Flowchart 3 dari 3

Flowchart adalah penggambaran secara grafik dari langkah‐langkah dan urut‐urutan

prosedur dari suatu program Flowchart prosedur dari suatu program. Flowchart  menolong analis dan programmer untuk memecahkan masalah kedalam segmen‐

segmen yang lebih kecil dan menolong dalam menganalisis alternatif‐alternatif lain dalam pengoperasian. Flowchart biasanya

pengoperasian. Flowchart biasanya

mempermudah penyelesaian suatu masalah khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut.

 Masukkan nilai jmlBrg d h S t

 Masukkan nilai jmlBrg dan hrgSat

 REPEAT WHILE jmlBrg < 10 dan hrgSat

 harga = jmlBrg x hrgSat

 Cetak nilai harga

 REPEAT WHILE jmlBrg < 10

 Cetak pesan "Tidak boleh kurang dari 10"

 Masukkan nilai jmlBrg dan hrgSat END REPEAT

END REPEAT

(10)

Algorithm & Programming

#include <stdio h>

Programming

Menuliskan

#include <stdio.h>

main() { int jmlhBrg;

float hargaSatuan;

algoritma dalam bahasa program.

float hargaSatuan;

printf("Masukan Jumlah Barang: ");

scanf("%d", &jmlhBrg);

printf("Harga Satuan: ");

p ( g );

scanf("%f", &hargaSatuan);

while (jmlhBrg < 10) {

printf("Jumlah barang tidak boleh kurang dari 10\n");

printf("Masukan Jumlah Barang: ");

scanf("%d", &jmlhBrg);

printf("Harga Satuan: ");

scanf("%f", &hargaSatuan);

}

printf ("Jumlah Barang: 10 < %d < 100", jmlhBrg);

return(0);

getchar();

}

(11)

#include <stdio.h>

main() {

#include <stdio.h>

main() {

int jmlhBrg;

float hargaSatuan;

int jmlhBrg;

float hargaSatuan;

Programming

Menuliskan

Tidak sesuai Algoritma !!!

jmlhBrg=0;

hargaSatuan=0;

while (jmlhBrg < 10) { jmlhBrg=0;

hargaSatuan=0;

while (jmlhBrg < 10) {

algoritma dalam

bahasa program

(j g ) {

printf("Jumlah barang tidak boleh kurang dari 10\n");

printf("Masukan Jumlah Barang: ");

scanf("%d", &jmlhBrg);

printf("Harga Satuan: ");

(j g ) {

printf("Jumlah barang tidak boleh kurang dari 10\n");

printf("Masukan Jumlah Barang: ");

scanf("%d", &jmlhBrg);

printf("Harga Satuan: ");

printf( Harga Satuan:  );

scanf("%f", &hargaSatuan);

}

printf ("Jumlah Barang: 10 < %d < 100" jmlhBrg);

printf( Harga Satuan:  );

scanf("%f", &hargaSatuan);

}

printf ("Jumlah Barang: 10 < %d < 100" jmlhBrg);

printf ( Jumlah Barang: 10 < %d < 100 , jmlhBrg);

return(0);

getchar();

}

printf ( Jumlah Barang: 10 < %d < 100 , jmlhBrg);

return(0);

getchar();

}}}

(12)

Algorithm & Programming

int main(){ int a;

char b;

int main() { int a,b;

a = 5;

int main() { int a;

char b;

int main() { int a,b;

a = 5;

return 0;} ;

int main() {

int a,b,c;

; b = a + 3;

a = a - 3;

return 0;

} int main()

; return 0;

} int main()

{

int a,b,c;

; b = a + 3;

a = a - 3;

return 0;

} int main()

Programming

Kenali,

int a,b,c;return 0;

} int main()

{

const float pi = 3 14;

int main() { int a;

scanf("%d",&a);

a = a * 2;

printf("The answer is %d",a);

return 0;

int a,b,c;

return 0;

} int main()

{

const float pi = 3 14;

int main() { int a;

scanf("%d",&a);

a = a * 2;

printf("The answer is %d",a);

return 0;

Kenali, 

Rasakan, dan

d k !!!

const float pi = 3.14;

return 0;

} int main()

{ int a;

}

%d or %i int

%c char

%f float

%lf d bl const float pi = 3.14;

return 0;

} int main()

{ int a;

}

%d or %i int

%c char

%f float

%lf d bl

Bedakan !!!

h !!!!

int a;char b;a = 3;

b = 'H';

return 0;

}

%lf double

%s string int a;

char b;

a = 3;

b = 'H';

return 0;

}

%lf double

%s string

This is Basic !!!!

*stdio.h, return(0), getchar()

*integer, float, char, string, const

Operator Operation + Addition

- Subtraction

* Multiplication / Division

Operator Operation + Addition

- Subtraction

* Multiplication / Division

*if, else, elseif, while, do while, for

*prinf, puts, scanf

*%d, %i, %f, %f.2, %f.5, %c, %s

/ Division

% Modulus(Remainder of integer division)

/ Division

% Modulus(Remainder of integer division)

(13)

Referensi

RTFM

Read the Fine Manual 

(14)

Algorithm & Programming

Array

* Mendeklarasian banyak variable  y yang sama.

int i1,i2,i3,i4,i5; 

int i[5];

int i[5]; 

Code:

Referensi

Dokumen terkait