Algoritma Adalah:
Urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis, kata Logis merupakan kata kunci dalam Algoritma dan langkah-langkah dalam Algoritma harus logis dan dapat ditentukan bernilai True or False.

Contoh dari Algoritma:
1. Tulis surat pada secarik kertas surat.
2. Ambil sampul surat.
3. Masukkan surat ke dalam sampul.
4. Tutup sampul surat menggunakan perekat.
5. Jika kita ingat alamat teman tersebut, maka tulis alamat pada sampul surat.
6. Jika tidak ingat, lihat buku alamat, kemudian tulis alamat pada sampul surat.
7. Tempel perangko pada surat.
8. Bawa surat ke kantor pos untuk diposkan.

Tersusun dari :
blueprint dari program.
disusun sebelum membuat program.
instruksi atau pemanggilan aksi yang telah didefinisikan.

diekpresikan dalam bahasa manusia:
    - FlowChart (diagram alir)
    - PseudoCode


Mempuyai Unsur :
Komponen teks algoritma dalam pemrograman procedura:
Instruksi dasar seperti input/output, assignment
Sequence (runtutan)
Analisa kasus
Perulangan
Setiap langkah algoritma dibaca dari “atas” ke “bawah”. Urutan deskripsi penulisan
menentuan urutan langkah pelaksanaan perintah.

Pemprograman adalah:
Teknik komunikasi standar untuk mengekspresikan instruksi kepada komputer punya tata tulis dan aturan tertentu.
u/ memfasilitasi seorang programmer untuk secara spesifik apa yang akan dilakukan oleh komputer selanjutnya bagaimana data tersebut disimpan dan dikirimapa yang akan dilakukan apabila terjadi kondisi yang variatif.
Klasifikasi:
BP tingkat rendah (ASSEMBLY)
BP tingkat menengah (FORTRAN)
BP tingkat tinggi (JAVA, C++, .Net)

Alur dalam METODOLOGI pembuatan program:
1. Mendefiniskan masalah
2. Menganalisa dan membuat rumusan pemecahan masalah
3. Desain Algoritma dan Representasi
4. Pengkodean, Uji Coba dan pembuatan dokumentasi


 Mendefiniskan masalah
Programmer mendapatkan tugas berdasarkan sebuah permasalahan
Sebelum sebuah program dapat terdesain dengan baik untuk menyelesaikan beberapa permasalahan, masalah” yang terjadi harus dapat diketahui dan terdefinisi dengan baik untuk mendapatkan detail persyaratan input dan output.
Sebuah pendefinisan yang jelas adalah sebagian dari penyelesaian masalah
Pemrograman komputer mempersyaratkan untuk mendefiniskan program terlebih dahulu sebelum membuat suatu penyelesaian masalah.
contoh:
    ”Buatlah sebuah program yang akan menampilkan berapa kali sebuah nama tampil pada sebuah daftar” 


Menganalisa dan membuat rumusan pemecahan masalah
memecahkan masalah tersebut menjadi beberapa bagian kecil dan ringkas
Contoh masalah :
        Menampilkan jumlah kemunculan sebuah nama     pada daftar
Input Terhadap Program :
        Daftar Nama, Nama yang akan dicari
Output Dari Program :
        Jumlah kemunculan nama yang dicari 





Desain Algoritma dan Representasi
 Membuat rumusan algoritma untuk menyelesaikan masalah yang didefinisikan dalam langkah demi langkah
Langkah”:
Ekpresikan dengan bahasa manusia,
1. Tentukan daftar nama,
2. Tentukan nama yang akan dicari, anggaplah ini merupakan sebuah kata kunci,
3. Bandingkan kata kunci terhadap setiap nama yang terdapat pada daftar,
4. Jika kata kunci tersebut sama dengan nama yang terdapat pada daftar, tambahkan nilai 1 pada hasil perhitungan,
5. Jika seluruh nama telah dibandingkan, tampilkan hasil perhitungan (output),
Ekpresikan dengan bahasa mesin.

Langkah-langkahnya:
Ekspresi dengan bahasa Pseudocode
listNama = Daftar Nama
keyNama = Nama yang dicari
hitung = 0

Untuk setiap nama pada Daftar Nama lakukan :
Jika nama == keyNama
Hitung = Hitung + 1
Tampilkan Hitung





 Pengkodean, Uji Coba dan pembuatan dokumentasi
Algoritma selesaiproses pengkodean dengan algoritma sebagai pedoman (bahasa pemrograman  dipilih)
Kode program selesaimenguji program(tujuan)
Jika terjadi kesalahan logika atas program (bugs)kita perlu untuk mengkaji ulang rumusan / algoritma yang telah dibuat, kemudian memperbaiki implementasi kode program yang mungkin keliru (debugging).

 Flowchart

Bagan-bagan yang mempunyai arus yang menggambarkan langkah-langkah penyelesaian suatu masalah.
Merupakan cara penyajian dari suatu algoritma.
2 macam Flowchart :

      - System Flowchart urutan proses dalam system dengan menunjukkan alat media input, output serta jenis media penyimpanan dalam proses pengolahan data.

    -  Program Flowchart urutan instruksi yang digambarkan dengan symbol tertentu untuk memecahkan masalah dalam suatu program.

SYMBOL OF FLOW CHART
Flow Direction Symbols (Simbol penghubung alur)




Processing Symbols (Simbol proses).



Input-output Symbols (Simbol input- output)





Thanks full for My Teacher.