Laman

Selasa, 18 Januari 2011

LATIHAN GABUNGAN BORLAND C++ (STRUKTUR,ARRAY,FUNGSI,FOR) II


yuk kita latihan lagi kawan,,,kali ini yang dipakai dalam seleksi kondisi yaitu IF Majemuk,lebih mudah hanya saja jauh lebih banyak kondisinya....kerjakan dulu sndiri yap,kalo dah mentok baru liat jawabannya dibawah,biar afdooll getttooohh,,,,hahaha cheerss!!!

neh kunci jawabannya :

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

judul()
{
puts("===================================");
puts("      SERDAM BURGER & PIZZA");
puts("===================================");
}

long ttlhrg(long hrg,long jbl)
{
return(hrg*jbl);
}

garis()
{
puts("=======================================================================");
}



long grand(long tlsub,long pjk)
{
return(tlsub+pjk);
}

long kembali(long uby,long grnd)
{
return(uby-grnd);
}

main()
{
char lagi;
int no,jt,a;
long gt,ubay,ukem;
long ppn,subtotal;

struct
{
    char kopak[30],napak[25];
   int harga,jumbel;
   long tohar;

}serdam[20];

awal:
clrscr();
subtotal=0;
judul();
cout<<"No. Nota         : ";cin>>no;
cout<<"Jumlah Transaksi : ";cin>>jt;
cout<<endl;

for(a=1;a<=jt;a++)
{
    cout<<"transaksi ke - "<<a<<endl;
   cout<<"Kode Paket    : ";cin>>serdam[a].kopak;
    if(!strcmp(serdam[a].kopak,"B-01")||!strcmp(serdam[a].kopak,"b-01"))
   {
       strcpy(serdam[a].napak,"CHEESE BURGER");
      serdam[a].harga=5500;
   }
   else if(!strcmp(serdam[a].kopak,"B-02")||!strcmp(serdam[a].kopak,"b-02"))
   {
       strcpy(serdam[a].napak,"BEEF BURGER");
      serdam[a].harga=7500;
   }
   else if(!strcmp(serdam[a].kopak,"B-SPC")||!strcmp(serdam[a].kopak,"b-spc"))
   {
       strcpy(serdam[a].napak,"SPECIAL BURGER");
      serdam[a].harga=11000;
   }
   else if(!strcmp(serdam[a].kopak,"P-M")||!strcmp(serdam[a].kopak,"p-m"))
   {
       strcpy(serdam[a].napak,"PIZZA MEDIUM SIZE");
      serdam[a].harga=24000;
   }
   else if(!strcmp(serdam[a].kopak,"P-S")||!strcmp(serdam[a].kopak,"p-s"))
   {
       strcpy(serdam[a].napak,"PIZZA SMALL SIZE");
      serdam[a].harga=9000;
   }
   else if(!strcmp(serdam[a].kopak,"P-SPC")||!strcmp(serdam[a].kopak,"p-spc"))
   {
       strcpy(serdam[a].napak,"SPECIAL PIZZA");
      serdam[a].harga=75500;
   }
   else if(!strcmp(serdam[a].kopak,"D-C")||!strcmp(serdam[a].kopak,"d-c"))
   {
       strcpy(serdam[a].napak,"SOFT DRINK COLA");
      serdam[a].harga=4500;
   }
   else if(!strcmp(serdam[a].kopak,"D-J")||!strcmp(serdam[a].kopak,"d-j"))
   {
       strcpy(serdam[a].napak,"SOFT DRINK JUICE");
      serdam[a].harga=3500;
   }
   else
   {
       strcpy(serdam[a].napak,"SALAH KODE");
      serdam[a].harga=0;
   }
   cout<<"Nama Paket    : "<<serdam[a].napak<<endl;
   cout<<"Harga Satuan  : "<<serdam[a].harga<<endl;
   cout<<"Jumlah Beli   : ";cin>>serdam[a].jumbel;
   serdam[a].tohar=ttlhrg(serdam[a].harga,serdam[a].jumbel);

   cout<<"TOtal Harga   : "<<serdam[a].tohar;

cout<<endl;
}
cout<<endl<<endl;


garis();
puts("No   Kode     Nama            Harga     Jumlah     Total");
puts("     Paket    Paket           Satuan    Beli");
garis();
for(a=1;a<=jt;a++)
{
    cout<<setiosflags(ios::left)<<setw(5)<<a;
   cout<<setiosflags(ios::left)<<setw(9)<<serdam[a].kopak;
   cout<<setiosflags(ios::left)<<setw(16)<<serdam[a].napak;
   cout<<setiosflags(ios::left)<<setw(10)<<serdam[a].harga;
   cout<<setiosflags(ios::left)<<setw(11)<<serdam[a].jumbel;
   cout<<setiosflags(ios::left)<<setw(9)<<serdam[a].tohar<<endl;
   subtotal=subtotal+serdam[a].tohar;
}

garis();

cout<<"\t\t\t\t\tSubtotal    : Rp."<<subtotal<<endl;
ppn=0.1*subtotal;
cout<<"\t\t\t\t\tPPN 10%     : Rp."<<ppn<<endl;
gt=grand(subtotal,ppn);
cout<<"\t\t\t\t\tGrand Total : Rp."<<gt<<endl;
cout<<"\t\t\t\t\tUang Bayar  : Rp.";cin>>ubay;
ukem=kembali(ubay,gt);
cout<<"\t\t\t\t\tkembalian   : Rp."<<ukem<<endl;
cout<<endl<<endl;

cout<<"\t\t\tInput Data Lagi [Y/T]: ";cin>>lagi;
if(lagi=='y'||lagi=='Y')
goto awal;
else
goto akhir;
getch();
akhir:
}


Senin, 17 Januari 2011

SOAL LATIHAN UAS LOGIKA DAN ALGORITMA

SOAL LATIHAN UAS LOGIKA DAN ALGORITMA
Berikut adalah soal latihan untuk menghadapi uas logika dan algoritma,kalo ada yang salah koreksi sendiri yap....hehehe goodluck

  1. Usaha mengurutkan kumpulan data dalam array disebut ? è Sorting
  2. Usaha Pencarian data dalam kumpulan data disebut ? è Searching
  3. Pencarian data dengan meneliti data satu per satu dari awal ? è Linear Search
  4. Teknik Sort yang bekerja dengan teknik gelembung disebut ? è Bubble Sort
  5. Proses pencarian data pada data urut lebih efektif jika menggunakan teknik search ? è Binary Search
  6. Himpunan yang disusun secara menaik / increasing akan mengalami keaadaan time complexity yang disebu ? è Best Case
  7. Himpunan yang disusun secara acak akan mengalami keadaan time complexity yang disebut ? è Average Case
  8. Himpunan yang disusun secara menurun / decreasing akan mengalami keadaan time complexity yang disebut ? è Worst Case
  9. Pembagian waktu pada average case / data tak tersusun disebut ? è 3n/2-1
  10. Metode yang biasa digunakan untuk melakukan sorting yaitu ? è Selection Sort, Quick Sort, Merge Sort, Bubble Sort
  11. Kriteria Array dua dimensi yaitu ? è memiliki baris dan kolom
  12. Teknik yang sering digunakan dalam metode search ? è Linear Search dan Binary Search
  13. Knapshack Problem dapat diselesaikan dengan cara ?
è Matematika
                è Kriteria Greedy
                è Algoritma Pemrograman Greedy
  1. Arti dari suatu simpul yang tidak dihubungkan dengan suatu ruas apapun dalam menentukan suatu pola lalu lintas dengan jumlah fase minimal adalah ? è Simpul tersebut selalu berlaku lampu hijau.
  2. Dalam masalah pewarnaan warna yang dipergunakan sebaiknya ? è Seminimal mungkin
  3. Graph yang dihasilkan dalam masalah traveling salesman adalah ? è Graph Tertutup
  4. Fungsi Utama / tujuan dalam masalah knapshack adalah ? è Maximum pixi
  5. Problem pemberian warna pada semua simpul sehingga 2 simpul yang berdampingan (ada ruas yang menghubungkan kedua simpul tersebut) mempunyai warna yang berbeda disebut ? è Coloring
  6. Apa yang disebut dengan Quick Sort ? è yaitu Sorting dengan iterasi secara terurut dari posisi element 1 ke element 2 dan seterusnya
  7. Apa yang disebut dengan Bubble Sort ? è yaitu Teknik Sort yang bekerja dengan menggunakan prinsip gelembung udara yang akan bergerak naik keatas secara satu persatu
  8. Apa yang dimaksud dengan Selection Sort ? è Tenik sort dengan cara pemilihan element atau proses kerja dengan memilih element data terkecil untuk kemudian dibandingkan dan ditukarkan dengan element pada data awal dan seterusnya sampai dengan seluruh element sehingga akan menghasilkan pola data yang telah disort
  9. Pemberian warna yang sama pada coloring terjadi apabila ? è Simpul tidak berdampingan
  10. Pemberian warna yang tidak sama pada coloring terjadi apabila ? è Simpul berdampingan
  11. Permasalahan bagaimana mengoptimalisasi storage / memory dalam computer agar data yang disimpan dapat termuat dengan optimal disebut ? è Optimal storage on tapes problem
  12. Algoritma yang digunakan untuk mencari ruas terpendek yang menghubungkan setiap simpul  dalam graph adalah ? è Shortest Path Problem
  13. ALgoritma untuk mencari waktu tempuh perjalanan terpendek dan kembali ke simpul awa adalah ? è Traveling Sallesman
  14. Kriteria Knapshack Problem adalah ?
è minimum weight (berat terkecil) = wi
è maximum profit (profit terbesar) = pi
è maximal profit/weight = pi/wi
  1. Ciri – cirri graph minimum spanning tree adalah ?
    1. Setiap ruas graph tidak saling berhubungan
    2. Setiap ruas memiliki nilai
    3. Setiap ruas tidak memiliki arah
  2. Pencarian max dan min akan mendapatkan best case jika data yang diurutkan ? è secara increasing / urut menaik
  3. Dalam pencarian binary (bagi dua) dengan data terurut ascending ,algoritma yang benar adalah ?
è jika x<a[mid] maka high = mid-1
è jika x>a[mid] maka low = mid+1
è jika a[mid]<x maka low = mid+1
  1. Fungsi tujuan Knapshack Problem adalah ? è untuk mendapatkan solusi yang optimal dengan mencari profit yang maximal
  2. Greedy By Densitas adalah ? è Pilih barang dengan perbandingan nilai dan berat yaitu pi/wi terbesar
  3. Salah satu contoh  penerapan coloring graph adalah ? è menentukan pola lalu lintas dengan fase minimal
  4. Teknik pencarian yang hanya bisa melakukan proses pencarian apabila datanya urut adalah ? è Binary Search
  5. Jumlah perbandingan yang dilakukan untuk worst case adalah ? è 2(n-1)
  6. Hal yang mempengaruhi kecepatan algoritma sort adalah ? è jumlah operasi
  7. Nilai middle adalah ? è (low + high)div2
  8. Graph yang dihasilkan minimum spanning tree adalah ? è graph tertutup
  9. Diket Data : 2       22           10           15           3              8
Jika menggunakan Bubble sort maka iterasi ke 2 keadaan data menjadi ?
è 2        3              22           10           15           8
     40. Diket data :             5              3              4              2              1
                Jika menggunakan insertion sort maka iterasi ke 3 adalah ?
                è 3        4              5              2              1





































Jumat, 14 Januari 2011

LATIHAN GABUNGAN BORLAND C++ (STRUKTUR,ARRAY,FUNGSI,FOR)

Tampilan Input dan Outputnya adalah sebagai berikut :



Tampilan kondisi bunganya sebagai berikut :
Selamat Mengerjakan yap....!!!

neh jawabannya :

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

judul() /*>>>>>>>>>fungsi judul<<<<<<<<*/                                                
{
puts("\t\t\t Toko Bunga Segar");
puts("\t\t\t ''FLO FLOWERS''");
puts("\t\t\t==================");
}

garis()/*>>>>>>>>>>>>fungsi garis<<<<<<<<<*/
{
puts("=====================================================================");
}

long totalsub(long hrg,long jbl)/*>>>>>>>>>>>>fungsi subtotal<<<<<<<<<<<<*/
{
return(hrg*jbl);
}

long bayartotal(long ttlbyr,long sbttl)/*>>>>>>>>>>>>>fungsi total bayar<<<<<<<<<*/
{
return(ttlbyr+sbttl);
}

long kembali(long ubyr,long tbyr)/*>>>>>>>>>>>>>>fungsi uang kembali<<<<<<<<<<<<*/
{
return(ubyr-tbyr);
}

main()/*>>>>>>>>>>>program utama<<<<<<<<<<*/
{
char nasir[30],napem[30],more;
int j,a;
long tobay,ubay,ukem;

struct/*>>>>>>>>>>>>>>struktur<<<<<<<<<<<*/
{
    char kobung[5],kopak,nabung[25],jepak[20];
   int jumbel,harga;
   long subtotal;
}toko[10];

awal:
clrscr();
tobay=0;
judul();
cout<<"Nama Kasir         : ";gets(nasir);
cout<<"Nama Pembeli       : ";gets(napem);
cout<<"jumlah jenis Bunga : ";cin>>j;
cout<<endl;

for(a=1;a<=j;a++)/*>>>>>>>>>>>perulangan untuk kondisi<<<<<<<<<*/
{
    cout<<"Bunga ke - "<<a<<endl;
   cout<<"Kode bunga [TL/LY]   : ";cin>>toko[a].kobung;
   cout<<"Kode Paket [S/B]     : ";cin>>toko[a].kopak;
   cout<<"Jumlah Beli          : ";cin>>toko[a].jumbel;
   if (!strcmp(toko[a].kobung,"TL")||!strcmp(toko[a].kobung,"tl"))/*>>>>>>>>>>>kondisi nested if<<<<<<<<<*/
   {
       strcpy(toko[a].nabung,"TULIP");
      if(toko[a].kopak=='S'||toko[a].kopak=='s')
      {
          strcpy(toko[a].jepak,"SINGLE");
         toko[a].harga=10000;
         }
      else if(toko[a].kopak=='B'||toko[a].kopak=='b')
      {
          strcpy(toko[a].jepak,"BUKET");
         toko[a].harga=35000;
         }
      else
      {
          strcpy(toko[a].jepak,"SALAH KODE");
         toko[a].harga=0;
         }
   }
   else if (!strcmp(toko[a].kobung,"LY")||!strcmp(toko[a].kobung,"ly"))
   {
       strcpy(toko[a].nabung,"LILY");
      if(toko[a].kopak=='S'||toko[a].kopak=='s')
      {
          strcpy(toko[a].jepak,"SINGLE");
         toko[a].harga=20000;
         }
      else if(toko[a].kopak=='B'||toko[a].kopak=='b')
      {
          strcpy(toko[a].jepak,"BUKET");
         toko[a].harga=50000;
         }
      else
      {
          strcpy(toko[a].jepak,"SALAH KODE");
         toko[a].harga=0;
         }
   }
   else
   {
       strcpy(toko[a].nabung,"SALAH KODE");
   }
  cout<<endl;
}
cout<<endl<<endl;

clrscr();
judul();
cout<<"Nama Kasir   : "<<nasir<<endl;
cout<<"Nama Pembeli : "<<napem<<endl;
cout<<endl;

garis();
puts("No   Nama Bunga  Jenis Paket  Harga  Jumlah Beli  Subtotal");
garis();
for(a=1;a<=j;a++)/*>>>>>>>>perulangan untuk mencetak output<<<<<<<<<*/
{
    cout<<setiosflags(ios::left)<<setw(5)<<a;
   cout<<setiosflags(ios::left)<<setw(12)<<toko[a].nabung;
   cout<<setiosflags(ios::left)<<setw(13)<<toko[a].jepak;
   cout<<setiosflags(ios::left)<<setw(12)<<toko[a].harga;
   cout<<setiosflags(ios::left)<<setw(8)<<toko[a].jumbel;
   toko[a].subtotal=totalsub(toko[a].harga,toko[a].jumbel);
   cout<<setiosflags(ios::left)<<setw(5)<<toko[a].subtotal<<endl;
   tobay=bayartotal(tobay,toko[a].subtotal);

}
garis();
cout<<"\t\t\t\t\tTotal Bayar  : "<<tobay<<endl;
cout<<"\t\t\t\t\tUang Bayar   : ";cin>>ubay;
ukem=kembali(ubay,tobay);
cout<<"\t\t\t\t\tUang Kembali : "<<ukem<<endl;
cout<<endl<<endl;

cout<<"\t\t\tInput Data Lagi [Y/T]: ";cin>>more;/*>>>>>>>penggunaan label<<<<<<<*/
if(more=='Y'||more=='y')
goto awal;
else
goto akhir;

getch();
akhir:
}