Kamis, 11 April 2013

Menampilakan Deret Bilangan Dengan Fungsi Do...While dan For


 Menampilakan Deret Bilangan Dengan Fungsi Do...While


Dalam buku SCHAUM’S OUTLINE OF THEORY AND PROBLEMS OF PROGRAMMING WITH C Second Edition Problems 6.45 hlaman164 dituliskan :


"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.

(6) Using a do - while statement.

(c) Using a f o r statement."

berdasarkan pernyataan di atas, maka kita dapat menampilkan deret bilangan dari 2 +3 + 8 + ...+ n . tetapi kurang dari seratus, kemudian dijumlahkan
pada program dibawah bagaian (a) #include <stdio.h> #include <stdlib.h> merupakan header, diamana pada masing-masing header tersebut terdapat kumpulan fungsi-fungsi seperti printf, while, system(“pause”),return(0) dan sebagainya. Int i= 2 adalah pendeklarasian bahwa I adalah integer dengan nilai samadengan 2 dan sum samadengan null (0).while fungsi looping (i<100) adalah sebagai batas atas dari bilangan yang akan dicetak. Saat sum=sum+1 dieksekusi, maka proses yang trjadi adalah sum=0+2=2, kemudian printf("%d\n",i) dieksekusi sehingga akan keluar juga nilai 2. Tetapi nilai 2 ini merupakan nilai variable awal yang telah didekklarasikan sebelumnya pada int i=2.kemudian nilai 2 tersebut akan ditambahkan dengan nilai 3 melalui persamaan i+=3 dan akan terus berulang sampai mendapatkan nilai maksimum yaitu <100=nilai yang paling dekat dengan 100. Setelah itu baru printf("%d",sum); akan dieksekusi unutk mengeluarkan nilai penjumlahan 2+5+8+11+14+17+20+. . .+98=1650

(a)

#include <stdio.h>
#include <stdlib.h>
int main()
{
       int i=2,sum=0;
       while(i<100)
              {
                     sum=sum+i;
                     printf("%d\n",i);
                     i+=3;        
              }
       printf("%d",sum);
       system("pause");
       return(0);
}

CLICK TO VIEW THE VIDEO TUTORIAL



Perbedaan dari program diatas adalah adnya do. jadi pada saat do mulai dieksekusi maka ada perintah untuk menjalankan atau eksekusi sum=sum+i, maka proses yang trjadi adalah sum=0+2=2, kemudian printf("%d\n",i) dieksekusi sehingga akan keluar juga nilai 2. Tetapi nilai 2 ini merupakan nilai variable awal yang telah didekklarasikan sebelumnya pada int i=2.kemudian nilai 2 tersebut akan ditambahkan dengan nilai 3 melalui persamaan i+=3 dan akan terus berulang sampai mendapatkan nilai maksimum yaitu <100=nilai yang paling dekat dengan 100 Setelah itu baru printf("%d",sum); akan dieksekusi unutk mengeluarkan nilai penjumlahan 2+5+8+11+14+17+20+. . .+98=1650

(b)

   /*Control Flow dengan Do */

#include <stdio.h>

#include <stdlib.h>


int main()
{
       int i=2,sum=0;
       do
              {
                     sum=sum+i; /*sum = 0+2+5+8...*/           
                     printf("%d\n",i); /*2,5,8...*/
                     i+=3; /*i=i+3 == 2+3=5 ==5+3=8.. */
                          
              } while (i<100); /* suatu batas nilai, dimana nilai yang
                                  keluar adalah nilai max yg mendekati 100 dgn catatan
                           nilai sebelumnya merupakan nilai dengan interval 3*/

       printf("%d",sum);
       system("pause");
       return(0);
}


(C)

Ini juga pada bagian (c) sama seperti diatas, tetapi perbedaanya seolah-olah telah ditentukan terlebih dahulu bahwa i=2 , berarti mulai dari 2 dengan batas atas i<100, berarti 100 dan dengan penjumlahan i=i+3= i+3 untuk nantinya hasil dikeluarkan. Proses loopnig akan terus terjadi jika penghitungan belum mencapai nilai <100 (nilai paling mendekati dari 100)

/*control flow dengan for*/
#include <stdio.h>
#include <stdlib.h>

int main()

{
       int i,sum=0;

       for (i=2;i<100;i=i+3)
       {     
       sum=sum+i;
              printf("%d\n",i);
       }
              printf("%d\n",sum); 
                          
       system("pause");
       return(0);
}



CLICK TO VIEW THE VIDEO TUTORIAL

Tidak ada komentar:

Posting Komentar