Breaking News
Loading...
Kamis, 11 April 2013

Control Flow dan Looping C. Modul III

       Dalam dunia pemrograman sering kita jumpai beberapa kondisi yang mengharuskan kita memutar sedikit otak kita guna menerjemahkan kondisi tersebut kedalam bahasa pemrograman yang kita pakai. Dalam bahasa C dan bahasa pemrograman pada umumnya terdapat kondisi membuat perulangan, menyeleksi inputan dan beberapa proses laiinya biasa diselesaikan dengan metode contoll flow dan looping. Rekan-rekan yang sudah mahir dalam pemrograman sudah tidak asing lagi dengan istilah semacam ini. Tapi pada postingan kali ini saya akan berbagipengalaman mengenai pembuatan program menggunakan beberapa kondisi dengan penyelesaian menggunakan control flow dan looping. Berikut saya bagikan video dan sourcecodenya. 
video 1. Program Bilangan Prima


Coding 1
Source Code Benar Latihan modul 3c

1.  #include <stdio.h>//header standart input output
2.  #include <stdlib.h>//standart library
3.  int main(void)//fungsi main
4.  {
5.  float angka;//deklarasi variabel
6.  int a = 12;//inisialisasi variabel a
7.  printf("==== Latihan Modul 3c. Ketut Agus Seputra ====\n");
8.  printf("Ketikan sembarang angka> ");
9.  scanf("%f",&angka);//menerima inputan angka bertipe float
10. if (angka >= a)//memberikan kondisi jika angka lebih besar sama dengan a
11. printf("Angka yang Anda ketikan lebih besar atau samadengan dari %d \n",a);
12. //statement jika kondisi diatas terpenuhi
13. if (angka < a)//memberikan kondisi jika angka lebih kecil dari a
14. printf("Angka yang Anda ketikan kurang dari dari %d \n",a);
15. //statement jika kondisi angka lebih kecil dari a terpenuhi
16. system("pause");//menahan eksekusi program
17. return("0");//mengembalikan nilai 0
18. }


Deskripsi Singkat

Penggalan kode program diatas merupakan penggalan kode program pengecekan inputan bilangan guna menerapkan control flow khususnya metode if. Dimana program tersebut merupakan soal dari latihan c modul III.
Source code diatas merupakan perbaikan dari source code berikut.

1.  #include <stdio.h>
2.  #include <stdlib.h>
3.  int Main(void)//penulisan main salah
4.  {
5.  float ANGKA;//penulisan angka salah
6.  int a = 12;
7.  printf("Ketikan sembarang angka> ");
8.  scanf("%f",&angka);
9.  if (angka >= a)
10.printf("Angka yang Anda ketikan lebih besar atau
11.samadengan dari %a \n",a);//baris kode lewat line dan kode format salah
12.if (angka < a)
13.printf("Angka yang Anda ketikan kurang dari dari %d
14.\n",a);//baris kode lewat line
15.system("pause");
16.return("0");
17.   }

Gambar 1. Tampilan program 3c




Coding 2
Source Code Latihan modul 3d

1.  #include<stdio.h>//header standart input output
2.  int main(void)//fungsi main
3.  {
4.  int a=90,b=80,c=60,d=50,e,nilai,ulang; ulang=1;//deklarasi variabel dan inisialisasi variabel
5.  printf("==== Latihan Modul 3d. Ketut Agus Seputra ====\n");
6.  printf("soal c \n\n");
7.  do{//melakukan perulangan
8.  switch(ulang)//memberikan pilihan kondisi ulang
9.  {
10. case 1://pilihan 1
11. printf("masukkan nilai anda : ");
12. scanf("%d",&nilai);//menerima inputan dalam variabel nilai bertipe integer
13. if (nilai >=a)//kondisi nilai lebih besar samadengan a=90
14. printf("Nilai anda adalah A \n");//statement jika nilai lebih besar samadengan a=90 terpenuhi
15. else if ((nilai>=b)&&(nilai<a))//kondisi nilai lebih besar samadengan b=80 dan lebih kecil dari a
16. printf("Nilai anda adalah B \n");//statement jika nilai lebih besar samadengan b=80 dan lebih kecil dari a terpenuhi
17. else if ((nilai>=c)&&(nilai<b))//kondisi nilai lebih besar samadengan c=60 dan lebih kecil dari b
18. printf("Nilai anda adalah C \n");//statement jika nilai lebih besar samadengan c=60 dan lebih kecil dari b terpenuhi
19. else if ((nilai>=d)&&(nilai<c))//kondisi nilai lebih besar samadengan d=50 dan lebih kecil dari c
20. printf("Nilai anda adalah D \n");//statement jika nilai lebih besar samadengan d=50 dan lebih kecil dari c terpenuhi
21. else//kondisi lainnya
22. printf("NIlai anda adalah E \n");//statement jika kondisi tidak ditemukan
23. break;
24. case 0://pilihan 2
25. printf("Terima Kasih");
26. break;
27. default://proses alternatif jika kondisi case tidak terpenuhi
28. printf("Terima KAsih");
29. }
30. printf("Masukkan kembali ? [1/0] : ");
31. scanf("%d",&ulang);//menerima inputan perulangan dalam variabel ulang bertipe integer
32. printf("\n");
33. } while (ulang == 1);//perulangan jika ulang samadengan 1
34. printf("Terima KAsih");
35. getch();//menahan eksekusi program
36. return(0);

37. }


Deskripsi Singkat

Penggalan kode program diatas merupakan penggalan kode program pengecekan inputan bilangan guna menerapkan control flow khususnya metode if dan case, dengan tujuan mengkonversi beberapa bilangan menjadi huruf sesuai dengan rentangan kondisi dalam program. Program tersebut merupakan soal dari latihan d modul III.
Berikut soal 3d.
Buat program dengan struktur if atau if/else untuk menerima masukkan nilai ujian mahasiswa dan menampilkan "A" untuk nilai 90, "B" untuk nilai 80, "C" untuk nilai 60, "D" untuk nilai 50, dan “E” untuk nilai < 50.


Gambar 2. Tampilan program 3d

Coding 3
Source Code Benar Latihan modul 3i

1.  #include <stdio.h>//header standart input output
2.  int main(void)//fungsi main
3.  {     
4.  int menu;
5.  float phi=3.14,p,l,t,v_limas,j,v_bola;
6.  char ulang;//deklarasi variabel
7.  ulang=1;//inisialisasi variabel ulang
8.  printf("==== Latihan Modul 3i. Ketut Agus Seputra ====\n");
9.  printf("Menu Volume Bangun Ruang : \n 1. Volume Limas Segitiga \n 2. Volume Bola \n\n");
10. do {//melakukan aksi dibawahnya
11. printf("Masukkan Pilihan menu diatas : ");
12. scanf("%d",&menu);//menerima pilihan menu
13. switch(menu)
14. {
15. case 1://pilihan menu 1
16. printf("Perhitungan Volume Limas \n");
17. printf("Rumus Volume Limas Segitiga adalah V = 1/3 x {1/2 x Panjang x Lebar } x Tinggi\n");
18. printf("Masukkan Nilai panjang : ");
19. scanf("%f",&p);//menerima inputan variabel p
20. printf("Masukkan Nilai lebar : ");
21. scanf("%f",&l);//menerima inputan variabel l
22. printf("Masukkan Nilai tinggi : ");
23. scanf("%f",&t);//menerima inputan variabel t
24. v_limas = ((0.5*p*l)*t)/3;//menghitung volume dengan rumus matematika
25. printf("Volume Limas tersebut adalah %.2f \n\n",v_limas);//menampilkan hasinya
26. break;
27. case 2://pilihan menu 2
28. printf("Perhitungan Volume Bola \n");
29. printf("Rumus Volume Bola adalah Volume Bola = 4/3 x phi x jari-jari x jari-jari x jari-jari \n");
30. printf("Masukkan Nila jari-jari bola : ");
31. scanf("%f",&j);//menerima inputan variabel jari-jari j
32. v_bola = (4*phi*j*j*j)/3;//menghitung volume bola dengan rumus matematika
33. printf("Volume Bola tersebut adalah %.2f\n\n",v_bola);//menampilkan hasinya
34. break;
35. default://kondisi alternatif jika piliha tidak ada
36. printf("Menu tidak ada. Terima KAsih \n");
37. }

38. }while(ulang == 1);//melakukan perulangan semasih kondisi terpenuhi
39. printf("Terim Kasih");
40. getch();
41. return(0);
42. }



Deskripsi Singkat

Penggalan kode program diatas merupakan penggalan kode program penghitungan volume bangun ruang guna menerapkan control flow khususnya metode case. Dimana program tersebut merupakan soal dari latihan i modul III.
Berikut soal 3i:
Tuliskan sebuah program yang berisikan perhitungan volume limas segitiga dan volume bola dengan kondisi berikut: pada tahap awal kita harus memilih: jika mengetikan angka 1 maka perhitungan volume limas segitiga dimulai atau jika mengetikan angka 2 maka pehitungan volume bola dimulai atau apabila tidak mengetikan angka 1 atau 2 maka pada layar ditampilkan kalimat “Anda tidak mengetikan angka 1 atau 2” dan kembali ke tahap awal.

                         

Gambar 3. Tampilan program 3i
Coding 4
Source Code Schaum's 6.45

1.  #include <stdio.h>
2.  #include <stdlib.h>
3.  int main()
4.  {     
5.  int i ,j;
6.  printf("==== Soal 6.45 Ketut Agus Seputra ====");
7.  printf("Jumlah deret bilangan dari 2 s/d 98 adalah \n");
8.  i=2,j=0;//inisialisasi nilai i_awal
9.  printf("Soal no 6.45a. Metode while\n");
10. while(i<100)//menjalankan proses perulangan mulai ketika nilai i masih dibawah 100 dan menjumlahkannya
11. {
12. j=j+i;//menjumlahkan nilai j dengan i atau menjumlahkan deret bilangan
13. i=i+2;//menambahkan nilai i_awal dengan 2 atau memberikan interval pada deret bilangan
14. i++;/*nilai i yang baru ditambah dengan 2 tadi,
15. kemudian diincreament untuk dijadikan sebagai nilai i_awal atau sebagai nilai i yang akan diproses selanjutnya,
16. begitu seterusnya sampai kondisi while terpenuhi.*/

17.
18. printf("Hasil penjumlahan deret bilangan mengunakan metode while adalah %d\n\n",j);//menampilkan jumlah deret

19. // menggunakan metode do while
20. i=2,j=0;//inisialisasi nilai i_awal
21. printf("Soal no 6.45b. Metode do while\n");
22. do//menjalankan proses perulangan mulai dari 2 dan menjumlahkannya
23. {
24. j=j+i;//menjumlahkan nilai j dengan i atau menjumlahkan deret bilangan
25. i=i+2;//menambahkan nilai i_awal dengan 2 atau memberikan interval pada deret bilangan
26. i++;/*nilai i yang baru ditambah dengan 2 tadi,
27. kemudian diincreament untuk dijadikan sebagai nilai i_awal atau sebagai nilai i yang akan diproses selanjutnya,
28. begitu seterusnya sampai kondisi while terpenuhi.*/
29. } while(i<100);//berhenti saat kondisi i lebih kecil dari 100
30. printf("Hasil penjumlahan deret bilangan mengunakan metode do while adalah %d\n\n",j);//menampilkan jumlah deret

31. // menggunakan metode for
32. i=2,j=0;
33. printf("Soal no 6.45c. Metode for\n");
34. for(i;i<100;)//menjalankan proses perulangan mulai dari 2 sampai pada nilai berada dibawah 100 dan menjumlahkannya
35. {
36. j=j+i;//menjumlahkan nilai j dengan i atau menjumlahkan deret bilangan
37. i=i+2; //menambahkan nilai i_awal dengan 2 atau memberikan interval pada deret bilangan
38. i++;/*nilai i yang baru ditambah dengan 2 tadi,
39. kemudian diincreament untuk dijadikan sebagai nilai i_awal atau sebagai nilai i yang akan diproses selanjutnya,
40. begitu seterusnya sampai kondisi for terpenuhi.*/
41. }
42. printf("Hasil perulangan menggunakan for adalah %d",j);//menampilkan jumlah deret
43. getch();
44. return(0);
45. }



Deskripsi Singkat

Penggalan kode program diatas merupakan penggalan kode program penghitungan jumlah deret bilangan dengan interval 2 dan rentang 100 guna menerapkan metode prulangan. Dimana program tersebut merupakan soal dari Schaum's 6.45.
Berikut soal Schaum's 6.45:
Write a loop that will calculate the sum of every third integer, beginning with i=2 (icy calculate the sum 2 + 5 + 8 + 11 + - ) for all values of ithat are less than 100. Write the loop three different ways.
a)    Using a while statement.
b)    Using a do - while statement.
c)    Using a f o r statement

                     

Gambar 4. Tampilan program Schaum's 6.45

Coding 5
Source Code Schaum's f

1.  #include <stdio.h>//header standart input output
2.  int main(void)//fungsi main
3.  {     
4.  int n,i,p,fak,b;//deklarasi variabel
5.  printf("Masukkan rentang bilangan prima : ");
6.  scanf("%d",&n);//menerima masukkan jumah rentang bilangan prima
7.  printf("berikut daftar bilangan prima \n");
8.  b=0;//inisialisasi variabel b
9.  for(i=1;i<=n;i++)//melakukan perulangan dari 1 sampai dengan i lebih kecil sama dengan n
10. {
11. fak=0;//inisialisaivariabel fak
12. for(p=1;p<=i;p++)
13. /*membuat perulangan untuk faktor pembagi untuk bilangan tersebut
14. mulai dari 1 sampai dengan p lebih kecil samadengan i*/
15. {
16. if(i % p == 0)//jika hasil modulus i dengan p adalah nol
17. {
18. fak++;//melakukan increament terhadap variabel fak sampai kondisi diatas tak terpenuhi dan kondisi (p<=i)
19. }
20. }
21. if (fak==2)//memasukkan hasil increament terakhir variabel fak. jika fak samadengan 2
22. {
23. printf("  %d\n",i);//jika kondisi fak samadengan 2, menampilkan bilangan prima
24. b++;//mencari jumlah anggota bilangan prima
25. }
26. }
27. printf("jumlah anggota bilangan prima dari 2 sampai dengan %d adalah %d ",n,b);//menampilakan anggota bilangan prima
28. getch();//menahan eksekusi
29. return(0);
30. }



Deskripsi Singkat

Penggalan kode program diatas merupakan penggalan kode program pencarian bilangan prima guna menerapkan control flow dan perulangan (looping) Dimana program tersebut merupakan soal dari Schaum's f.
Berikut soal Schaum's f :
A prime number is a positive integer quantity that is evenly divisible (without a remainder) only by 1 or by itself. For example, 7 is a prime number, but 6 is not. Calculate and tabulate the first n prime numbers. (Hint: A number, n, will be a prime if the remainders of n/2, n/3, n/4,. . . ,n/& are all nonzero.) Test your program by calculating the first 100 prime numbers.


Gambar 5. Tampilan program Schaum's 6.45

0 komentar:

Posting Komentar

 
Toggle Footer