Thursday, December 20, 2012

Praktikum 4 (Fungsi)

Diposkan oleh Unknown di Thursday, December 20, 2012
Pemrograman Menggunakan Java Netbeans
Semoga membantu...
:) 

A.      Definisi Masalah 
1.      Buat program yang memiliki suatu fungsi rekursif untuk mencetak, menjumlahkan, dan menghitung rata-rata suatu deret fibbonacci, dengan batas n. Deret fibbonacci adalah suatu deret dimana bilangan berikutnya merupakan penjumlahan 2 bilangan sebelumnya. 
       Contoh:
       Masukkan n: 9
       Deret Fibonacci: 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34
       Jumlah: 88
       Rata-rata: 9.78 
2.  Buat program untuk mencetak bilangan amisabel dari 1 sampai 5000. Bilangan  amisabel adalah bilangan yang jumlah faktor-faktornya sama dengan bilangan itu sendiri. 
     Contoh: 1 = 1
     6 = 1 + 2 + 3 
    28     1 + 2 + 4 + 7 + 14
 B.       Rancangan Algoritma (pseudocode) 
        1.      Main
      Mulai
               double jml=0
               Masukkan n
               int x=1
               Ulangi selama (x<=n)
                       Cetak (fibonacci(x))
                       Jika(x==n)
                              Cetak “ 
                       Lainnya
                             Cetak “ + “
                       jml=jml+fibonacci(x)
               Cetak (jml)
               double ratarata=jml / n
               Cetak (ratarata)
      Selesai
Tutup

              int fibonacci (int n)
                   Mulai
                            Jika (n==1)
                                    return 0
                            Lainnya jika (n==2)
                                    return 1
                            Lainnya
                                    return fibonacci (n-2) + fibonacci (n-1)
                   Selesai
              Tutup 

2.      Main
        Mulai
           Input n
           Jika (n>5000){
                  Cetak “input tidak valid”
           Lainnya
                  Cetak (n + “ = “)
                  rumus (n)
                  cetak “ 
      Selesai
Tutup

int rumus (int n)
      Mulai
           int i
           Ulangi selama (i<=n)
                                   Jika (i==1)
                                               Cetak (i)
                                               i++
                                   Lainnya
                                               Jika (i==n)
                                                           break;
                                               Lainnya jika (n%i==0)
                                                           Cetak (“  +  “ +i)
                                                           i++
                                               Lainnya
                                                           i++
return (n)
                   Selesai
            Tutup

C.    Source Code
1.       
1
2
3
4
5
6
7
8
9
10
11
12
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
public static void main(String[] args) {
   Scanner input = new Scanner(System.in);
       
   double jml=0;
   System.out.println("\t##Perihal Deret Fibonacci##\n");
   System.out.print("Masukkan sebuah bilangan : ");
   int n=input.nextInt();

   System.out.print("Deret Fibonaci: ");
   for (int x=1; x<=n; x++) {
       System.out.print(fibonacci(x));
       if (x==n) {
           System.out.print(" ");
       }
       else {
           System.out.print(" + ");
       }
       jml+=fibonacci(x); //total penjumlahan semua deret        fibonacci
   }
   System.out.print("\nJumlah: "+jml +"\n");
   double ratarata=jml/n; //rata-rata deret fibonacci
   System.out.printf("Rata-rata: %.2f\n\n", ratarata);
   }
private static int fibonacci (int n){
   if(n==1){
      return 0;
   }
   else if(n==2){
      return 1;
   }
   else{
      return fibonacci(n-2)+fibonacci(n-1);
   }   
 }
}


2. 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("\t##Perihal Bilangan Amisabel##\n");
System.out.print("Masukkan bilangan : ");
int n=input.nextInt();
if(n>5000){
    System.out.println("Input tidak valid ! ");
}
else{
     System.out.print(n+" = ");
     rumus(n);
     System.out.println(" ");
}
}
   
private static int rumus(int n){
for(int i=1; i<=n; ){
      if(i==1){
           System.out.print(i);
           i++;
      }
      else{
           if(i==n){
                break;
           }
           else if(n%i==0){
                System.out.print(" + "+i);
                i++;
           }
           else{
                i++;
           }
      }
}
return(n);
} 
}
    
A.    Snapshot Program  
      1.       
 


 2. 


2 komentar:

Anonymous said...

anak PTIIK UB ya kak?

Anonymous said...

Great and I have a super give: How Long Do House Renovations Take residential renovation contractors

Post a Comment

Tuliskan komentar Anda di bawah ini.

 

just say WHATEVER ツ Template by Ipietoon Blogger Template | Gift Idea