Translate

Tutorial prosedur dan subroutin halaman 9

Selamat datang di eagleboot dan selamat membaca.

6.8. Function Call Function

 Sub rutin dalam suatu program tidak hanya dapat dipanggil oleh program utama saja tetapi antar sub rutin juga dapat saling memanggil.  

intmain(){ ……. fungsi_1(); ……. fungsi_2(); ……. return0; } intfungsi_1(){ ……. fungsi_3(); ……. return0; } intfungsi_2(){ ……. return0; } intfungsi_3(){ ……. fungsi_4(); return0; } intfungsi_4(){ ……. return0; }

  Gambar 6.2. Sub rutin yang tidak hanya dipanggil oleh program utama  Berikut adalah contoh sub rutin yang memanggil sub rutin lainnya.  1.

 #include<iostream> 2. usingnamespacestd; 3. voidfpb(inta,intb){ 4. inthasil; 5. intr=a%b; 6. if(r==0)hasil=b; 7. else{ 8. while(r!=0){ 9. a=b; 10. b=r; 11. r=a%b; 12. hasil=b; 13. } 14. } 15. cout<<"FPB‐nya="<<hasil<<endl; 16. } 17. voidinput_data(){ 
  18. intm,n; 19. do{ 20. cout<<"Bilanganpertama="; 21. cin>>m; 22. cout<<"Bilangankedua="; 23. cin>>n; 24. }while(m<n); 25. fpb(m,n); 26. } 27. voidmain(){ 28. input_data(); 29. } 

 Keluaran programnya adalah : Bilanganpertama=56 Bilangankedua=24 FPB‐nya=8

  Program di atas mempunyai dua buah function, yaitu function fpb() dan function input_data(). Pertama kali function yang dipanggil oleh program utama adalah function input_data() (baris ke-28). Kemudian function input_data() melakukan pemanggilan function lain yaitu function fpb() (baris ke-25) setelah user memasukkan data untuk bilangan pertama dan bilangan kedua. Sedangkan kode program dalam bahasa Java untuk permasalahan yang sama adalah:  

1. importjava.util.Scanner; 2. importjava.io.*; 3. classhitung{ 4. publicvoidfpb(inta,intb){ 5. inthasil=0; 6. intr=a%b; 7. if(r==0)hasil=b; 8. else{ 9. while(r!=0){ 10.  a=b; 11.  b=r; 12.  r=a%b; 13.  hasil=b; 14. } 15. } 16. System.out.println("Bilanganterbesarnya="+hasil); 17. } 
18. } 19. classinput_data{ 20. publicvoiddata_input(){ 21. hitungsekutu=newhitung(); 22. intm,n; 23. Scannerinput=newScanner(System.in); 24. do{ 25. System.out.print("Bilanganpertama="); 26. m=input.nextInt(); 27. System.out.print("Bilangankedua="); 28. n=input.nextInt(); 29. }while(m<n); 30. sekutu.fpb(m,n); 31. } 32. } 33. classsekutuBesar{ 34. publicstaticvoidmain(String[]args){ 35. input_datamasukan=newinput_data(); 36. masukan.data_input(); 37. } 38. }  

Keluaran programnya adalah : Bilanganpertama=76 Bilangankedua=18 Bilanganterbesarnya=2

Next read ON halaman 10.

Share this

Related Posts

Previous
Next Post »