Sabtu, November 22, 2014

Latihan C++ #2

Bagi kawan yang ingin mempelajari dan memperdalam pemrograman C++, cara paling efektif dalam menguasai pemrograman C++ adalah dengan latihan dan praktek langsung. Berikut ini adalah contoh soal beserta jawaban pemrograman C++ yang bisa dijadikan latihan untuk menghadapi Ujian Algoritma dan Pemrograman.

Buatlah program untuk perhitungan tarif Wartel dengan tampilan sebagai berikut:

Tampilan awal:
WARUNG TELEKOMUNIKASI
“[nama kelompok anda]”
====================================
NO. RUANG : <INPUT>
LAMA MENELPON (MENIT) : <INPUT>
JENIS PANGGILAN (1 / 2): <INPUT>


Tampilan baru selanjutnya:
WARUNG TELEKOMUNIKASI
“[nama kelompok anda]”
====================================
NO. RUANG : <OUT>
LAMA MENELPON : <OUT> MENIT
NAMA PANGGILAN : <OUT>
TARIF PER 3 MENIT : <OUT>
TOTAL TARIF TELEPON : <OUT>
PPN 10% : <OUT>
====================================
TOTAL : <OUT>
BAYAR : <INPUT>
KEMBALIAN : <OUT>


Keterangan:
  • Nama panggilan= jika jenis panggilan adalah 1 maka nama panggilan “lokal”
  • Jika jenis panggilan adalah 2 maka nama panggilan “interlokal”
  • Tarif per 3 menit = jika jenis panggilan adalah 1 maka tariff per 3 menit Rp. 175
  • Jika jenis panggilan adalah 2 maka tariff per 3 menit Rp. 780
  • Total tariff panggilan = ((lama panggilan dibagi 3) ditambah satu) dikali tariff per 3 menit
  • PPN 10% = 0.1 dikali total tariff telepon
  • Total = total tariff telepon + PPN10%
  • Kembalian = bayar - total
Soal oleh: Agung Sasongko, S.Kom

Jawaban
#include <iostream.h>
#include <conio.h>
#include <stdio.h>

class Cwartel
{
 public:
   int no,jns_pgl;
   long lama,bayar;

   char *nama_pgl()
   {
      char *n;
     if   (jns_pgl == 1) {n = "Local";}
      else if (jns_pgl == 2) {n = "Interlokal";}
      else  {n = "Kode salah, gunakan kode 1 atau 2";}
      return n;
   }

   long harga()
   {
    long h;
      if  (jns_pgl == 1) {h = 175 ;}
      else if (jns_pgl == 2) {h = 780 ;}
      else {h = 0;}
      return h;
   }

   long tarif()
   {
    long t;
      t = ((lama / 3) + 1) * harga();
      return t;
   }

   long ppn()
   {
     long p;
      p = tarif() * 0.1;
      return p;
   }

   long total()
   {
     long o;
      o = tarif() + ppn();
      return o;
   }

   long kembalian()
   {
     long k;
      k = bayar - total();
      return k;
   }

};

main()
{
   Cwartel tarif;
 cout<<"WARUNG TELEKOMUNIKASI\n";
   cout<<" Kelompok saya\n";
   cout<<"==============================\n";
   cout<<"No. Ruang  : "; cin>>tarif.no;
   cout<<"Lama Menelpon  : "; cin>>tarif.lama;
   cout<<"Jenis Panggilan (1 / 2) : "; cin>>tarif.jns_pgl;

   clrscr();

 cout<<"WARUNG TELEKOMUNIKASI\n";
   cout<<" Kelompok saya\n";
   cout<<"===================================\n";
   cout<<"No. Ruang  : "; cout<<tarif.no<<"\n";
   cout<<"Lama Menelpon  : "; cout<<tarif.lama<<" Menit"<<"\n";
   cout<<"Nama Panggilan  : "; cout<<tarif.nama_pgl()<<"\n";
   cout<<"Tarif Per 3 Menit : "; cout<<tarif.harga()<<"\n";
   cout<<"Total Tarif Telepon : "; cout<<tarif.tarif()<<"\n";
   cout<<"PPN 10%   : "; cout<<tarif.ppn()<<"\n";
   cout<<"===================================\n";
   cout<<"Total   : "; cout<<tarif.total()<<"\n";
   cout<<"Bayar   : "; cin>>tarif.bayar;
   cout<<"Kembalian  : "; cout<<tarif.kembalian()<<"\n";
   getch();
}
Share:

0 comments:

Posting Komentar