• Tidak ada hasil yang ditemukan

Contoh program C++ Menghitung Tarif Wartel

N/A
N/A
Protected

Academic year: 2021

Membagikan "Contoh program C++ Menghitung Tarif Wartel"

Copied!
15
0
0

Teks penuh

(1)

BAB 1 PENDAHULUAN

1.1 Alasan Pemilihan Judul

Alasan kami memilih judul untuk laporan akhir praktikum algorima dan pemrograman 1 ini adalah untuk memudahkan kita menghitung tarif pecakapan di wartel.

1.2 Latar Belakang Masalah

Belakangan ini wartel tidak lagi menjadi sebuah tempat untuk menelpon seseorang dalam 1 daerah (lokal) ataupun diluar daerah (interlokal). Karena pada saat ini hampir semua orang lebih suka menelpon lewat ponsel karena selain lebih praktis dan terhitung cukup murah juga. Tetapi kita tidak boleh melupakan peran wartel karena sebelum maraknya penggunaan ponsel, orang-orang berkomunikasi via telpon melalui wartel (bagi yang tidak memiliki telpon rumah).

Setiap penelpon pasti memiliki tarif yang berbeda-beda, semua itu tergantung pada lamanya waktu bicara dan tujuan daerah penelpon tersebut lokal atau interlokal. Semua perhitungan itu dapat dibuat dalam suatu program. Hal inilah yang membuat kelompok kami memutuskan untuk mencoba membuat program tarif wartel tersebut .

1.3 Dasar Teori

Bahasa C++ merupakan salah satu bahasa pemrograman dalam komputer. Bahas ini diciptakan oleh Bjarne Stroustrup di AT&T Bell Laboratories awal tahun 1980-an berdasarkan C ANSI (American National Standard Institue). Bahasa C++ merupakan pengembangan dari bahasa C yang terkenal memiliki kemampuan dalam eksekusi yang berkecepatan tinggi dan efisien dalam penggunaan memori. Dalam bahasa C++ terdapat :

1. Type data dan operator

Type data adalah suatu jenis nilai yang dapat dinyatakan dalam bentuk konstanta atau variabel yang dapat digunakan untuk

(2)

mendefinisikan objek data yang akan dimanipulasi dalam sebuah program. Ada 4 tipe data yaitu:

a. Type data integer(bilangan bulat) b. Type data float(pecahan)

c. Type data char(teks) d. Type data pointer e. Type data Boolean

Sedangkan operator adalah symbol/kata yang dapat digunakan dalam program untuk melakukan sesuatu operasi/manipulasi. Operator yang biasa dipakai dalam bahasa C++ adalah :

a. Operator pengerjaan b. Operator aritmatika

c. Operator peningkatan dan penurunan d. Operator hubungan

e. Operator logika

2. Perintah Output dan Input

Agar suatu program dapat menerima data dan menampilkan hasilnya maka diperlukan perintah output dan input. Perintah output adalah suatu operasi yang biasa digunakan untuk data atau nilai keluaran pada layar. Biasanya memakai fungsi printf( ) dan cout<<. Sedangkan perintah input adalah operasi yang berguna untuk memasukkan data yang selanjutnya didefinisikan sebagai data variabel. Biasanya memakai perintah scanf( ) dan cin > >

3. Fungsi

Ada dua jenis fungsi, yaitu:

a. Fungsi Tanpa Nilai Balik (procedure) b. Fungsi Dengan Nilai Balik (function)

(3)

4. Percabangan

Dalam sebuah program sering kali ditemukan sebuah kondisi- Kondisi yang mana tiap kondisi memerlukan penanganan terpisah dan Berbeda. Operator yang sering dan umum digunakan yaitu if dan switch. Ada 3 jenis tipe if yaitu:

1. if tunggal

2. if-else

3. if bersarang (if nested)

5. Looping ( Perulangan )

Perintah ini digunakan untuk melakukan suatu proses secara berulang-ulang,jika suatu kondisi dipenuhi atau sebaliknya. Biasanya digunakan untuk beberapa hal misalnya mengulang proses perhitungan data,mengulang proses pemasukan data,dan mengulang proses penampilan hasil pengolahan data. Proses looping dapat dibuat menggunakan perintah FOR bila anda sudah tahu beberapa kali anda akan mengulang satu atau beberapa pernyataan,perintah DO...WHILE yang setiap loop dikerjakan maka kondisi akan dicek,perintah WHILE yang prinsipnya sama dengan perintah DO..WHILE hanya pengujian kondisinya terletak pada awal loop,perintah BREAK digunakan untuk keluar dari suatu loop for,do...while,while ataupun switch,perintah CONTINUE digunakan untuk mengarahkan jalannya program ke iterasi (proses) berikutnya pada loop yang sama.

6. Struktur

Struktur adalah sekumpulan variabel yang masing-masing memiliki tipe data yang bisa berbeda (heterogen) dan dikelompokkan hingga menjadi sebuah tipe data bentukan baru.

(4)

BAB II Piliha n Mulai Loading Cetak Menu Selesai Nomor Tujuan - Jam Awal - Jam Akhir Pilih an a. Lokal b.Interlo kal Hitung Biaya Simpan Struct Cetak Data

(5)

BAB III

IMPLEMENTASI APLIKASI PROGRAM

#include<iostream.h> #include<string.h>

using namespace std; //struct struct Twartel { char nomorTujuan[12]; char chrPilihan; int x,y,z,k,l,m,jumlah,bea; };

const int maxWrl = 15; int counter = 0;

int jum1,jum2;

Twartel wrl[maxWrl];

//function & procedure

void loading () //fungsi 1 { for (int o = 0;o<=100;o+=1) {

cout<<endl<<" loading ... "<<o<<"%"; system("cls");

} }

void Tarif(int n) //fungsi 2

{

if (wrl[n].chrPilihan == 'a')

{

wrl[n].bea=wrl[n].jumlah*5;

cout << "Waktu bicara anda adalah = ” <<wrl[n].jumlah<<endl;

(6)

cout << "Biaya penggunaan telepon adalah = Rp " << wrl[n].bea<<",00"<<endl; } else if(wrl[n].chrPilihan == 'b') { wrl[n].bea=wrl[n].jumlah*30;

cout << "Waktu bicara anda adalah = " << wrl[n].jumlah <<endl;

cout << "Biaya penggunaan telepon adalah = Rp " << wrl[n].bea<<",00"<<endl;

} else {

cout << "masukkan anda salah" << endl; cout << "ulangi lagi" << endl;

}

}

void cetakMenu() //fungsi 3 {

cout<<endl<<"===========MeNu============\n"<<endl; cout<<" 1. Isi data telpon "<<endl;

cout<<" 2. Cetak data "<<endl; cout<<" 3. Keluar"<<endl; cout<<""<<endl;

cout<<"Masukan pilihan: "; }

void isiDataWrl (int n) //fungsi 4 {

int a,b,c,d,e,f,k,l,m,x,y,z; //jam awal

cout<< "Masukkan nomor tujuan : "; cin>>(wrl[n].nomorTujuan);

cout<<"jam awal : "; cin>>wrl[n].x;

(7)

cout<< " Menit : "; cin>>wrl[n].y; cout<< " Detik : "; cin>>wrl[n].z; a=wrl[n].x; b=wrl[n].y; c=wrl[n].z; //do //{ jum1= a*3600 + b *60 + c;

//}while (a>23 && b>59 && c>59);

//cout << "masukkan salah"<<endl;

//jam akhir

cout<<endl<< "jam akhir : "; cin>>wrl[n].k; cout<< "Menit : "; cin>>wrl[n].l; cout<< "Detik : "; cin>>wrl[n].m; d=wrl[n].k; e=wrl[n].l; f=wrl[n].m; if(jum2<jum1) { cout<<endl<<"Jam Salah"<<endl; }else {

cout<<endl<< "Pilihan : " <<endl; cout << "a. Lokal" << endl;

cout << "b. Interlokal" << endl;

cout << "pilihan anda (huruf kecil) : "; cin>>wrl[n].chrPilihan;

wrl[n].jumlah=jum2-jum1; Tarif(n);

(8)

//do //{

jum2= d*3600 + e *60 + f;

wrl[n].jumlah=jum2-jum1; Tarif(n);

//}while ((a>23) && (b>59) && (c>59)); //cout << "masukkan salah"<<endl; getchar();

}

void cetakDataTelpon() //fungsi 5 {

if (counter==0) {

cout<<endl<<"data masih kosong"<<endl; } else { for(int i=0;i<counter;i++) { cout<<endl<<"NO["<<i+1<<"]"<<"---"; cout<<endl<<"Masukkan nomor Tujuan :

"<<wrl[i].nomorTujuan<<endl; cout<<endl<<"Pilihan : "<<wrl[i].chrPilihan<<endl; cout<<endl<<"jam awal : "<<wrl[i].x<<":"<<wrl[i].y<<":"<<wrl[i].z<<endl; cout<<endl<<"jam akhir : "<<wrl[i].k<<":"<<wrl[i].l<<":"<<wrl[i].m<<endl; cout<<endl<<"jumlah: "<<wrl[i].jumlah<<endl; }getchar(); }

(9)

// main program

int main(void) //fungsi 6 ( fungsi Utama) { //local variabel int pilihan; loading(); // main looping cout<< "I=================================I"<<endl; cout<< "I SeLaMaT daTanG di WaRteL TINITA I"<<endl; cout<< "I I"<<endl; cout<< "I=================================I"<<endl<<endl<<endl; do { cetakMenu(); cin>>pilihan; getchar(); switch(pilihan) {

case 1 : cout<<endl<< "---Isi data telpon--"<<endl; isiDataWrl(counter);

counter++; break;

case 2 : cout<<endl<< "---Cetak data---"<<endl; cetakDataTelpon();

break;

case 3 : cout<<endl<< "---Keluar dari program---"<<endl;

cout<< "I=================================I"<<endl; cout<< "I TERIMA KASIH I"<<endl; cout<< "I I"<<endl; cout<<"I=================================I"<<endl<<endl<<endl;

(10)

cout<<endl<< " Created BY: "<<endl;

cout<< "1. Tamara Dhagistami/08523016"<<endl; cout<< "2. Ratya Ayu Ningtyas/08523019"<<endl; cout<< "3. Yunita Dwi Ertanty/08523034"<<endl; break;

defult : cout<<endl<< "pilihan tidak ada"<<endl; }

}while (pilihan !=3); //end main loop return 0;

(11)

BAB IV

SARAN DAN KRITIK

Saran :

 Untuk kakak-kakak asisten Lab cara mengajarnya hendaknya lebih diperbaiki lagi agar mudah diterima untuk teman-teman yang memang kurang mengerti tentang pemrograman.

Kritik :

 Buku panduan praktikum kurang detail dalam menjelaskan fungsi-fungsi dari algoritma yang ada.

(12)

DAFTAR PUSTAKA

2008/2009. Modul praktikum Algoritma dan Pemrograman 1. Jogjakarta : Laboraturium Algoritma dan Pemrograman 1

Web reference: www.hatma.info

(13)
(14)

CURICULUM VITAE

Nama : Tamara Dhagistami

NIM : 08523016

Alamat Yogya : Jl. Lodadi Agung, Sleman Jogjakarta Alamat Asal : Jl. Raden Saleh 19A Baleharjo Pacitan

Jawa Timur

No HP : 081946594472

Sekolah : TK Bustanul Atfal Pacitan (1994-1996) SD Baleharjo 2 Pacitan (1996-2002) SMPN 1 Pacitan (2002-2005) MAN Pacitan (2005-2008)

Hobi : Bernyani, Menari, Mendengarkan Musik Email : ronger_cat@yahoo.com

Nama : Ratya Ayu Ningtyas

NIM : 08523019

Alamat Yogya : Jl. Lodadi agung, Sleman Jogjakarta Alamat Asal : Jl. Kalimantan 9 Cilacap

No HP : 085726095523

Sekolah : TK Srigunting Cilacap (1994-1996) SD YKPP 01 Cilacap(1996-2002) SMP Al- Irsyad Cilacap (2002-2005) SMA Al- Irsyad Cilacap (2005-2008) Hobi : Main Game komputer, baca komik, ngenet Email : ranz_moedz@yahoo.com

(15)

Nama : Yunita Dwi Ertanty

NIM : 08523034

Alamat Yogya : Jl. Kimpulan 3 no 2A, Sleman Jogjakarta Alamat Asal : Jl. Tirtaria no 8, Way Kandis Bandar Lampung

No HP : 085269898977

Sekolah : TK Al-Azhar Bandar Lampung (1994-1996) SD Al-Azhar Bandar Lampung(1996-2002) SMPN 29 Bandar Lampung(2002-2005) SMAN 12 Bandar Lampung (2005-2008)

Hobi : Baca novel komedi, nonton film, makan, tidur, ngemil, dll Email : nit_petrix@yahoo.com

Referensi

Dokumen terkait