Anda di halaman 1dari 15

Makalah

Rangkuman algoritma pemograman 02

Dosen pengampuh:

SURYADI.,ST,M.Cs

Nama :

Nim :

Jurusan teknologi informasi

Universitas teuku umar


Kata pengantar

Puji syukur atas kehadiran Tuhan Yang Maha Esa atas rahmat dan petunjuk-Nya

sehingga saya dapat menulis makalah dengan judul” Rangkuman Algoritma


Pemograman 02” yang mana makalah ini disusun bertujuan untuk memenuhi tugas
mata kuliah Algoritma Pemograman 02, dalam menempuh pendidikan di Universitas
Teuku Umar.

Saya menyadari bahwa masih banyak kekurangan dan keterbatasan dalam penyajian
data dalam makalah ini. Oleh karena itu, saya mengharapkan kritik dan saran yang
membangun dari semua pembaca demi kesempurnaan makalah ini. Semoga makalah ini
berguna dan dapat menambah pengetahuan pembaca.

emikian makalah ini saya susun, apabila ada kata-kata yang kurang berkenan dan banyak
terdapat kekurangan, penulis mohon maaf yang sebesar-besarnya.

Meulaboh ,14 april 2022

Rafik
Kata pengantar

Daftar isi

Bab 1

1.1 Latar belakang


1.2 Masalah
1.3 Tujuan

Bab 2

2.1 Pembahasan

2.2 Pegertian Algoritma


Bab 1 latar belakang

Algoritma dan Pemrograman adalah jantung dari pemahaman

mengenai pemrograman dan merupakan fondasi awal bagi ilmu

komputer dan informatika (Rossa, 2010, hlm. v). Banyak cabang ilmu

komputer yang diacu dalam terminologi algoritma (Budiyanto, 2003,

hlm. 2). Algoritma pemrograman ini, dipelajari pada mata pelajaran

pemrograman dasar kelas X. Hasil studi pendahuluan di salah satu kelas

XI SMK di Cimahi menunjukkan bahwa sebanyak 36.67% siswa

menganggap bahwa materi pada mata pelajaran Pemrograman Dasar sulit

untuk dipahami dan 23.33% menyatakan materi yang sulit dipahami

adalah materi algoritma pemrograman. Padahal algoritma adalah dasar

dari pemrograman, yang harus dipelajari dan dipahami sejak awal.

Program yang baik tidak akan tercipta tanpa adanya algoritma yang baik.

Jadi, untuk bisa menciptakan sebuah program yang baik, dibutuhkan

kemampuan untuk membuat algoritma yang baik pula. Untuk membuat

algoritma yang baik, dibutuhkan pemahaman yang kuat mengenai

algoritma pemrograman.

 Rumusan masalah

Berdasarkan latar belakang yang telah diuraikan di atas, maka rumusan

masalah dalam penelitian ini adalah:

1. Bagaimana pengertian algoritma ?

2. pengertian Array

3.pengertian fungsion

4.pengertian struct

5.pengertian rekrusif
2.2 tujuan masalah

1. Mengetahui pengertian dari algoitma


2. Mempelajari array dan kodingan nya
3. Mempelajari dan memahami fungsion
4. Mempelajari dan memahami struck
5. Mempelajari dan memahami rekrusif
Bab 2

2.1 Pembahasan

2.2 pengertian algoritma

Algoritma adalah Urutan langkah-langkah untuk memecahkan masalah yang disusun


secara sistematis dan logis. Algoritma dibutuhkan untuk memerintah komputer
mengambil langkah-langkah tertentu dalam menyelesaikan masalah.

Contoh sederhana algoritma:

membuat kopi dimulai dengan membuka bungkus kopi, masukan kopi kedalam cangkir,
menambahkan gula, memasak air hingga mendidih,
memasukan air mendidih kedalam cangkir, mengaduk
hingga tercampur, dan selesai.

psidoucode flowchart

Contoh algoritma psidocoude:

Deskripsi

variabel panjang, lebar, luar :


integer;

Implementasi

panjang ← 100;

lebar ← 64;

luas ← panjang*lebar;
2.3 pengertian Array

Array atau
biasa disebut larik adalah koleksi data dimana setiap elemen memakai nama yang sama
dan bertipe sama dan setiap elemen diakses dengan membedakan indeks arraynya.
Setiap rinci data disebut dengan elemen array. Setiap array dapat dioperasikan
menggunakan pemilih elemen yang disebut indeks. Karena itu indeks harus bertipe yang
mempunyai keterurutan (ada suksesor dan ada predesor) misal Integre, Boolean,char.

Array di bagi menjadi tiga bagian yaitu,array 1 dimensi,2dimensi,dan array dimensi


banyak.

 Array 1 dimensi

Bentuknya psidoucode

nama_var : array [rangeindeks] of tipe


Bentuk c++

tipe nama_var[ukuran];

Contoh array 1 dimensi

#include<iostream>

using namespace std;

int main()

//deklarasi

int nilai[5];

int i;

//inisialisasi

nilai[0]=5;

nilai[1]=10;

nilai[2]=15;

nilai[3]=20;
nilai[4]=25;

//perulangan

for (i=0; i<=5; i++)<<endl;

//output

cout<<"NILAI KE-"<<i<<"adalah="<<nilai[i]

 Array 2 dimensi

Deklarasi pseudocode

nama_var : array [rangeindeks1,rangeindeiks2] of


tipe

Deklarasi c++

tipe nama_var[ukuran1][ukuran2];

Contoh array 2 dimensi

#include<iostream>

using namespace std;

int main()

int x[2][5]={6,6,4,3,5,6,7,8,6,5,};

int i,j;

for(i=0; i<2; i++)

for(j=0; j<5; j++)

cout<<x[i][j]<<" ";
cout<<endl;

 Array dimensi banyak

Bentuk dalam c++

tipe nama_var[ukuran1[ukuran2]. . .[ukuranN];

Contoh:

#include <iostream>

using namespace std;

int main()

int arr[2][2][2];

arr[0][0][0] = 10;

arr[0][0][1] = 20;

arr[0][1][0] = 30;

arr[0][1][1] = 40;

arr[1][0][0] = 11;

arr[1][0][1] = 22;

arr[1][1][0] = 33;

arr[1][1][1] = 44;

cout << "Isi variabel arr:" << endl;

cout << "=================" << endl;

cout << endl;

cout << "Element di [0][0][0]: "<< arr[0][0][0] << endl;

cout << "Element di [0][0][1]: "<< arr[0][0][1] << endl;


cout << "Element di [0][1][0]: "<< arr[0][1][0] << endl;

cout << "Element di [0][1][1]: "<< arr[0][1][1] << endl;

cout << "Element di [1][0][0]: "<< arr[1][0][0] << endl;

cout << "Element di [1][0][1]: "<< arr[1][0][1] << endl;

cout << "Element di [1][1][0]: "<< arr[1][1][0] << endl;

cout << "Element di [1][1][1]: "<< arr[1][1][1] << endl;

return 0;

2.3 fungsi
Program merupakan kumpulan dari fungsi-fungsi baik yang didefinisikan langsung
maupun yang disimpan dalam file header.
Dalam program C++ selalu terdapat fungsi utama yang disebut fungsi main ( )
Kompiler akan menjalankan perintah yang terdapat dalam fungsi main ( ) ini.
Ilustrasi keberadaan fungsi dalam sebuah program.

 Fungsi tanpa nilai umpan balik


Suatu proses yang tidak mengembalikan nilai, untuk itu fungsi yang dibuat
bertipe void yang berarti tidak mempunyai nilai balik (RETURN VALUE)Adapun
bentuk umumnya adalah:

void nama_fungsi (parameter1, parameter2, …..) { statement_ yang_akan_dilakukan;

……….

Bentuk umum dalam pemanggilan

nama_fungsi(nilai_parameter1, nilai_parameter2, ….);

Contoh:
 Fungsi dengan nilai umpan balik

Fungsi ini melakukan proses yang dapat mengembalikan sebuah nilai.


Definisikan tipe data dari nilai yang akan dikembalikan terlebih dulu.
Bentuk umum fungsi ini:

Bentuk umum

Tipe_data nama_fungsi (parameter1, parameter2, …)


{ statement_yang_akan_dilakukan

……

Return nilai_yang_akan_dikembalikan;

Contoh:

#include <iostream>
using namespace std;

// parameter x sebagai masukan


// parameter hasil sebagai keluaran

void Tambahsatu (int x, int *hasil) {


*hasil=x-1;
}

int main (){


int bilangan, HASIL;
cout<<"Masukkan sebuah bilangan bulat : ";
cin>>bilangan;
cout<<"Nilai akhir : "<<Tambah satu(Bilangan,&HASIL);

return 0;
}

 Fungsi bertipe keluaran

Parameter ini dipergunakan untuk menampung nilai yang dihasilkan dariproses


didalam fungsi Digunakan didalam fungsi sebagai nilai keluaran sebuah
fungsiDilewatkan berdasarkan alamat atau referensinya

Contoh:

#include<iostream>

using namespace std;

int tambah(int a,int b,int c)

{
c=a+b;

return c;

int main ()

int nilai1,nilai2,nilai3;

cout<<"Input Nilai 1 :";

cin>>nilai1;

cout<<"Input Nilai 2 :";

cin>>nilai2;

cout<<"Hasil
Penjumlahannya :"<<tambah(ni
lai1,nilai2nilai3)

2.5 Struct

Data Structures merupakan kumpulan dari data element yang digabung


menjadi satu bagian dengan satu nama.Tiap elemen dikenal sebagai anggota
strukturTiap anggota unakan sebagai representasi dari struktur berkas data digital.

Contoh:

#include<iostream>

using namespace std;

struct siswa

char nim [19];

string nama;

char gender [11];


Int main()

siswa data_siswa;

cout<<"Masukan NIM anda:";

cin>>data_siswa.nim;

cout<<"Masukan nama anda:";

cin>>data_siswa.nama;

cout<<"Masukan gender anda:";

cin>>data_siswa.gender;

cout<<"Masukan alamat anda:";

cin>>data_siswa.alamat;

cout<<"nim saya adalah:"<<data_siswa.nim<<endl;

cout<<"nama saya adalah:"<<data_siswa.nama<<endl;

cout<<"gender saya adalah:"<<data_siswa.gender<<endl;

cout<<"alamat saya adalah:"<<data_siswa.alamat<<end


}

2.6 Rekrusif

Rekursif berarti bahwa suatu proses bisa memanggil dirinya sendiri. Rekursif adalah
kemampuan suatu rutin untuk memanggil dirinya sendiri. Dalam Rekursif sebenarnya
terkandung pengertian prosedur dan fungsi. Perbedaannya adalah bahwa rekursif bisa
memanggil ke dirinya sendiri, tetapi prosedur dan fungsi harus dipanggil lewat
pemanggil prosedur dan fungsi. Rekursif merupakan teknik pemrograman yang penting
dan beberapa bahasa pemrograman mendukung keberadaan proses rekursif ini. Dalam
prosedur dan fungsi, pemanggilan ke dirinya sendiri bisa berarti proses berulang yang
tidak bisa diketahui kapan akan berakhir.

 Fungsi rekrusif menghitung nilai factorial

Adalah hasil perkalian menaik dan ditulis dengan tanda seru ” ! “. Sebagai contoh, 4
faktorial ditulis dengan 4!, dan nilainya adalah 1 * 2 * 3 * 4 = 24, atau 7 faktorial ditulis
dengan 7! = 1 * 2 * 3 * 4 * 5 * 6 * 7 = 5040.

#include<iostream>

using namespace std;

int hitungfactorial(int input){

if(input>1)

return input = hitungfactorial(input - 1);

else

return 1;

int main()

{ cout <<"## PROGRAM C++ HITUNG FAKTORIAL ##"<<endl;

cout<<"=================================##"<<endl;

cout<<endl;

int angka;

cout <<"input angka:";

cin>>angka;

cout << angka <<"! ="<<hitungfactorial(angka);

cout<<endl;

return 0;

 Fungsi rekursif Fibonacci


Bilangan fibonacci adalah bilangan yang melakukan penambahan terhadap dirinya
sendiri dari nilai penjumlahan dari bilangan pada dirinya

Anda mungkin juga menyukai