Tuesday, August 24, 2010

Array Dua Dimensi

Sebelumnya kita sudah mengenal array, yaitu barisan data yang terdapat dalam satu variable dan dipisahkan dengan index. Pada array sebelumnya data yang kita miliki hanya satu baris saja. tetapi sebenarnya data yang tersimpan pada array tidak hanya sebuah baris saja.

Sebenarnya array adalah sebuah himpunan data. Pada array satu dimensi hanya terdapat satu himpunan saja. Kita bisa membuat himpunan dalam himpunan itu sendiri. Dengan bahasa lain kita bisa membuat array dalam array. Atau yang lebih umum disebut adalah kita bisa membuat array dua dimensi. Umumnya array dua dimensi digambarkan sebagai baris dan kolom. Berikut pendeklarasian array dua dimensi:

int data[3][4];

Dari deklarasi di atas, array akan memiliki 3 baris dan 4 kolom, bila digambarkan dengan tabel akan seperti:

data[0][0]data[0][1]data[0][2]data[0][3]
data[1][0]data[1][1]data[1][2]data[1][3]
data[2][0]data[2][1]data[2][2]data[2][3]

Untuk pengisian nilai (assignment/penugasan) array dua dimensi formatnya adalah sebagai berikut:

int data[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

Read more...

Friday, August 20, 2010

Aku dan BlankOn Ombilin II

Ketika saya menginstall BlankOn, saya tidak menemui kesulitan sama sekali. Petunjuk instalasinya pun mudah dipahami. Setelah proses instalasi selesai, kita juga tetap bisa masuk ( booting ) ke Windows dengan grub loading.

Setelah beberapa hari menggunakan BlankOn, saya mencoba untuk menambah satu lagi OS di hardisk saya. kemudian saya meminjam CD Ubuntu 10.4 dari teman saya. proses instalasi Ubuntu sama persi dengan blankOn. Tapi setelah instalasi selesai, saya agak kaget karena sewaktu booting, tidak terdapat pilihan untuk booting ke windows. Dengan kata lain grun loading dari Ubuntu 10.4 tidak dapat mendeteksi OS windows.

Untuk mengatasi masalah ini, saya menggunakan tool yang ada di Hirens boot CD. Namun cara yang agak saya "paksakan" gagal. Malah akibat dari pemaksaan tersebut, komputer saya sama sekali tidak dapat booting. Dilayar tampak tulisan yang mengindikasikan bahwa di hardisk saya terdapat virus. Kemudian saya mencoba menginstall ulang windows, tapi meskipun CD windows terdeteksi, proses instalasi tidak berjalan, hanya sampai "inspecting your computer hardware configuration".

Karena komputer saya sama sekali tidak bisa digunakan, saya ke warnet untuk googling mencari cara memperbaiki hardisk saya. Akhirnya saya menemukan software Bootable AVG rescue CD. Yaitu software antivirus yang mampu menscan hardisk sebelum booting OS. Tapi dengan software inipun hardisk saya tidak terdeteksi.

Saya hampir putus asa dan membawa komputer saya ke servis. Tapi kemudian saya iseng menginstall BlankOn di komputer saya yang tidak bisa di install windows tersebut. Ternyata install BlankOn bisa berhasil tanpa ada masalah sama sekali. Karena inilah saya sangat kagum dengan Linux.

Read more...

Wednesday, August 18, 2010

Aku dan BlankOn Ombilin

BlankOn adalah salah satu distro linux yang dikembangkan oleh orang Indonesia sendiri. kalo dari yang saya lihat, sepertinya BlankOn diturunkan atau dikembangkan dari Ubuntu. sekarang ini yang saya pergunakan di komputer saya adalah BlankOn Ombilin.

Sebelumnya saya sudah mencoba beberapa distro lain, misalnya Ubuntu, Debian, Fedora(gagal install), dan IGN(gagal install). Pengalaman saya mengenai distro-distro sebelum BlankOn, rasanya seumanya agak sulit untuk digunakan, dan terlalu basic. Basic maksud saya adalah tidak ada software-software dasar, misalnya, codec buat audio/video, tidak bisa mendeteksi modem GSM, dan lain lain. Sebenarnya cara untuk mengatasi masalah tersebut di internet memang banyak, tapi saya sulit mempraktekanya dan sering gagal.

Akhirnya saya mencoba blankOn Ombilin, dan sudah banyak software-software dasar yang terinstall. Yang paling saya suka adalah bisa mendeteksi modem GSM saya, meskipun terkadang tidak terdeteksi juga. Karena buat saya komputer tanpa internet sama saja dengan DVD player dengan keyboard alias pemutar multimedia saja. Bila anda ingin mencoba menginstall BlankOn atau sekedar mencicipi sja, silahkan download di http://www2.blankonlinux.or.id/unduh.

Read more...

Wednesday, August 11, 2010

Variable dan Pointer

Program berikut ini adalah contoh pengertian pointer dan variable. Perhatikan program dibawah ini untuk memahami mengenai pointer. Berikut kodenya:

#include <stdio.h>
#include <conio.h>
void main()
{
int X;//deklarasi var biasa
int *ptrY; //deklarasi var pointer
clrscr();
X=54; //pengisian nilai variable X
ptrY=&X; //Mengisikan alamat X ke pointer Y
printf("\nX = %d",X); //isi dari var X
printf("\n&X = %u",&X); //alamat memory var X
printf("\n*(&X) = %u",*(&X)); //isi di alamat pada var X
printf("\nptrY = %u",ptrY);//isi dari var pointer ptrY
printf("\n*ptrY = %d",*ptrY);//isi di alamat pada var ptrY
printf("\n&ptrY = %u",&ptrY);//alamat memory var ptrY
getch();
}

Read more...

Akses Array dengan Pointer

Pointer juga bisa digunakan untuk mengakses array. Berikut ini adalah kode untuk mencetak array menggunakan pointer

#include <stdio.h>
#include <conio.h>
void main()
{
int Nilai[5]={55,75,60,90,80};
for(int i=0;i<5;i++)
{
//akses dengan indeks array
printf("\nNilai[%d] = %d",i,Nilai[i]);
//akses dengan pointer
printf("\n*(Nilai+%d)= %i\n",i,*(Nilai+i));
}
getch();
}

Read more...

Tuesday, August 10, 2010

Fungsi Tukar

Setelah mengetahui tentang pointer, kita bisa membuat fungsi dengan pemanggilan melalui alamat (call by reference). Berikut kode programnya:

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

void tukar(int *a,int *b)
{
int temp;
temp=*a;
*a=*b;
*b=temp;
}

void main()
{
clrscr();
int x=3, y=5;
printf("\nNilai x dan y semula");
printf("\nx = %d y = %d",x,y);
printf("\n\nx berada pada alamat: %d",&x);
printf("\ny berada pada alamat: %d",&y);
tukar(&x,&y);
printf("\n\nNilai x dan y kemudian");
printf("\nx = %d y = %d",x,y);
getch();
}

Fungsi ini tidak mengembalikan nilai ke fungsi main, tapi fungsi ini merubah nilai di fungsi main berdasarkan alamat yang diberikan. Karena yang diberikan adalah alamat, jadi fungsi tukar tidak memperdulikan nama variable. Fungsi tukar ini nantinya akan banyak digunakan pada materi sorting.

Read more...

Saturday, August 7, 2010

Pointer

Arti dari pointer adalah penunjuk. Dalam bahasa C, variable pointer adalah variable yang menyimpan alamat memory. Alamat ini menunjukan lokasi dari sebuah variable. Pada pointer terdapat dua operator, yaitu ampersand (&) dan asterix (*). Operator & menghasilkan alamat dari suatu variable. Operator * menghasilkan nilai yang berada pada sebuah alamat yang ditunjuk.

Seperti halnya variabel yang lain, variabel pointer juga harus dideklarasikan terlebih dahulu sebelum digunakan. Format deklarasi pointer adalah:

<tipe_data> *<nama_variabel>
Contoh :
int *ptrX;
ptrX adalah variabel pointer untuk tipe data integer


Kegunaan dari pointer antara lain:
1. Calling by reference pada fungsi.
2. Mengirimkan array dan string dari suatu fungsi ke fungsi lain.
3. Memudahkan dalam manipulasi array.
4. Manipulasi memory dalam system.
5. Membuat struktur data dinamis seperti linklist, tree, graph.

Read more...

Thursday, August 5, 2010

Array Operation

Saya sudah membuat beberapa posting tentang operasi yang bisa dilakukan pada array, misalnya menambah (add), mengurangi(delete), mengganti (edit), dan melihat (view) satu index data saja. Setelah membuat post tentang fungsi, sekarang saya akan menggabungkan semua operasi array tersebut.

Dalam aplikasi array ini, saya menggunakan variable array dan variable biasa secara global. Hal ini untuk memudahkan dalam pemanggilan fungsi. berikut adalah kode programnya:

#include <stdio.h>
#include <conio.h>
void SemuaData();
void TambahAwal();
void TambahAkhir();
void SisipData();
void HapusData();
void HapusAkhir();
void HapusTengah();
void EditData();
void LihatData();
void InputData();
void opsi();
int data[100]={0};
int BanyakData,IndexAkses,BanyakAkses=0,index;

void main()
{
int pilihan,LetakAkses;
do
{
clrscr();
printf("Pilihan operasi: ");
printf("\n1. Input data");
printf("\n2. Tambah data");
printf("\n3. Ubah data");
printf("\n4. Hapus data");
printf("\n5. Lihat data");
printf("\n6. keluar program");
printf("\n\nPilihan anda: ");
scanf("%d",&pilihan);
switch(pilihan)
{
case 1:
clrscr();
InputData();
SemuaData();
getch();
break;
case 2:
do
{
clrscr();
printf("Letak penambahan data:");
printf("\n1. awal");
printf("\n2. sisipkan");
printf("\n3. akhir\n\n");
printf("pilihan anda: ");
scanf("%d",&LetakAkses);
switch(LetakAkses)
{
case 1:
do
{
clrscr();
TambahAwal();
SemuaData();
opsi();
scanf("%d",&pilihan);
}while(pilihan==1);
break;
case 2:
do
{
clrscr();
SisipData();
SemuaData();
opsi();
scanf("%d",&pilihan);
}while(pilihan==1);
break;
case 3:
do
{
clrscr();
TambahAkhir();
SemuaData();
opsi();
scanf("%d",&pilihan);
}while(pilihan==1);
break;
}
}while(pilihan==1);
break;
case 3:
do
{
clrscr();
EditData();
SemuaData();
opsi();
scanf("%d",&pilihan);
}while(pilihan==1);
break;

case 4:
do
{
clrscr();
HapusData();
SemuaData();
opsi();
scanf("%d",&pilihan);
}while(pilihan==1);
break;

case 5:
do
{
clrscr();
LihatData();
opsi();
scanf("%d",&pilihan);
}while(pilihan==1);
break;
}
printf("\n\nKeluar?\n");
printf("1. YA\n");
printf("2. TIDAK\n");
scanf("%d",&pilihan);
}while(pilihan==2);
}

void InputData()
{
printf("Jumlah input data: ");
scanf("%d",&BanyakData);
printf("Masukan data:\n");
for(index=0;index<BanyakData;index++)
{
printf("Data ke-%d: ",index+1);
scanf("%d",&data[index]);
}
}

void SemuaData()
{
printf("Data anda:");
for(index=0;index<BanyakData;index++)
printf("\nData ke-%d adalah: %d",index+1,data[index]);
}

void TambahAwal()
{
printf("Jumlah penambahan data:");
scanf("%d",&BanyakAkses);
for(index=0;index<BanyakData;index++)
{
data[BanyakData+BanyakAkses-index-1]=data[BanyakData-1-index];
}
printf("Masukan data tambahan:\n");
for(index=0;index<BanyakAkses;index++)
{
printf("Data ke-%d: ",index+1);
scanf("%d",&data[index]);
}
BanyakData=BanyakData+BanyakAkses;
}

void SisipData()
{
printf("Jumlah penambahan data: ");
scanf("%d",&BanyakAkses);
printf("Sisipkan pada urutan: ");
scanf("%d",&IndexAkses);
for(index=0;index<BanyakData-IndexAkses+1;index++)
{
data[BanyakData+BanyakAkses-index-1]=data[BanyakData-index-1];
}
printf("Masukan data:\n");
for(index=0;index<BanyakAkses;index++)
{
printf("Data ke-%d : ",index+1);
scanf("%d",&data[index+IndexAkses-1]);
}
BanyakData=BanyakData+BanyakAkses;
}

void TambahAkhir()
{
printf("Jumlah data: ");
scanf("%d",&BanyakAkses);
printf("Masukan data: \n");
for(index=0;index<BanyakAkses;index++)
{
printf("Data ke-%d: ",index+1);
scanf("%d",&data[BanyakData+index]);
}
BanyakData=BanyakData+BanyakAkses;
}

void EditData()
{
clrscr();
printf("Edit pada urutan: ");
scanf("%d",&IndexAkses);
printf("Data baru: ");
scanf("%d",&data[IndexAkses-1]);
}

void HapusData()
{
printf("Hapus pada urutan: ");
scanf("%d",&IndexAkses);
for(index=0;index<BanyakData-IndexAkses;index++)
{
data[IndexAkses-1-index]=data[IndexAkses-index];
}
BanyakData=BanyakData-1;
}

void LihatData()
{
clrscr();
printf("Lihat pada urutan: ");
scanf("%d",&IndexAkses);
printf("Data yang anda minta: %d",data[IndexAkses-1]);
}

void opsi()
{
printf("\n\nPilihan berikutnya:\n");
printf("1. Ulangi operasi\n");
printf("2. Kembali\n");
}

Read more...

Fungsi Faktorial Iteratif

Dalam matematika, faktorial dari bilangan asli n adalah hasil perkalian antara bilangan bulat positif yang kurang dari atau sama dengan n. Faktorial ditulis sebagai n! dan disebut n faktorial. Sebagai contoh, 7! adalah bernilai 7×6×5×4×3×2×1 = 5040. Sedang di bawah ini adalah program dengan bahasa C untuk mencari nilai faktorial dari suatu bilangan dengan fungsi iteratif:

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

/* prototype fungsi factorial() */
long int faktorial(int N);

void main()
{
int N;
long int fak;
printf("Berapa factorial ? "); scanf("%i",&N);
/* pemanggilan fungsi factorial() */
fak = faktorial(N);
printf("%i factorial = %ld\n", N, fak);
getch();
}
/* definisi fungsi factorial */
long int faktorial(int N)
{
int I;
long int F = 1;
if(N<=0)
return(0);
for(I=2; I<=N; I++)
F = F * I;
return(F);
}

Read more...

Mencari FPB dengan Fungsi Rekursif

pada matematika, FPB ( Faktor persekutuan terbesar ) adalah faktor pembagi yang sama antara dua bilangan dengan nilai terbesar. Nilai FPB dari dua buah bilangan dapat dicari dengan fungsi rekursi. Pada program ini saya melewatkan parameter ke fungsi dengan call by value. Berikut adalah programnya:

#include <stdio.h>
#include <conio.h>
#include <math.h>
int fpb(int x,int y)
{
int hasil,sisabagi;
if(y<=x && x%y==0)
{
return(y);
}
else if(x<y)
{
hasil=fpb(y,x);
return(hasil);
}
else
sisabagi=x%y;
hasil=fpb(y,sisabagi);
return(hasil);
}

main()
{
int hasil,m,n;
printf("Masukkan bilangan pertama :");
scanf("%d",&m);
printf("Masukkan bilangan kedua :");
scanf("%d",&n);
hasil=fpb(m,n);
printf("\nFPB dari kedua angka tersebut adalah %d",hasil);
getch ();
}

Read more...

Fungsi Rekursif

Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri, baik secara langsung maupun tidak langsung. Pemanggilan fungsi rekursif secara langsung berarti dalam fungsi tersebut terdapat perintah untuk memanggil dirinya sendiri sedangkan secara tidak langsung berarti fungsi rekursif memanggil 1 atau lebih fungsi lain sebelum memanggil dirinya sendiri.

Fungsi Rekursif akan terus berjalan sampai kondisi berhenti terpenuhi, oleh karena itu dalam sebuah fungsi rekursif perlu terdapat 2 blok penting, yaitu blok yang menjadi titik berhenti dari sebuah proses rekursi dan blok yang memanggil dirinya sendiri. Fungsi rekursif tidak selalu lebih jelek daripada iteratif. Ada kalanya sebuah fungsi rekursif justru mempermudah penyelesaian masalah yang ditemui pada kasus iteratif (pengulangan).

Meskipun penulisan dengan fungsi rekursif lebih singkat dari fungsi iteratif, tapi fungsi rekursif memiliki kelemahan, yaitu memerlukan memori yang lebih banyak, karena perlu tambahan untuk ‘Activation Record Stack’. Dengan demikian waktu proses lebih lama, karena perlu menjejaki setiap pemanggilan rekursif melalui ‘Activation Record’. Karena setiap pemanggilan fungsi, register dan memory harus di push ke stack maka setelah selesai pemanggilan perlu diadakannya pop stack. untuk mengembalikan memory dan register kembali ke keadaan awal, ini sering disebut sebagai overhead.

Fungsi rekursif sebaiknya digunakan pada saat penyelesaian sulit diselesaikan secara iteratif, dan juga apabila efisiensi secara rekursif sudah memadai.Perlu diperhatikan juga bahwa pemborosan (Redundancy) dapat terjadi dalam
penyelesaian masalah secara rekursif.

Read more...

Wednesday, August 4, 2010

Input dan Cetak Structure

Structure mirip dengan array, hanya saja didalam structure bisa terdapat lebih dari satu jenis type data. Apabila pada array satu index untuk satu data, pada structure satu index bisa untuk beberapa data sesuai dengan keinginan kita. Dengan structure kita seperti membuat tipe data kita sendiri. Berikut ini adalah program untuk menginput dan mencetak structure.

#include <stdio.h>
#include <conio.h>
#include <iostream.h>
/*deklarasi structure sebelum fungsi main*/
struct databuku
{
char kodebuku[10];
char namabuku[50];
int tahunterbit;
char pengarang[50];
int harga;
}buku[100];

/*data buku menjadi tipe data sedangkan buku menjadi nama variable. Pada hal ini buku adalah array yang berisi structure*/
void main()
{
int i,x,jumlahbuku;
printf("Jumlah buku: ");
scanf("%d",&jumlahbuku);

/*input data structure*/
for(i=0;i<jumlahbuku;i++)
{
printf("\nKode buku : ");
/*fungsi cin.getline untuk menginput dalam satu baris, maximal karakter adalah yang sesuai dengan yang telah ditentukan (pada perintah ini batasnya 20 karakter)*/
cin.getline(buku[i].kodebuku,20);
printf("Nama buku : ");
cin.getline(buku[i].namabuku,30);
printf("Tahun terbit: ");
scanf("%d",&buku[i].tahunterbit);
printf("Pengarang : ");
cin.getline(buku[i].pengarang,50);
printf("Harga : ");
scanf("%d",&buku[i].harga);
}

/*cetak data structure*/
clrscr();
printf("\nBuku anda:");
for(x=0;x<jumlahbuku;x++)
{
printf("\nBuku ke-%d\n",x+1);
printf("\nKode buku : ");printf("%s",buku[x].kodebuku);
printf("\nNama buku : ");printf("%s",buku[x].namabuku);
printf("\nTahun terbit: %d",buku[x].tahunterbit);
printf("\nPengarang : ");printf("%s",buku[x].pengarang);
printf("\nHarga buku : %d",buku[x].harga);
}
getch();
}

Read more...

Tuesday, August 3, 2010

Operasi Pada Persegi Dengan C++

Berikut ini saya membuat aplikasi untuk mencari elemen-elemen pada bangun persegi dengan menggunakan bahasa C++.

#include <stdio.h>
#include <conio.h>
void main()
{
float panjang,lebar,luas,keliling;
int ulangi;
do
{
clrscr();
printf("Operasi pada persegi");
printf("\n====================");
printf("\nMasukan elemen dari persegi");
printf("\nBila tidak diketahui, masukan angka 0");
printf("\nPanjang = ");scanf("%f",&panjang);
printf("\nLebar = ");scanf("%f",&lebar);
printf("\nLuas = ");scanf("%f",&luas);
printf("\nKeliling = ");scanf("%f",&keliling);
if (panjang!=0 && lebar!=0)
{
luas=panjang*lebar;
keliling=2*(panjang+lebar);
}
else if(luas!=0 && lebar!=0)
{
panjang=luas/lebar;
keliling=2*(panjang+lebar);
}
else if(luas!=0 && panjang!=0)
{
lebar=luas/panjang;
keliling=2*(panjang+lebar);
}
else if(keliling!=0 && lebar!=0)
{
panjang=(keliling/2)-lebar;
luas=panjang*lebar;
}
else if(keliling!=0 && panjang!=0)
{lebar=(keliling/2)-panjang;
luas=panjang*lebar;
}
else
{
printf("Maaf, informasi tidak mencukupi.");
}
clrscr();
printf("\nPanjang = %f",panjang);
printf("\nLebar = %f",lebar);
printf("\nLuas = %f",luas);
printf("\nKeliling = %f",keliling);
printf("\nUlangi operasi?");
printf("\n1.ya");
printf("\n2.tidak\n");
printf("(Tekan nomor pilihan lalu enter) ");
scanf("%d",&ulangi);
}while(ulangi==1);
}

Kalo ingin download aplikasinya, klik disini.

Read more...

Deret Fibonacci dengan Fungsi Rekursif

Bila pada posting sebelumnya saya menggunakan fungsi iteratif, sekarang saya menggunakan fungsi rekursif untuk mencari urutan fibonacci. Dengan fungsi rekursif, apabila bilangan yang dicari urutannya kecil, maka lebih baik menggunakan fungsi rekursif ini. Berikut ini kodenya:

#include <stdio.h>
#include <conio.h>
int fibonacci(int n);
void main()
{
int bil,urfib,ulangi;
do
{
clrscr();
printf("Bilangan fibonacci urutan ke? ");
scanf("%d",&bil);
urfib=fibonacci(bil);
printf("\nUrutan fibonacci ke %d, adalah %d",bil,urfib);
printf("\n\nApakah anda ingin mengulangi?");
printf("\n1. YA");
printf("\n2. TIDAK (keluar) ");
scanf("%d",&ulangi);
}while(ulangi==1);
}

int fibonacci(int n)
{
int fibonac;
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else
fibonac=fibonacci(n-1)+fibonacci(n-2);
return (fibonac);
}

Read more...

Deret Fibonacci dengan Bahasa C

Saya mendapat tugas untuk membuat deret bilangan fibonacci dengan bahasa C. Deret fibonacci tersebut saya buat dengan fungsi iteratif. Berikut adalah sourcecodenya:

Fungsi iteratif
#include <stdio.h>
#include <conio.h>
int fibonacci(int n);
void main()
{
int urfib,bil,ulangi;
do
{
clrscr();
printf("Cari urutan fibonacci ke? ");
scanf("%d",&bil);
urfib=fibonacci(bil);
printf("\n\nUrutan fibonacci ke %d adalah: %d",bil,urfib);
printf("\n\nApakah anda ingin mengulangi?");
printf("\n1.YA");
printf("\n2.TIDAK(keluar)");
printf("\npilihan anda? ");
scanf("%d",&ulangi);
}while(ulangi==1);
}

int fibonacci(int n)
{
int fibonac1=0,fibonac2=1,urutan,fibonac;
for(urutan=1;urutan<=n;urutan++)
{
fibonac=fibonac1+fibonac2;
fibonac2=fibonac1;
fibonac1=fibonac;
printf("\nurutan fibonaci ke %d, adalah %d",urutan,fibonac);
}
return (fibonac);
}

Read more...

Ganjil atau Genap

Berikut ini adalah program untuk menentukan apakah suatu bilangan adalah bilangan ganjil atau genap. Yang baru dari program ini adalah adanya operasi modulus yang dilambangkan dengan tanda persen (%). Modulus artinya sisa pembagian dari suatu bilangan dengan bilanga lain. misalnya 4%2 akan menghasilkan nilai 0, karena 4 bila dibagi 2 akan habis. Contoh lagi 5%2 akan menghasilkan 1, karena 5 dibagi 2 sisanya adalah 1. Berikut adalah contoh programnya:

#include <stdio.h>
#include <conio.h>
int main()
{
int angka,hasil;
printf("Masukan sebuah angka: ");
scanf("%d",&angka);
/*maksud dari kode di bawah ini adalah modulus(sisa pembagian)variable angka terhadap 2.*/
hasil=angka%2;
if(hasil==0)
{
printf("\nAngka yang anda masukan adalah angka genap");
}
else
printf("\nAngka yang anda masukan adalah angka ganjil");
getch();
}

Read more...

Sudah Tua atau Masih Muda

Sebuah program sederhana untuk mengetahui golongan usia seseorang, apakah sudah tua atau masih muda. Perintah-perintah yang digunakan adalah perintah dasar, misalnya seleksi, input dan output.

#include <stdio.h>
#include <conio.h>
int main()
{
int usia;
printf("Masukan usia anda : ");
scanf("%d",&usia);
/*jika syarat if(usia<45) tepenuhi maka perintah dalam blok if akan di eksekusi*/
if(usia<45)
{
printf("ternyata anda masih muda");
}
else
printf("ternyata anda sudah tua.");
getch();
}

Read more...

Jumlah dan Rata - rata Bilangan dengan Bahasa C

Posting saya ini masih seputar perhitungan matematika dengan bahasa C. Tapi kali ini selain praktek pengulangan DO WHILE dan saya menggunakan juga pengulangan FOR. Oh iya, saya juga mulai menggunakan ARRAY. Here's the sourcecode.

#include <conio.h>
#include <stdio.h>
void main()
{
int A[100]={1};
int ulangi,x,y=0,b;
float jumlah=0;
float rata2;
do
{
clrscr();
printf("Berapa banyaknya angka yang ingin anda jumlahkan? ");
scanf("%d",&b);
for (x=0;x<b;x++)
{
printf("\nangka ke-%d adalah: ",++y);
scanf("%d",&A[x]);
}
for (x=0;x<b;x++)
{
jumlah=jumlah+A[x];
}
rata2=jumlah/b;
printf("\nJumlah ke-%d bilangan tersebut adalah %f",b,jumlah);
printf("\nRata-rata dari semua bilangan tersebut adalah %f",rata2);
printf("\n\nUlangi perhitungan?");
printf("\n1.YA");
printf("\n2.TIDAK\n");
scanf("%d",&ulangi);
}
while(ulangi==1);
}

Read more...

Followers

followers

  © Blogger templates ProBlogger Template by Ourblogtemplates.com 2008

Back to TOP