Advertisement
agusbd

simple rekursif ~#xagusart

Mar 7th, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.33 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4.  
  5. bool cekprima(int);
  6. int jum_prima(int);
  7. int prima_ke_n(int);
  8. int jumlah_deret(int a,int b,int n);
  9. void menu();
  10.  
  11. main(){
  12.  
  13.  menu();
  14.  
  15.  
  16. }
  17.  
  18. void menu(){
  19.  
  20.     int menu,
  21.         a,
  22.         b,
  23.         n;
  24.     cout<<"MENU "<<endl;
  25.     cout<<"1. Jumlah Deret aritmatika "<<endl;
  26.     cout<<"2. Jumlah Deret Prima      "<<endl;
  27.     cout<<"0. Keluar "<<endl;
  28.     cout<<"pilih : ";cin>>menu;
  29.     switch(menu){
  30.  
  31.     case 1:
  32.         cout<<"masukan suku pertama : ";cin>>a;
  33.         cout<<"masukan beda         : ";cin>>b;
  34.         cout<<"masukan jumlah deret : ";cin>>n;
  35.         cout<<"hasil = "<<jumlah_deret(a,b,n)<<endl;
  36.         break;
  37.     case 2:
  38.         cout<<"masukan jumlah deret prima : ";cin>>n;
  39.         cout<<"hasil = "<<jum_prima(n)<<endl;
  40.         break;
  41.     }
  42. }
  43.  
  44.  
  45. int jumlah_deret(int a, int b, int n){
  46.     if(n==1){
  47.      return a;
  48.     }
  49.     return a+((n-1)*b)+jumlah_deret(a,b,n-1);
  50. }
  51.  
  52.  
  53. int jum_prima(int n){
  54.  if(n==1)
  55.     return 2;
  56. return prima_ke_n(n)+jum_prima(n-1);
  57. }
  58.  
  59.  
  60. bool cekprima(int x){
  61.  int jumlah=0;
  62. for(int i=2;i<x;i++){
  63.     if(x%i==0)
  64.         jumlah++;
  65.     if(jumlah>2)
  66.         break;
  67. }
  68.  
  69. }
  70.  
  71. int prima_ke_n(int x){
  72.     int jumlah =0,i=2;
  73.     while(x!=jumlah){
  74.         if(cekprima(i))
  75.         jumlah++;
  76.     i++;
  77.     }
  78.     return i;
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement