PERHATIAN

Blog ini telah berhenti updatenya. Saya telah membuat blog baru yang lebih spesifik tentang pemrograman. Alamat blog baru saya di http://kasandolo.blogspot.com. Sebagian dari post saya di blog ini juga telah saya pindah ke blog baru saya tersebut. Semoga anda berkenan mengunjungi blog baru saya. Terima kasih.

Menambah Data Structure di Akhir

Sama seperti array, data di structure juga bisa ditambah. Berikut adalah penambahan data di akhir structure.

#include <stdio.h>
#include <conio.h>
#include <iostream.h>
void samadengan();
struct struk
{
char namabarang[50];
int jumlahbeli;
int hargasatuan;
int jumlahharga;
}belanja[1];
int main()
{
int index,jumlahbarang,jumlahtambah,jumlahbaru;
printf("Selamat datang di toko APRILMART\n");
samadengan();
printf("Berapa jumlah barang yang anda beli: ");
scanf("%d",&jumlahbarang);
printf("\nSilahkan masukan barang apa saja yang anda beli");

/*input dan pencetakan struktur*/
for(index=0;index<jumlahbarang;index++)
{
printf("\nNama barang : ");
cin.getline(belanja[index].namabarang,50);
printf("Jumlah beli : ");
scanf("%d",&belanja[index].jumlahbeli);
printf("Harga satuan: ");
scanf("%d",&belanja[index].hargasatuan);
}
clrscr();
printf("Barang yang anda beli adalah: \n");
samadengan();
for(index=0;index<jumlahbarang;++index)
{
printf("\n\nBarang ke-%d",index+1);
printf("\nNama barang : ");printf("%s",belanja[index].namabarang);
printf("\nJumlah beli : ");printf("%d",belanja[index].jumlahbeli);
printf("\nHarga satuan : ");printf("%d",belanja[index].hargasatuan);
printf("\nJumlah harga : ");printf("%d",belanja[index].jumlahbeli*belanja[index].hargasatuan);
}

/*bagian penambahan struktur*/
printf("\nBerapa jumlah barang yang ingin ditambahkan? ");
scanf("%i",&jumlahtambah);
jumlahbaru=jumlahbarang+jumlahtambah;
printf("Jumlahtambah: %d\n",jumlahtambah);
printf("\nMasukan barang tambahan:");
for(index=0;index<jumlahtambah;++index)
{
printf("\nNama barang: ");
cin.getline(belanja[jumlahbarang+index].namabarang,50);
printf("Jumlah beli: ");
scanf("%i",&belanja[jumlahbarang+index].jumlahbeli);
printf("Harga satuan: ");
scanf("%i",&belanja[jumlahbarang+index].hargasatuan);
}
/*akhir dari penambahan*/

/*pencetakan hasil akhir*/
printf("\nBarang anda sekarang adalah: %d",jumlahbaru);
for(index=0;index<jumlahbaru;index++)
{
printf("\n\nBarang ke-%d",index+1);
printf("\nNama barang : ");printf("%s",belanja[index].namabarang);
printf("\nJumlah beli : ");printf("%d",belanja[index].jumlahbeli);
printf("\nHarga satuan : ");printf("%d",belanja[index].hargasatuan);
printf("\nJumlah harga : ");printf("%d",belanja[index].jumlahbeli*belanja[index].hargasatuan);
}
getch();
}
void samadengan()
{
int x;
for(x=0;x<80;x++)
{
printf("=");
}
}


Sourcecode dan program eksekusi ada di:
tambah_akhir_structure

Read more...

Input dan Cetak Structure

Structure mirip dengan array, hanya saja didalam structure bisa terdapat lebih dari satu jenis type data. 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[1];
/*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();
}

Sourcecode dan program eksekusi ada di:
input_cetak_structure.rar

Read more...

Menambah Data di akhir Array

Penambahan data array di akhir, tidak memerlukan penggeseran data. Menurut saya penambahan data di akhir adalah yang paling mudah diantara 3 metode penambahan data array. Berikut programnya:

#include <stdio.h>
#include <conio.h>
void main()
{
int jumlahtambah,x, isi, banyakdata=5;
int a[]={10,20,30,40,50};
printf("Data anda:");
for(isi=0;isi<banyakdata;isi++)
{
printf("\nData ke-%d: %d",isi+1,a[isi]);
}
printf("\n\n\nJumlah penambahan data: ");
scanf("%d",&x);
jumlahtambah=x;

/*input data tambahan*/
for(isi=0;isi<jumlahtambah;isi++)
{
printf("\nMasukan tambahan data ke-%d: ",isi+1);
scanf("%i",&a[banyakdata+isi]);
}

/*cetak data baru*/
printf("Data anda sekarang adalah:");
for(isi=0;isi<banyakdata+jumlahtambah;isi++)
{
printf("\nData ke-%d: %d",isi+1,a[isi]);
}
getch();
}

Untuk membuktikan bahwa program ini berhasil, silahkan download program eksekusinya di:
tambah_akhir_array.rar

Read more...

Menyisipkan Data Array

Untuk menyisipkan data array di tengah, metode penggeseran data berbeda dengan menambahkan data array di depan. Pada post ini, saya ingin memberitahukan cara menambahkan data array di tengah. Berikut programnya:

#include <stdio.h>
#include <conio.h>
void main()
{
int a[]={10,20,30,40,50};
int isi, jumlahdata=5, urutantambah, jumlahtambah, jumlahdatabaru;
printf("Data anda:");
for(isi=0;isi<jumlahdata;isi++)
{
printf("\nData ke-%d: %d",isi+1,a[isi]);
}

/*penempatan data baru*/
printf("\n\nSisipkan pada urutan ke: ");
scanf("%d",&urutantambah);

/*input jumlah data tambahan*/
printf("Jumlah data yang akan ditambahkan: ");
scanf("%d",&jumlahtambah);

/*pelebaran data array*/
for(isi=0;isi<jumlahdata-jumlahtambah;isi++)
{
a[jumlahdata+jumlahtambah-isi-1]=a[jumlahdata-isi-1];
}

/*input data tambahan*/
for(isi=0;isi<jumlahtambah;isi++)
{
printf("Masukan tambahan data ke-%d: ",isi+1);
scanf("%d",&a[isi+urutantambah-1]);
}

/*cetak data baru*/
jumlahdatabaru=jumlahdata+jumlahtambah;
printf("Data anda sekarang:");
for(isi=0;isi<jumlahdatabaru;isi++)
{
printf("\nData ke-%d: %d",isi+1,a[isi]);
}
getch();
}

Sourcecode dan program eksekusinya ada di:
sisip_data_array.rar

Read more...

Menambah Data Array

Setelah kita mendeklarasikan array, kita bisa menambah data pada array tersebut. sebelum penambahan data, terlebih dahulu kita harus menyiapkan ruang untuk tempat data baru. ruang baru tersebut kita buat dengan menggeser data lama sejauh yang diperlukan. Berikut program penambahan data pada array.

#include <stdio.h>
#include <conio.h>
int main()
{
/*pendeklarasian sekaligus pengisian data array*/
int a[]={10,20,30,40,50};
int index,banyakdata=5,max=banyakdata,jumlahtambah;

/*cetak data array*/
printf("Data anda adalah:");
for(index=0;index<banyakdata;index++)
{
printf("\nDatake-%d: %d",index+1,a[index]);
}

/*proses penambahan data*/
printf("\n\nMasukan jumlah penambahan data: ");
/*jumlah tambah untuk menentukan banyaknya looping(pengukangan)*/
scanf("%d",&jumlahtambah);
/*proses penggeseran data untuk menciptakan ruang kosong di awal array*/
for(index=banyakdata+jumlahtambah;index>0;index--)
{
a[index]=a[max];
max--;
}

/*input data tambahan*/
for(index=0;index<jumlahtambah;index++)
{
printf("Masukan data tambahan: ");
scanf("%d",&a[index]);
}

/*cetak data array baru*/
printf("\n\ndata anda sekarang adalah: ");
for(index=0;index<banyakdata+jumlahtambah;index++)
{
printf("\nData ke-%d: %d",index+1,a[index]);
}
getch();
}

Untuk sourcecode dan program eksekusinya ada di:
tambah_awal_array.rar

Read more...

Memasukan dan Mencetak Data pada ARRAY

Array adalah sekumpulan data yang bertipe sama. Data-data tersebut terletak pada satu variable yang disebut variable array. Data-data tersebut disimpan pada sebuah variable berdasarkan index. Berikut adalah program untuk memasukan dan mencetak data pada array:

#include <stdio.h>
#include <conio.h>
main()
{
int data[1];
int index,banyakdata;
/*memasukan array*/
printf("Banyaknya data yang ingin dimasukan: ");
scanf("%d",&banyakdata);
printf("Masukan data anda:\n");
for(index=0;index<banyakdata;index++)
{
printf("Data ke-%d: ",index+1);
scanf("%d",&data[index]);
}

/*Mencetak array*/
printf("\n\n\nData anda andalah:");
for(index=0;index<banyakdata;index++)
{
printf("\nData ke-%d: %d",index+1,data[index]);
}
getch();
}

Sourcecode dan program aplikasi ada di:
input_dan_cetak_array.rar

Read more...

Seleksi Banyak pilihan dengan SWITCH CASE

Selain menggunakan IF ELSE, seleksi untuk banyak pilihan bisa juga menggunakan SWITCH CASE. Tetapi, metode SWITCH CASE memiliki kekurangan, yaitu hanya bisa menggunakan angka sebagai dasar seleksinya. Berikut source codenya:

#include <stdio.h>
#include <conio.h>
int main()
{
int kodehari;
printf("Kode Hari:\n");
printf("1.Senin 2.Selasa 3.Rabu 4.Kamis\n");
printf("5.Jumat 6.Sabtu 7.Minggu");
printf("\n\nPilih kode hari: ");
scanf("%d",&kodehari);

/*Menentukan variable pilihan*/
switch(kodehari)
{
/*pilihan pertama*/
/*case hanya bisa menggunakan angka,
tidak bisa dengan aljabar boolean*/
case 1:

/*perintah pada pilihan pertama*/
printf("\nAnda memilih hari Senin.");

/*akhir dari pilihan pertama*/
break;

case 2:
printf("\nAnda memilih hari Selasa.");
break;

case 3:
printf("\nAnda memilih hari Rabu.");
break;

case 4:
printf("\nAnda memilih hari Kamis.");
break;

case 5:
printf("\nAnda memilih hari Jumat.");
break;

case 6:
printf("\nAnda memilih hari Sabtu.");
break;

case 7:
printf("\nAnda memilih hari Minggu.");
break;

/*perintah yang dijalankan bila tidak ada
pilihan yang cocok*/
default:
printf("Anda memilih kode yang salah.");
}
getch();
}

Untuk file dalam format .cpp dan program eksekusinya ada di:
pilih_hari_2.zip

Read more...

Contoh IF ELSE Untuk Banyak Pilihan

Posting berikut ini adalah contoh penggunaan seleksi IF ELSE untuk banyak pilihan. Pada contoh berikut ini memang hanya untuk mencetak tulisan saja, tetapi sebenarnya seleksi IF ELSE juga bisa untuk mengerjakan operasi lain, misalnya operasi terhadap variable (penjumlahan, pengurangan, perkalian, dll....). Inilah kode programnya

#include <stdio.h>
#include <conio.h>
int main()
{
int kodehari;
printf("Kode Hari:\n");
printf("1.Senin 2.Selasa 3.Rabu 4.Kamis\n");
printf("5.Jumat 6.Sabtu 7.Minggu");
printf("\n\nPilih kode hari: ");
scanf("%d",&kodehari);
if(kodehari==1)
{
printf("\nAnda memilih hari Senin.");
}
else if(kodehari==2)
{
printf("\nAnda memilih hari Selasa.");
}
else if(kodehari==3)
{
printf("\nAnda memilih hari Rabu.");
}
else if(kodehari==4)
{
printf("\nAnda memilih hari Kamis.");
}
else if(kodehari==5)
{
printf("\nAnda memilih hari Jumat.");
}
else if(kodehari==6)
{
printf("\nAnda memilih hari Sabtu.");
}
else if(kodehari==7)
{
printf("\nAnda memilih hari Minggu.");
}
else
{
printf("Anda memilih kode yang salah.");
}
getch();
}

jika anda berminat untuk melihat, program eksekusinya ada di:
pilih_hari.zip

Read more...

Negatif, Positif atau Nol

Pada posting sebelumnya, pilihan yang diberikan hanyalah dari dua pilhan, yaitu ya atau tidak. Sekarang saya buat program dengan tiga variasi pilihan. Untuk membuatnya saya menggunakan fungsi IF ELSE. Fungsi ini bisa digunakan untuk seleksi lebih dari dua syarat. Inilah programnya:

#include <stdio.h>
#include <conio.h>
int main()
{
int angka;
printf("Masukan sebuah bilangan: ");
scanf("%d",&angka);
/*Kalau variabke angka < dari 0,
maka perintah dalam if akan dieksekusi*/
if(angka<0)
{
printf("Bilangan yang anda masukan adalah bilangan negatif");
}
/*Bila tidak angka tidak lebih kecil dari 0,
maka akan diperiksa apakah variable angka lebih besar dari 0.
bila ya, maka perintah dalam blok else if akan di eksekusi*/
else if(angka>0)
{
printf("Bilangan yang anda masukan adalah bilangan positif");
}
else
/*Bila semua syarat tidak dipenuhi,
maka perintah yang di eksekusi adalah else*/
printf("Bilangan yang anda masukan adalah angka nol");
getch();
}

Untuk program eksekusinya silahkan download di sini:
positifnegtifnol.zip

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
#include
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();
}

Untuk program eksekusinya silahkan download di:
ganjilgenap.zip

Read more...

Sudah Tua atau Masih Muda

Terkadang kita ingin program kita hanya mengeksekusi perintah bila suatu syarat terpenuhi. Misalnya saja bila kita kemsukan usia, maka bila usia kita dibawah 45 tahun program akan menampilkan tulisan bahwa kita masih muda. Untuk itu kita memerlukan sebuah perintah seleksi. Perintah seleksi diantaranya sepeti yang saya gunakan pada program di bawah ini:

#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();
}

Program eksekusinya ada di:
tuamuda.zip

Read more...

Menghitung Sisi Miring Segitiga siku-siku

Program ini dibuat untuk menghitung sisi miring segitiga siku-siku. perbedaan dari program sebelumnya adalah peggunaan fungsi sqrt(). Yaitu fungsi untuk mencari akar pangkat dua dari variabke atau angka.Berikut programnya:

//header file
#include <stdio.h>
#include <conio.h>
#include <math.h>
//fungsi utama (batang tubuh program)
int main()
{
int tinggi,alas,alaskuadrat,tinggikuadrat,sisimiringkuadrat;
float sisimiring;
printf("Menghitung sisi miring segitiga siku-siku");
printf("\n=========================================");
printf("\nMasukan tinggi segitiga : ");
scanf("%i",&tinggi);
printf("Masukan alas segitiga : ");
scanf("%i",&alas);
tinggikuadrat=tinggi*tinggi;
alaskuadrat=alas*alas;
sisimiringkuadrat=alaskuadrat+tinggikuadrat;
/*sqrt() merupakan fungsi untuk mencari akar kuadrat dari
variable atau angka di dalam kurung.
Fungsi ini memerlukan header file math.h*/
sisimiring=sqrt(sisimiringkuadrat);
printf("\nSisi miring segitiga = %f",sisimiring);
printf("\n\n\nTekan tombol apa saja untuk keluar");
getch();
}
Untuk program eksekusinya ada di:
sisimiringsikusiku.zip

Read more...

Mencari Luas dan Keliling Lingkaran

Setelah persegi, sekarang saya buat program untuk mencari luas dan keliling lingkaran. Program ini agak berbeda dengan persegi, yaitu mengenai penggunaan tipe data variable. Pada program ini saya menggunakan tipe data float, yaitu tipe data yang mampu menampung data angka pecahan. berikut adalah kodenya:

#include <stdio.h>
#include <conio.h>
int main()
{
//deklarasi variable yang bertipe float (pecahan)
float phi=3.142857;
float jari2,luas,keliling;
printf("Masukan jari-jari lingkaran: ");
//tanda %f berarti tipe data yang discan adalah float
scanf("%f",&jari2);
luas=phi*jari2*jari2;
keliling=phi*(jari2+jari2);
printf("\n\nLuas lingkarang adalah : %f",luas);
printf("\nKeliling lingkaran adalah: %f",keliling);
printf("\nTekan apa saja untuk keluar");
getch();
}

Program eksekusinya ada di sini:
luas_keliling_lingkaran.zip

Read more...

Menghitung luas persegi dengan bahasa C

Berikut ini adalah program untuk menghitung luas persegi dengan bahasa C. Pada program ini berisi mengenai deklaraai variable, pengisian variable, dan operasi aritmatika pada variable. Berikut adalah programnya:

#include <stdio.h>
#include <conio.h>
int main ()
{
//deklarasi variable dengan tipe integer
int panjang,lebar,luas,keliling;
printf(" Menghitung luas dan keliling persegi \n");
printf("===========================\n");
printf("Panjang = ");

//fungsi scanf() digunakan untuk mengambil input dari keyboard
//tanda %d adalah tipe data yang diambil
/*tanda &panjang berarti data yang di ambil tersebut
akan dimasukan ke variable panjang*/
scanf("%d",&panjang);
printf("Lebar = ");
scanf("%d",&lebar);

//perkalian variable sama seperti perkalian pada aritmatika
luas=panjang*lebar;
keliling=panjang*lebar*2;

//tanda %d pada fungsi printf berarti tipe data pada variable
printf("\nLuas persegi = %d",luas);
printf("\nKeliling persegi = %d",keliling);
printf("\n\nTekan tombol apa saja untuk keluar");
getch();
}

Untuk program eksekusinya silahkan download di sini:
luaspersegi.zip

Read more...

Hallo Dunia

Biasanya, pada setiap tutorial mengenai bahasa pemrograman, program pertama yang dibuat adalah menampilkan tulisan "hello world" di layar. Begitu juga dengan blog ini, akan saya mulai dengan ,menampilkan tulisan dengan bahasa C. Berikut adalah programnya:

#include <stdio.h>
#include <conio.h>
void main()
{
//fungsi printf() digunakan untuk mencetak sesuatu di layar
printf("Hello world");
/*fungsi getch() digunakan untuk menahan program agar tidak segera tertutup setelah mencetak tulisan*/
getch();
}

Read more...

  © Blogger templates The Professional Template by Ourblogtemplates.com 2008

Back to TOP