• Tidak ada hasil yang ditemukan

Algoritma dan Struktur Data Contoh Progr

N/A
N/A
Protected

Academic year: 2018

Membagikan "Algoritma dan Struktur Data Contoh Progr"

Copied!
5
0
0

Teks penuh

(1)

ALGORITMA DAN STRUKTUR DATA

POKOK BAHASAN:

Program Fungsi dengan bahasa C++

A.

Definisi Masalah

Studi kasus pada praktikum pertama ini adalah membuat sebuah program dengan 2

pilihan menu yang menggunakan dua fungsi yaitu Passing by Value dan Passsing by

Reference, dimana terdapat menu untuk menukar nilai variable a menjadi b, dan nilai

variable b menjadi a dengan menggunakan dua fungsi yang berbeda.

Pada menu pertama perlu dibuat terlebih dahulu method yang berisi langkah-langkah

untuk menukar nilai a menjadi b dan nilai b menjadi a. Di menu pertama ini menggunakan

Passing by Reference, yaitu dimana variable yang baru hanya diberikan nilai variable yang

lama atau alamat memorynya saja, sehingga perubahan apapun yang terjadi baik pada

variable baru maupun variable lama akan berpengaruh atau berubah secara langsung pada

kedua variable tersebut. Setelah membuat method fungsi yang telah berisi langkah-langkah

menukar nilai variabel sehingga method fungsi tersebut dapat dipanggil oleh method main.

Lalu pada menu kedua dilakukan hal yang sama, dengan membuat sebuah method

untuk tiap permasalahan yang berbeda. Dimana pada menu kedua adalah sama dengan

menukar nilai variable, namun menggunakan fungsi lain yaitu Passing by Value, yang

berarti sebuah cara memasukkan nilai ke suatu variable atau fungsi dengan mengcopy

nilainya dari memory, karena dengan mengcopy nilai secara langsung dari memory dan

memasukkannya ke variable yang baru sehingga bila terjadi perubahan nilai variable yang

baru maka variable yang lama tidak akan terpengaruhi. Sehingga dengan begitu jika setiap

permasalahan sudah di blok dalam suatu method tersendiri, dapat dengan mudah dipanggil

(2)

B.

Rancangan Algoritma

Start

Masukkan nilai a dan b

Mencetak

nilai tukar

Menukar nilai a dan b menggunakan value dan reference

(3)

C.

Source Code

#include<stdio.h>

#include<iostream>

#include<conio.h>

using namespace std;

void tukar(string *a, string *b)

{

string temp;

temp = *a;

*a = *b;

*b = temp;

}

void ganti(string a, string b)

{

string temp;

temp = a;

(4)

int main ()

{

string a, b;

a= "jelek";

b= "manis";

cout<<"---Di tukar menggunakan passing by

reference---"<<endl;

cout<<"Aku "<<a<<" tapi "<<b<<endl;

getch();

cout<<"MENJADI\n";

tukar(&a,&b);

cout<<"Aku " <<a<<" tapi "<<b<<endl;

getch();

cout<<"---Di tukar menggunakan passing by value---"<<endl;

cout<<"Kamu "<<a<<" agak "<<b<<endl;

getch();

cout<<"MENJADI\n";

ganti(a,b);

getch();

(5)

Referensi

Dokumen terkait

Fungsi-fungsi stack yang digunakan adalah struct STACK yaitu untuk membuat jenis data abstrak stack, bool isfull() yaitu fungsi untuk mengetahui apakah stack dalam

 Di dalam class Hash dibuat sebuah fungsi pada kelompok public yaitu int Hash.. (string key): kemudian fungsi tersebut di deklarasikan kedalam

H ash tables juga merupakan sebuah struktur data yang terdiri atas sebuah tabel dan fungsi yang bertujuan untuk memetakan nilai kunci yang unik untuk setiap record

 Method Non Void adalah method yang dapat mengembalikan nilai atau cara kerjanya sama dengan fungsi jika dalam bahasa pemrograman terstruktur.

Buat program untuk menghapus atau mengubah sebuah data di dalam sekumpulan nilai, langkah pertama yang harus ditempuh adalah mencari data tersebut, lalu

Hash Table adalah sebuah struktur data yang terdiri atas sebuah tabel dan fungsi yang bertujuan untuk memetakan nilai kunci yang unik untuk setiap record

 Kedua kemungkinan pertama (1, 2) merupakan permasalahan yang sama tapi dengan input lebih kecil maka dapat dihitung secara rekursif dengan input baru?. Kemungkinan 1

 DLLNC adalah sebuah Linked List yang terdiri dari dua arah pointer, dengan node yang saling terhubung, namun kedua pointernya menunjuk ke NULL.  Setiap node pada