Sabtu, 11 Mei 2013

Perulangan

FOR

#include <stdio.h>
#include <conio.h>

void main ( )
{
int i ;

clrscr( );
printf("%d.Turbo C\n",i);
printf("Turbo C");

--------------------------------------------------------------------------------------------------------------------------

for (i=1;1<=5;i++)
printf("%d + %d = %d", i, i, i+i);



While
Do while

#While

contoh :

#include <stdio.h>
#include <conio.h>

void main ( )

{
int i;
clrscr( );
i=1;
while (i<=5)

{
printf("Turbo C\n");
i=i+1;
}
getch( );
}

Cara kerja program :

i = 1
(1<=5) True
Cetak "Turbo C")
i = 1+1 = 2

(2<=5) True
Cetak "Turbo C")
i = 2+1 =3

(3<=5) True
Cetak "Turbo C")
i = 3+1 =4

(4<=5) True
Cetak "Turbo C")
i = 4+1 =5

(5<=5) True
Cetak "Turbo C")
i = 5+1 =6

(6<=5) False
"Jika False maka tidak akan di cetak"


#Do while

Contoh program :

#include <stdio.h>
#include <conio.h>

void main ( )
{
int i;
clrscr ( );

i = 1;
do
{
printf("Turbo C\n");
i = i + 1;
}
while (i<=5);
getch( );
}

Perbedan antara while dan Do while adalah

While      :  - Pertama  menyeleksi kondisi. 
                   - Kedua mengulang statement.

Do while :  - Pertama mengulang statement.
                   - Kedua penyeleksian kondisi.



Pemilihan

# If = Alternatif pilihannya satu atau dua.
# switch – case = Alternatif pilihannya lebih dari dua.

Kondisi adalah kegiatan pembandingan nilai.

Operator pembandingan (relasi).

<
>=
<=
!=
==

: Lebih besar
: Lebih kecil
: Lebih besar atau sama dengan.
: Lebih kecil atau sama dengan
: Tidak sama
: Sama dengan

Contoh IF :
#include <stdio.h>
#include <conio.h>

void main ( )
{
Char kode;
Clrscr( );
Printf(“ Ketik kode jenis kelamin : “);
Scanf(“%c”,&kode);
If (kode == ‘0’)
Printf(“Jenis kelamin wanita”);
else
Printf(“Jenis kelamin pria”);
getch( );
}





Bentuk umum
Void main  switch (variabel)
{
Int a-x
{
Case nilai-1 = statement-1 ; break;
Printf(“A\n”);
Case nilai-2; break;
Nilai-n ; statement-n;


Tanda ( ‘ ) di gunakan untuk menunjukan tipe karakter.
Tanda ( “ ) di gunakan untuk menunjukan tipe String.

-------------------------------------------------------------------------------------------------------------------------


Contoh Program :

       1. Buatlah program untuk menentukan gaji pokok seorang pegawai berdasarkan golongannya !

Golongan           
Gaji Pokok
     A
     B
     C
     D
    Rp. 700.000
    Rp. 800.000
    Rp. 900.000
    Rp. 1.000.000


Program :

#include <stdio.h>
#include <conio.h>

void main ( )
{
char golongan;
clrscr;

printf(“Ketik Golongan : “);
scanf(“%c”,&golongan);
}
case ‘A’ = printf(“Gaji pokok Rp. 700.000”);break;
case ‘B’ = printf(“Gaji pokok Rp. 800.000”);break;
case ‘C’ = printf(“Gaji pokok Rp. 900.000”);break;
case ‘D’ = printf(“Gaji pokok Rp. 1.000.000”);
}

                                        Tampilan Programnya adalah sebagai berikut :


                                                               Anda Perlu Tahu !

                                           * Input adalah Apa yang di butuhkan
                                                                        * Output adalah Apa yang di hasilkan.
                                          * Proses adalah Bagaimana menghasilkan output dan input.


------------------------------------------------------------------------------------------------------------------------
Contoh program 2 :

#include <stdio.h>
#include <conio.h>
void main ( )
{
char nim [10];
char nama [25];
int nhadir, ntgs, nuts, nuas;
float nakhirangka;
char nakhirangka;
int bobot;

clrscr ( );
printf(“NIM : “);
scanf(“%s”,&nim);
printf(“Nama : “);
scanf(“%s”,&nama);
printf(“Nilai Kehadiran : “);
scanf(“%d”,&nhadir);
printf(“Nilai tugas : “);
scanf(“%d”,&ntgs);
printf(“Nilai UTS : “);
scanf(“%d”,&nuts);
printf(“Nilai UAS : “);
scanf(“%d”,&nuas);

nakhirangka = 0.1*nhadir+0.2*ntgs+0.3*nuts+0.4*nuas;
if(nakhirangka >= 85)
nakhirhufur=’A’;
else
if(nakhirangka >=75)
nakhirhuruf=’B’;
else
if(nakhirangka >=65)
nakhirhuruf=’C’;
else
if (nakhirhuruf >=55)
nakhirhuruf =’D’;
else
nakhirhuruf=’E’;

switch (nakhirhuruf)
{
case ‘A’ : bobot = 4; break;
case ‘B’ : bobot = 3; break;
case ‘C’ : bobot = 2; break;
case ‘D’ : bobot = 1; break;
case ‘E’ : bobot = 0;
}
printf(“Nilai akhir (angka) = %.6.2f\n”,nakhirangka);
printf(“Nilai akhir (huruf) = %c\n”,nakhirhuruf);
printf(“Bobot : %d\n”,bobot);
getch ( );
}
----------------------------------------------------------------------------------------------------------------------------

Perulangan

-        # For
-        # While
-        # Do while

Inisialisasi adalah pemberian nilai saat pertama kali.
Increment adalah Penambahan.
Decrement adalah Pengurangan.

For
Akan menjalankan Mengulang jika kondisi bernilai True (benar) dan berhenti jika kondisi bernilai False (Salah).
Bentuk umum
for (Inisialisasi;kondisi;increment/decrement)statement;

Contoh Program menampilkan ke monitor kalimat “Turbo C” sebanyak 5 kali.
#include <stdio.h>
#include <conio.h>

void main ( )
{
clrscr( );
printf(“Turbo C \n”);
printf(“Turbo C \n”);
printf(“Turbo C \n”);
printf(“Turbo C \n”);
printf(“Turbo C \n”);
getch( );
}

Agar lebih mudah lagi ada program yang lebih efisien.

#include <stdio.h>
#inlude <conio.h>

void main ( )
{
int i;
clrscr ();
for (i=1; i <=5; i++)
printf (“Turbo C”);
getch ();
}
Cara kerja nya sebagai berikut :

i = 1
(i <= 5) True
Cetak  Turbo c

i = 2
(i <= 5) ó (2<=5) True
Cetak  Turbo c

i = 3
(i <= 5) ó (3 <=5) True
Cetak  Turbo c

i = 4
(i <= 5) ó (4<=5) True
Cetak  Turbo c

i = 5
(i <= 5)  Ã³ (5<=5) True
Cetak  Turbo c

While

#include <stdio.h>
#include <conio.h>

void main ( )
{
int i,n;
i = 1;

clrscr();
printf(“N = “);
scanf(“%d”,&n);
while (i <= n)
{
printf(“%d + %d = %d\n”,i,i,i+i);
}
getch ( );
}

#include <stdio.h>
#include <conio.h>

void main ( )
{
int i,n, a;
i = 1;
a = 1;
clrscr( );
printf(“N = “);
scanf(“%d”,&n);
while (i <=n)
{
a= a * i;
i =i + n;

}
printf(“%d!= %d\n”,n,a);
getch ();
}

------------------------------------------------------------------------------------------------------------------------
# Switch case

#include <stdio.h>
#include <conio.h>

void main ( )
{
Int i;
clrscr( );

switch(i)
{
case 1 = i=5; break;
case 2 = i=4; break;
case 3 = i=3; break;
case 4 = i=2; break;
case 5 = i=1;
}
getch ( );
}

  
Keterangan :

switch (variabel)
{
case nilai-1 = statement-1; break;
case nilai-2 = statement-2; break;
case nilai-n = statement-n;
}

Jika kita merubah bentuknya ke bentuk if maka contoh programnya sebagai berikut:

#include <stdio.h>
#include <conio.h>

void main ( )
{
Int i;
clrscr( );

if (i = 1)
i =5;
else
if (i = 2)
i =4;
else
if (i= 3)
i=3;
else
if (i= 4)
i=2
else
if (i= 5)
i=1;

getch ();
}
-------------------------------------------------------------------------------------------------------------------------

Contoh program yang menggunakan while

#include <stdio.h>
#include <conio.h>

void main ( );
{
int ulang;
int j;
clrscr ();
ulang =1;
j = 4;

while (ulang <=4)
{
j =j-1;
printf(“%d,%d\n”,j,ulang);
ulang = ulang +1;
}
printf(“5d,%d\n”,j, ulang);
getch( );
}


Cara kerja program :

Ulang = 1
J = 4
(i <=4) True
J= 4-1 =3
Cetak 3 1

Ulang 1 + 1=2
(2 <=4) True
J= 3-1 = 2
Cetak 2 2

Ulang 2 + 1=3
(3 <=4) True
J= 2-1 = 1
Cetak 1 3

Ulang 3 + 1=4
(4<=4) True
J= 1-1 = 0
Cetak 0 4

Ulang 4 + 1=5
(5 <=4) False
Cetak 0 5

Bentuk tampilannya di layar sebagai berikut:

3 1
2 2
1 3
0 4
0 5
------------------------------------------------------------------------------------------------------------------------
# ARRAY

Variabel berindeks
# Nama Array

# Nilai => harus seragam ( memillii tipe data yang sama).

# indeks => mengakses data secara individu.

Namun konsep array ini mempunyai sebuah kelemahan, yaitu :
Terlalu banyak makan memori, sedangkan yang di pakai hanya 1,2, 3 saja atau sedikit saja , dengan kata lain tidak efisien.

Deklarasi Array
Tipe data nama array [max indeks];

Mengakses data
Nama array [indeks];

Akses adalah sebuah proses membaca / menulis data.

Contoh :

#include <stdio.h>
#include <conio.h>

void main ();
{
int a [3];
a [3]= 3;
}
------------------------------------------------------------------------------------------------------------------------  

Contoh program bilangan genap ganjil

#include <stdio.h>
#include <conio.h>

void main ( );
{
int x;
int y;
int z;

clrscr ();
printf (“Bilangan pertama : “);
scanf(“%d”,&x);
printf(“Bilangan Kedua : “);
scanf(“%d”,&y);
z = x+y;
if (z%2 == 0)
printf(“Genap”);
else
printf(“Ganjil”);
getch ( );
}
--------------------------------------------------------------------------------------------------------------------------
 Program Sederhana :

#include <stdio.h>
#include <conio.h>

void main ( );
{
int n;
int i;

clrscr ( );
printf(“N : “);
scanf(“%d %d\n”,i,i-1);
getch ();
}
--------------------------------------------------------------------------------------------------------------------------
Contoh program Array :

Variabel       indeks =     nilai
Sama            Sama       berbeda

#include <stdio.h>
#include <conio.h>

void main ();
{
int bilangan [5];
int jumlah ;
clrscr();
bilangan [1] = 5;
bilangan [2] = 1;
bilangan [3] = 4;
bilangan [4] = 3;
bilangan [5] = 7;

jumlah = bilangan [1] + bilangan [2] + bilangan [3]+ bilangan [4] + bilangan [5];
printf(“jumlah = %d\n”,jumlah);
getch ();
}
-------------------------------------------------------------------------------------------------------------------------
Contoh 2:

#include <stdio.h>
#include <conio.h>
void main ( );
{
int bilangan [5];
int jumlah;
Int i;
Clrscr();
bilangan [1] = 5;
bilangan [2] = 1;
bilangan [3] = 4;
bilangan [4] = 3;
bilangan [5] = 7;

jumlah = 0
for(i=1;i<=5;i++)
jumlah = jumlah + bilangan [i]
printf(“Jumlah = %d\n”,jumlah);
getch( );
}

Tapi jika dipikir-pikir program ini belum efisien dan belum bisa memasukan data secara mudah untuk operator, maka di buatlah program yang lebih efisien sebagai berikut:
 
#include <stdio.h>
#include <conio.h>
void main ( );
{
int bilangan [5];
int jumlah;
int i;
int n;
clrscr();
printf(“Banyak  data : “);
scanf(“%d”,&n);

for(i=1;i<=5;i++)
{
     printf(“Bilangan ke-%d=”,i);
     scanf(“%d”,&bilangan [i]);
}
     jumlah = 0
     for(i=1;i<=5;i++)
     jumlah = jumlah + bilangan [i]
     printf(“Jumlah = %d\n”,jumlah);
getch( );
}
 


ARRAY



DIMENSI


1 DIMENSI
2 DIMENSI
3 DIMENSI

ARRAY DIMENSI (MARRIX)

Matrik   - Baris
-  Kolom

A=

B=

A11 = 1
A21 = 3
B12 = 3
B21 = 4

A+B = C

3 = C11 = A11 + B11
7 = C21 = A21 + B21
5 = C12 = A12 + B12
9 = C22 = A22 + B22

DIMENSI :
Contoh Program :

#include <stdio.h>
#include <conio.h>
void main ()
{
Int baris, kolom;
Int i,j ;
Int A[20] [20];
Int B[20] [20];
Int C[20] [20];

Clrscr();
Printf(“Banyak baris : “);
Scanf(“%d”,&baris );
Printf(“Banyak kolom : “);
Scanf(“%d”,&kolom);

For(i=1;i<=baris;i++)
     For(j=1;j<=1kolom;j++)
{
  Printf(“A[%d] [%d] : “,i,j);
  Scanf(“%d”,&A[i] [j]);
}
For(i=1;i<=baris;i++)
For(j=1;j<=kolom;j++)
{
 Printf(“B[%d] [%d] : “,i,j);
Scanf(“%d”,&B[i] [j]);
}
For(i=1;i<=baris;i++)
     For(j=1;j<=kolom;j++)
     C[j] [j] = A[i] [j] + B[i] [j];

For(i=1;i<=baris;i++)
{
   For(j=1;j<=kolom;j++)
   Printf(“%d”,& C[i] [j]);
Printf(“\n”);
}
Getch( );
}

TAMPILAN PROGRAM  :

Banyak Baris :
Baris :
Banyaj Kolom :
Kolom :

CARA KERJA PROGRAM :
i = 1
j = 1
A[1] [1] = 1 Tekan Enter
A[1] [1] = 1

J = 2
A[1] [2] = 2 Tekan Enter
A[1] [2] = 2

I = 2
J = 1
A[2] [1] = 3 Tekan Enter
A[2] [1] = 3
J = 2
A[2] [2] = 4 Tekan Enter
A[2] [2] = 4

I = 1
J = 1
B[1] [1] = 2 Tekan Enter
B[1] [1] = 2
J = 2
B[1] [2] = 3 Tekan Enter
B[1] [2] = 3

i = 2
j = 1
B[2] [1] = 4 Tekan Enter
B[2] [1] = 4
J = 2
B[2] [2] = 5 Tekan Enter
B[2] [2] = 5

I = 1
J = 1
C[1] [1] = A[1] [1] + B[1] [1]
                = 1+2 = 3
J =2
C[1] [2] = A[1] [2] + B[1] [2]
                = 2+3 = 5

I = 2
J = 1
C[1] [2] = A[2] [1] + B[1] [2]
                = 3+4 = 7
J = 2
C[2] [2] = A[2] [2] + B[2] [2]
                = 4+5 =9

I = 1
J = 1
Cetak(C[1] [1] = 3)
J = 2
Cetak(C[1] [2] = 5)

I = 2
J = 1
Cetak(C[2] [1] = 7)
J = 2
Cetak(C[2] [2] = 9)