Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string.h>
- using namespace std;
- // xagusart
- //inisialisasi
- int fpb(int,int);
- int kpk(int,int);
- int penjumlahan(int);
- int hari_ke_angka(char[]);
- void angka_ke_hari(int);
- void hari_ke_n();
- int main()
- { int a,b,menu;
- char hari[10];
- cout<<"silakan pilih : "<<endl;
- cout<<"1. kpk "<<endl;
- cout<<"2. fpb "<<endl;
- cout<<"3. jumlah 1+2....+n "<<endl;
- cout<<"4. hari ke n "<<endl;
- cout<<"masukan pilihan : ";cin>>menu;
- switch(menu)
- {
- case 1:
- cout<<"masukan angka pertama : ";cin>>a;
- cout<<"masukan angka kedua : ";cin>>b;
- cout<<"kpk dari " <<a<<" dan "<<b<<" adalah "<<kpk(a,b)<<endl;
- break;
- case 2 :
- cout<<"masukan angka pertama : ";cin>>a;
- cout<<"masukan angka kedua : ";cin>>b;
- cout<<"fpb dari " <<a<<" dan "<<b<<" adalah "<<fpb(a,b)<<endl;
- break;
- case 3:
- cout<<"masukan nilai n : ";cin>>a;
- cout<<"hasil = "<<penjumlahan(a);
- break;
- case 4 :
- hari_ke_n();
- break;
- }
- return 0;
- }
- int fpb(int x,int y)
- {
- //algoritma euclid untuk fpb
- while(y!=0)
- {
- int t =y;
- y= x%y;
- x=t;
- }
- return x;
- }
- int kpk(int x,int y)
- { //kpk bisa didapat dari perkalian x dan y kemudian dibagi fpb nya
- return (x*y)/fpb(x,y);
- }
- //coba rekursif
- int penjumlahan (int x)
- {
- if(x==1)
- // kalau x ==1 maka rekursif berhenti
- return 1;
- else
- {
- return x+penjumlahan(x-1);
- }
- }
- void angka_ke_hari(int x)
- {
- switch(x)
- {
- case 0 :
- cout<<"minggu";
- break;
- case 1 :
- cout<<"senin";
- break;
- case 2 :
- cout<<"selasa";
- break;
- case 3 :
- cout<<"rabu";
- break;
- case 4 :
- cout<<"kamis";
- break;
- case 5 :
- cout<<"jumat";
- break;
- case 6 :
- cout<<"sabtu";
- break;
- }
- }
- int hari_ke_angka(char x[10])
- {
- // hari dimulai dari minggu = 0 dst
- // ada eror kalo pake string, gatau kenapa
- if(x[10]='senin')
- return 1;
- if(x[10]='selasa')
- return 2;
- if(x[10]='rabu')
- return 3;
- if(x[10]='kamis')
- return 4;
- if(x[10]='jumat')
- return 5;
- if(x[10]='sabtu')
- return 6;
- if(x[10]='minggu')
- return 0;
- }
- void hari_ke_n()
- { char hari[10];
- int ukur,
- lanjut,
- total;
- cout<<"masukan hari awal : ";cin>>hari;
- //konversi hari ke angka, berguna untuk mendapat hari selanjutnya pada saat penentuan hari ke n
- ukur = hari_ke_angka(hari);
- cout<<"masukan jumlah hari selanjutnya : ";cin>>lanjut;
- total= ukur+(lanjut%5);
- cout<<"hari ke n adalah hari ";angka_ke_hari(total);
- }
Add Comment
Please, Sign In to add comment