You are on page 1of 16

1.

Biner
#include <stdio.h>
void kebiner(int n)
{ int y;
if(n>1)
{
kebiner(n/2);
}
y = n%2;
printf ("%d",y);
}
void main()
{int a;
printf ("PROGRAM PENGKONVERSI BIL. DESIMAL KE BINER\n\n");
printf ("Masukkan bilangan desimal yang akan dikonversi : ");
scanf ("%d",&a);
printf ("\n");
printf ("%d dalam biner adalah ", a);
kebiner(a);
printf ("\n\n");
}

2. Faktorial
#include <stdio.h>
void main()
{
int n, hasil = 1, bil = 1;
printf ("Masukkan faktorial yang anda inginkan!\n");
scanf("%d",&n);
printf (" %d! = ", n);
while (bil <= n - 1)
{
hasil = hasil * bil;
printf ("%d",bil);
bil = bil + 1;
printf (" x ");
}
hasil = hasil * bil;
printf ("%d ",bil);
printf ("= %d\n",hasil);
}

3. Rata - rata
#include <stdio.h>
void main()
{
int jmldt,jmltotal,rata;
int data,n;
printf ("Masukkan Jumlah data yang anda inginkan!\n");
scanf("%d",&jmldt);
printf ("\nJumlah data yang anda inginkan adalah %d\n",jmldt);
n = 1;
jmltotal= 0 ;
printf ("\nSilahkan masukkan nilai!\n");
do { printf ("Nilai ke-%d = ",n);
scanf ("%d",&data);
jmltotal = jmltotal + data;
n++;
}
while (n <= jmldt);
rata = jmltotal/jmldt;
printf ("\nNilai rata - rata = %d / %d = %d\n", jmltotal, jmldt, rata);
}

4. Resistor paralel
#include <stdio.h>
#include <conio.h>
void main()
{
float r, rp;
int jml, n;
rp = 0;
n = 1;
printf ("PROGRAM PENGHITUNG RESISTOR PARALEL\n\n");
printf ("Masukkan banyaknya resisitor : ");
scanf ("%d", &jml);
do {printf ("Besar resisitor ke %d : ", n);
scanf ("%f", &r);
rp= rp + 1/r;
n++;}
while (jml>= n);
printf (" hasil = %f", 1/rp);
getch ();
}

5. Deret Pengali
#include <stdio.h>
void main()
{
int b1, n, x, hasil,i=0;
printf ("PROGRAM DERET PENGALI\n\n");
printf ("Masukkan banyak deret yang diinginkan (min. 3) : ");
scanf ("%d",&n);
printf ("\nMasukkan b1 : ");
scanf ("%d",&b1);
printf ("Masukkan pengali yang diinginkan : ");
scanf ("%d",&x);
printf ("\nDeret\n%d ",b1);
do {hasil = b1 * x;
b1 = hasil;
printf ("%d ",hasil);
i++;}
while (i < n - 1);
printf ("\n");
}

6. Deret Un = U(n-2) + U(n-1)


#include <stdio.h>
void main()
{
int b1, b2, n, hasil,i;
i = 0;
printf ("PROGRAM DERET Un = U(n-2) + U(n-1)\n\n");
printf ("Masukkan banyak deret yang diinginkan (min. 3) : ");
scanf ("%d",&n);
printf ("\nMasukkan b1 : ");
scanf ("%d",&b1);
printf ("Masukkan b2 : ");
scanf ("%d",&b2);
printf ("\nBentuk deret\n");
printf ("%d %d ",b1,b2);
do {hasil = b1 + b2;
b1 = b2;
b2 = hasil;
printf ("%d ",hasil);
i++;}
while (i < n - 2);
printf ("\n\n");}

7. MinMax
#include <stdio.h>
void main()
{
int n, data, min, max, i=1;
printf ("PROGRAM PENCARI NILAI MIN. DAN MAX.\n\n");
printf ("Masukkan Banyaknya data : ");
scanf ("%d",&n);
printf ("\nMasukkan data ke %d : ", i);
scanf ("%d",&data);
min = data;
max = data;
do {printf ("Masukkan data ke %d : ", i + 1);
scanf ("%d",&data);
if (data > max) max = data;
else if (data < min) min = data;
i++;
} while (i < n);
printf ("\nNilai Min = %d\n",min);
printf ("Nilai Max = %d\n",max);
}

8. Deret 1,1,4,4,7,9,...
#include <stdio.h>
void main()
{
int b1 = 1, b2 = 2, n, i = 1,t=2;
printf ("PROGRAM DERET 1,1,4,4,7,9,...\n\n");
printf ("Masukkan N : ");
scanf ("%d",&n);
printf ("\nS%d = %d + %d ",n,b1,b2);
if (n%2!=0)
{while (i<n/2)
{b1 = b1 + 3;
b2 = (i+1) * (i+1);
t = t + b1 + b2;
printf ("+ %d + %d ", b1, b2);
++i;}
b1 = b1 + 3; printf ("+ %d ", b1)
;t = t + b1;}

while (i<n/2)
{b1 = b1 + 3;
b2 = (i+1) * (i+1);
t = t + b1 + b2;
printf ("+ %d + %d ", b1, b2);
++i;
}printf ("= %d\n\n",t);
if (n%2 != 0) printf ("U%d = %d\n",n,b1);
else printf ("U%d = %d\n",n,b2);
}

9. Deret 1/2, 2/3, 3/5, ...


#include <stdio.h>
void main()
{int n, i = 0, b1 = 1, b2 = 2, b3;
float bil1, bil2, bil3, bil4, op, hasil = 0;
printf ("PROGRAM DERET 1/2, 2/3, 3/5, ...\n\n");
printf ("Masukkan N : ");
scanf ("%d",&n);
printf ("\nS%d\n",n);
while (i< n-1)
{b3 = b2;
printf ("%d/",b1);
printf ("%d + ",b3);
bil1 = b1;
bil2 = b3;
op = bil1 / bil2;
hasil = hasil + op;
b2 = b1 + b2;
b1 = b3;
i++;
}
bil3 = b1;
bil4 = b2;
op = bil3 / bil4;
hasil = hasil + op;
printf ("%d/%d = %f",b1,b2, hasil);
printf ("\n\nU%d\n",n);
printf ("%d/%d\n",b1, b2);
}

10. Deret Pembagian


#include <stdio.h>
void main ()
{int m, n,y=0,x=2,i,k;
float a, b=0;
printf ("PROGRAM DERET PEMBAGIAN\n\n");
printf ("Masukkan N (min 2) : ");
scanf ("%d",&n);
printf ("\nBentuk deret\n");
printf (" 1\n ---\n %d",x);
for (m=3;m<=n;++m)
{
++x;
printf ("+1\n");
for (k=1;k<=m;++k) printf (" ");
printf ("---\n");
for (k=1;k<=m;++k) printf (" ");
printf ("%d",x);
}
printf ("\n\nS%d = ",n);
for (m=n;m>1;--m)
{a = m + b;
b = 1 / a;
} printf ("%f\n", b);
}

11. Program Logika And Or


#include <stdio.h>
void main ()
{int n,x,y;
printf ("PROGRAM LOGIKA AND OR\n\n");
printf (" ----------------------------\n");
printf (" | P | Q | P and Q | P or Q |\n");
printf (" ----------------------------\n");
printf (" | 0 | 0 | 0 | 0 |\n");
printf (" | 0 | 1 | 0 | 1 |\n");
printf (" | 1 | 0 | 0 | 1 |\n");
printf (" | 1 | 1 | 1 | 1 |\n");
printf (" ----------------------------\n\n");
printf ("Pilih operasi yang diinginkan\n");
printf ("1) And\n");
printf ("2) Or\n");
printf ("Masukkan nomor : "); scanf ("%d",&n);

printf ("\nMasukkan bil. pertama (1 atau 0) : "); scanf ("%d",&x);


printf ("Masukkan bil. kedua (1 atau 0) : "); scanf ("%d",&y);
if (n>2 || n<1) printf ("\nNomor yang anda masukkan salah\n");
else if (n==1)
{if (x==1 && y==1) printf ("\nNilai %d and %d adalah 1\n",x,y);
else printf ("\nNilai %d and %d adalah 0\n",x,y);}
else if (n==2)
{if (x==0 && y==0) printf ("\nNilai %d and %d adalah 0\n",x,y);
else printf ("\nNilai %d and %d adalah 1\n",x,y);}
else printf ("\nNomor yang anda masukkan salah\n");
}

12. Program Tahun Kabisat


#include <stdio.h>
void main ()
{ int th;
printf ("PROGRAM TAHUN KABISAT\n\n");
printf ("Masukkan Tahun : "); scanf ("%d",&th);
printf ("\nTahun %d ",th);
if (th%4==0 && th%100!=0 || th%400==0)
printf ("merupakan Tahun Kabisat\n");
else printf ("Bukanlah Tahun Kabisat\n");
}

13. Bilangan Sempurna


#include <stdio.h>
void main()
{int n, i = 4, a, hasil = 0, op, b;
printf ("PROGRAM BILANGAN SEMPURNA\n\n");
printf ("Masukkan batas bilangan : ");
scanf ("%d",&n);
printf ("Bilangan sempurnanya antara 0 sampai %d adalah ",n);
while (i<=n)
{a = 1;
b = i;
op = 0;
while (a<b)
{if (b%a==0) op = op + a;
++a;}
if (op==i) printf (" %d,",i);
++i;}
printf ("\n");}

14. Ascending Descending


#include <stdio.h>
void main ()
{int n, a[20], i, j, x, y;
printf ("Masukkan Banyaknya Bilangan Yang Ingin di Urutkan : ");
scanf ("%d",&n);
printf ("");
for (i=1;i<=n;++i)
{printf ("Masukkan Bilangan Ke - %d : ",i);
scanf ("%d",&a[i]);}
printf ("\nBilangan Yang Anda Masukkan\n");
for (i=1;i<n;++i)
printf ("%d, %d\n\n",a[i],a[n]);
printf ("Pilih Operasi Yang Anda Inginkan\n");
printf ("(1) Kecil - Besar\n");
printf ("(2) Besar - Kecil\n");
printf ("Masukkan Nomor : "); scanf ("%d",&y);
printf ("\n");
if (y==1)
{for (i=1;i<n;++i)
{for (j=i+1;j<=n;++j)
{if (a[i]>a[j])
{x=a[i];
a[i]=a[j];
a[j]=x;}
}}
printf ("Setelah Di Urutkan Dari Kecil Ke Besar\n");
for (i=1;i<n;++i)
printf ("%d, ",a[i]);
printf ("%d ",a[n]);
}
else if (y==2)
{for (i=1;i<n;++i)
{for (j=i+1;j<=n;++j)
{if (a[i]<a[j])
{x=a[i];
a[i]=a[j];
a[j]=x;}
}}
printf ("Setelah Di Urutkan Dari Besar Ke Kecil\n");
for (i=1;i<n;++i)
printf ("%d, ",a[i]);
printf ("%d ",a[n]);
} printf ("\n"); }

15. Bilangan Prima


#include <stdio.h>
void main()
{int bil=1, pembagi, fak,bts;
printf ("PROGRAM BILANGAN PRIMA\n\n");
printf ("Masukkan batas nilai: ");
scanf ("%d",&bts);
printf ("");
printf ("\nBilangan prima antara 0 - %d adalah\n",bts);
while (bil<=bts)
{fak=0;
pembagi=1;
while (pembagi<=bil)
{if (bil%pembagi==0)
fak++;
pembagi++;
}
if (fak==2)
printf ("%d ",bil);
bil++;
}
printf ("\n\n");
}

16. Kalender
#include <stdio.h>
void main ()
{int d, m, y, tgl, b;
printf ("Masukkan Tanggal : ");
scanf ("%d",&d);
printf ("Masukkan Bulan (Angka) : "); scanf ("%d",&m);
printf ("Masukkan Tahun : "); scanf ("%d",&y);
b = m;
if (m==1) m = 0;
else if (m==2) m = 31;
else if (m==3) m = 59;
else if (m==4) m = 90;
else if (m==5) m = 120;
else if (m==6) m = 151;
else if (m==7) m = 181;
else if (m==8) m = 112;
else if (m==9) m = 143;
else if (m==10) m = 173;
else if (m==11) m = 204;

else if (m==12) m = 234;


tgl = d + m + (y-1) * 355;
tgl = tgl + tgl/4;
tgl = tgl - tgl/100;
tgl = tgl + tgl/400;
if (m<3 && ((y%4==0 && y%100!=0) || y%400==0)) --tgl;
tgl = tgl + 4;
tgl = tgl % 7;
if (b==1)
printf ("\nPada %d Januari %d jatuh pada hari ",d ,y);
if (b==2)
printf ("\nPada %d Februari %d jatuh pada hari ",d,y);
if (b==3)
printf ("\nPada %d Maret %d jatuh pada hari ",d,y);
if (b==4)
printf ("\nPada %d April %d jatuh pada hari ",d,y);
if (b==5)
printf ("\nPada %d Mei %d jatuh pada hari ",d,y);
if (b==6)
printf ("\nPada %d Juni %d jatuh pada hari ",d,y);
if (b==7)
printf ("\nPada %d Juli %d jatuh pada hari ",d,y);
if (b==8)
printf ("\nPada %d Agustus %d jatuh pada hari ",d,y);
if (b==9)
printf ("\nPada %d September %d jatuh pada hari ",d,y);
if (b==10)
printf ("\nPada %d Oktober %d jatuh pada hari ",d,y);
if (b==11)
printf ("\nPada %d Nopember %d jatuh pada hari ",d,y);
if (b==12)
printf ("\nPada %d Desember %d jatuh pada hari ",d,y);
if (tgl==1) printf ("Senin");
if (tgl==2) printf ("Selasa");
if (tgl==3) printf ("Rabu");
if (tgl==4) printf ("Kamis");
if (tgl==5) printf ("Jum'at");
if (tgl==6) printf ("Sabtu");
if (tgl==0) printf ("Minggu");
printf ("\n");
}

17. Matrix
#include <stdio.h>
void main ()
{int o, x1,x2, y1,y2, j, i, a[100][100], b[100][100], c[100][100],k;
printf ("PROGRAM OPERASI 2 MATRIK (+,-,*)\n\n");
printf ("Masukkan matrik pertama\n");
printf ("Masukkan banyaknya baris : "); scanf ("%d",&x1);
printf ("Masukkan banyaknya kolom : "); scanf ("%d",&y1);
printf ("\nMasukkan matrik\n");
for (i=1;i<=x1;++i)
for (j=1;j<=y1;++j)
{printf ("Matrix ke %d%d : ",i,j);
scanf ("%d", &a[i][j]);}
printf ("\nBentuk matrix A%dx%d\n",x1,y1);
for (i=1;i<=x1;++i)
{printf ("| ");
for (j=1;j<=y1;++j)
printf ("%d ", a[i][j]);
printf ("|\n");}
printf ("\nMasukkan matrik kedua\n");
printf ("Masukkan banyaknya baris : "); scanf ("%d",&x2);
printf ("Masukkan banyaknya kolom : "); scanf ("%d",&y2);
printf ("\nMasukkan matrik\n");
for (i=1;i<=x2;++i)
for (j=1;j<=y2;++j)
{printf ("Matrix ke %d%d :",i,j);
scanf ("%d", &b[i][j]);}
printf ("\nBentuk matrix B%dx%d\n",x2,y2);
for (i=1;i<=x2;++i)
{printf ("| ");
for (j=1;j<=y2;++j)
printf ("%d ", b[i][j]);
printf ("|\n");}
printf ("\nPilih operasi yang diinginkan\n");
printf ("1) Penjumlahan\n");
printf ("2) Pengurangan\n");
printf ("3) Perkalian\n");
printf ("Masukkan nomor : "); scanf ("%d",&o);
printf ("\nHasil dari\n");
for (i=1;i<=x1;++i)
{printf ("| ");
for (j=1;j<=y1;++j)
printf ("%d ", a[i][j]);
printf ("|\n");}

printf ("\n");
for (i=1;i<=x2;++i)
{printf ("| ");
for (j=1;j<=y2;++j)
printf ("%d ", b[i][j]);
printf ("|\n");}
printf ("---------------- ");
// RUMUS PENJUMLAHAN
if (o==1)
{printf ("(+)\n"); if (x1==x2&&y1==y2)
{for (i=1;i<=x1;++i)
{printf ("\n| ");
for (j=1;j<=y1;++j)
{c[i][j] = a[i][j] + b[i][j];
printf ("%d ", c[i][j]);} printf ("|");
}}
else printf ("Ordo Tidak Sesuai");
}
// RUMUS PENGURANGAN
if (o==2)
{printf ("(-)\n"); if (x1==x2&&y1==y2)
{for (i=1;i<=x1;++i)
{printf ("\n| ");
for (j=1;j<=y1;++j)
{c[i][j] = a[i][j] - b[i][j];
printf ("%d ", c[i][j]);} printf ("|");
}}
else printf ("Ordo Tidak Sesuai");
}
// RUMUS PERKALIAN
if (o==3)
{printf ("(x)\n");if (y1==x2)
{for (i=1;i<=x1;++i)
{printf ("\n| ");
for (j=1;j<=y2;++j)
{c[i][j]=0; for (k=1;k<=y1;++k) c[i][j] = c[i][j] + a[i][k] * b[k][j];
printf ("%d\t", c[i][j]);} printf ("|");
}}
else printf ("Ordo Tidak Sesuai");
}
printf ("\n\n");
}

18. Perkalian Matrix


#include <stdio.h>
void main ()
{int n, i, j,x;
printf ("PROGRAM PERKALIAN MATRIKS\n\n");
printf ("Masukkan N : ");
scanf ("%d",&n);
printf ("\nBentuk matrik\n\n ");
for (i=1;i<=n;++i)
printf ("%d ",i);
printf ("\n ");
for (i=1;i<=n*2;++i)
printf ("-",i);
printf ("\n");
for (i=1;i<=n;++i)
{printf ("%d| ",i);
for (j=1;j<=i;++j)
{x = j * i; printf ("%d ",x);
}
printf ("\n");
}
}

19. Pascal
#include <stdio.h>
void main()
{int n, a [100][100], i, j,s, c;
printf ("PROGRAM PASCAL\n\n");
printf ("Masukkan N : "); scanf ("%d",&n);
a[1][1]=1;
for (c=1;c<n;++c) printf (" ");
printf ("%d\n",a[1][1]);
for (i=2;i<=n;++i)
{for (s=1;s<=(n-i);++s) printf (" ");
a[i][1]=1;
printf ("%d ", a[i][1]);
for (j=2;j<i;++j)
{a[i][j]=a[i-1][j-1]+a[i-1][j];
printf ("%d ",a[i][j]);}
a[i][j] = 1;
printf ("%d",a[i][j]);
printf ("\n"); }}

20. Binary Search


#include <stdio.h>
void main ()
{int nrp[] = {1,2,3,4,5,6,7,8,9,10};
int nilai[] = {91,92,93,94,95,96,97,98,99,100};
int n, tgh ,akhir = 9, awal=0, i;
printf ("PROGRAM BINARY SEARCH\n\n");
printf ("Daftar nilai:\n");
printf ("Nrp Nilai\n");
for(i=0;i<akhir;++i) printf ("%d %d\n",nrp[i], nilai[i]);
printf ("%d %d\n",nrp[akhir], nilai[akhir]);
printf ("\nMasukkan NRP anda: ");
scanf ("%d",&n);
if (n>10||n<1) printf ("NRP tidak ditemukan\n\n");
else if (n<=10||n>=1)
{tgh = 9/2;
while (nrp[tgh]!=n)
{if (n < nrp[tgh]) akhir = tgh - 1;
else awal = tgh +1;
tgh = (awal + akhir) / 2;
}
printf ("Nilai NRP %d adalah %d\n\n",n, nilai[tgh]);}
}

21. Sort Simple


#include <stdio.h>
void main()
{int n, a[100], i, b, s, k,j;
printf ("PROGRAM SORT SIMPLE\n\n");
printf ("Masukkan banyaknya bilangan : "); scanf ("%d",&n);
printf ("\nMasukkan bilangan ( pastikan n < (n-1) )\n");
for (i=1;i<=n;++i)
{printf ("Masukkan bilangan ke %d : ",i); scanf ("%d",&a[i]);}
printf ("\nBilangan sebelum diurutkan\n");
for (i=1;i<=n;++i)
printf ("%d",a[i]);
printf ("\n\nBilangan setelah diurutkan\n");
for (i=1;i<n;++i)
{b=0;
for (k=i+1;k<=n;++k)
{if (a[i] > a[k])
{if (b+k==k)b = k;
}else ;}
if(b>=0)

{s= a[i];
a[i]= a[b];
a[b]=s;}
else a[i]=a[i];
for (j=i;j<=n;++j)
{printf ("%d",a[j]);}
printf ("\n");
}
printf ("%d\n",a[n]);
}

22. Fungsi bintang rata kiri, kanan , tengah, diamond


#include <stdio.h>
void kiri (int n);
void kanan (int n);
void tengah (int n);
void diamond (int n);
void main ()
{ int n;
printf ("PROGRAM PENGGUNAAN FUNGSI\n\n");
printf ("Masukkan N\n"); scanf ("%d",&n);
printf ("\n Rata Kiri\n"); kiri (n);
printf ("\n Rata Kanan\n"); kanan (n);
printf ("\n Segitiga\n"); tengah (n);
printf ("\n Bujur Sangkar\n"); diamond (n);
}
void kiri (int n)
{ int i, j;
for (i=1;i<=n;++i)
{for (j=1;j<=i;++j) printf ("*");
printf ("\n");
}
}
void kanan (int n)
{ int i, j, s;
for (i=1;i<=n;++i)
{for (s=1;s<=(n-i);++s) printf (" ");
for (j=1;j<=i;++j) printf ("*");
printf ("\n");
}
}

void tengah (int n)


{ int i, j, s;
for (i=1;i<=n;++i)
{for (s=1;s<=(n-i);++s) printf (" ");
for (j=1;j<=(2*i-1);++j) printf ("*");
printf ("\n");
}
}
void diamond (int n)
{ int i, j, s;
for (i=1;i<=n;++i)
{for (s=1;s<=(n-i);++s) printf (" ");
for (j=1;j<=(2*i-1);++j) printf ("*");
printf ("\n");
}
for (i=1;i<n;++i)
{for (s=1;s<=i;++s) printf (" ");
for (j=2;j<=2*(n-i);++j) printf ("*");
printf ("\n");
}
}

You might also like