Selasa, 18 Januari 2011

Kalkulator Sederhana

Berikut adalah simple calculator di C++. Emang sih masih sederhana banget, tinggal kembangin aja..


//CREATED by andryh4ever
//Gretz BORNEOCREW
#include <iostream>
#include <stdio.h>

using namespace std;

int main()
{
char n,ja;
double bil1,bil2,ha;
cout << "===============================================================================\n";
cout << " SIMPLE CALCULATOR by andryh4ever";
cout << "\n===============================================================================\n";
borneo:

cout << "\n\n1. UNTUK PENJUMLAHAN";
cout << "\n2. UNTUK PENGURANGAN";
cout << "\n3. UNTUK PERKALIAN";
cout << "\n4. UNTUK PEMBAGIAN";

cout << "\n\n\nSILAHKAN MASUKKAN KODE YANG ANDA INGINKAN = ";
cin >> n;
switch (n)
{
case '1' : cout << "\nMASUKKAN BILANGAN 1 = ";
cin >> bil1;
cout << "MASUKKAN BILANGAN 2 = ";
cin >> bil2;
ha = bil1 + bil2;
cout << "\n\nHASILNYA = "; cout << ha;
break;
case '2' : cout << "\nMASUKKAN BILANGAN 1 = ";
cin >> bil1;
cout << "MASUKKAN BILANGAN 2 = ";
cin >> bil2;
ha = bil1 - bil2;
cout << "\n\nHASILNYA = "; cout << ha;
break;
case '3' : cout << "\nMASUKKAN BILANGAN 1 = ";
cin >> bil1;
cout << "MASUKKAN BILANGAN 2 = ";
cin >> bil2;
ha = bil1 * bil2;
cout << "\n\nHASILNYA = "; cout << ha;
break;
case '4' : cout << "MASUKKAN BILANGAN 1 = ";
cin >> bil1;
cout << "MASUKKAN BILANGAN 2 = ";
cin >> bil2;
ha = bil1 / bil2;
cout << "\n\nHASILNYA = "; cout << ha;
break;
default : cout << "ANDA SALAH MEMASUKKAN KODE ^.^";
break;
}
cout << "\n\n\nAPAKAH ANDA INGIN MENGULANG?? [Y/N] : ";
cin >> ja;
if ( ja == 'Y' || ja == 'y')
{
goto borneo;
}
else
{
cout << "\n\nTERIMA KASIH ^.^";
}

}







SimpleCalculator




Rabu, 12 Januari 2011

Magic Square.cpp

Berikut adalah source program Magic Square. Pasti udah tau kan Magic Square itu apa'an. Magic Square adalah suatu permainan angka yang kalo kita jumlahkan secara diagonal, horizontal maupun vertikal akan menghasilkan angka yang sama. Berikut Sourcenya :


#include <iostream>
#include <iomanip>

using namespace std;

int ReadSquareSize();
void OddMagicSquare(int** matrix, int n);
void DoublyEvenMagicSquare(int** matrix, int n);
void SinglyEvenMagicSquare(int** matrix, int n);
void MagicSquare(int** matrix, int n);
int** CreateMatrix(int n);
void FreeMatrix(int** matrix, int n);

int main(int argc, char* argv[])
{
int i,n;
n = ReadSquareSize();

int** matrix = CreateMatrix(n);

MagicSquare(matrix, n);

// print the square
for(int i=0; i<n ;i++)
{
for(int j=0; j<n ; j++)
{
cout<<setiosflags(ios::left) << setw (5) << matrix[i][j];
}
cout<<endl;
}

FreeMatrix(matrix,n);

return 0;
}


int ReadSquareSize()
{
int x;
cout<<"Enter a positive integer square size of 3 or more: ";
while(1)
{
cin>>x;
if(x>=3)
{
return x;
}
else
{
cout<<"Enter a positive integer square size of 3 or more: ";
}
}
cout<<endl;
}

void MagicSquare(int** matrix,int n)
{
if (n%2==1) //n is Odd
OddMagicSquare(matrix, n);
else //n is even
if (n%4==0) //doubly even order
DoublyEvenMagicSquare(matrix, n);
else //singly even order
SinglyEvenMagicSquare(matrix, n);
}

void OddMagicSquare(int** matrix, int n)
{
int nsqr = n * n;
int i=0, j=n/2; // start position

for (int k=1; k<=nsqr; ++k)
{
matrix[i][j] = k;

i--;
j++;

if (k%n == 0)
{
i += 2;
--j;
}
else
{
if (j==n)
j -= n;
else if (i<0)
i += n;
}
}
}

void DoublyEvenMagicSquare(int** matrix, int n)
{
int i, j;

int** I = CreateMatrix(n);
int** J = CreateMatrix(n);


//prepare I, J
int index=1;
for (i=0; i<n; i++)
for (j=0; j<n; j++)
{
I[i][j]=((i+1)%4)/2;
J[j][i]=((i+1)%4)/2;
matrix[i][j]=index;
index++;
}

for (i=0; i<n; i++)
for (j=0; j<n; j++)
{
if (I[i][j]==J[i][j])
matrix[i][j]=n*n+1-matrix[i][j];
}

FreeMatrix(I,n);
FreeMatrix(J,n);

}

void SinglyEvenMagicSquare(int** matrix, int n)
{
int i, j, k, index=0;

int p=n/2;

int** M = CreateMatrix(p);

MagicSquare(M, p);

for (i=0; i<p; i++)
for (j=0; j<p; j++)
{
matrix[i][j]=M[i][j];
matrix[i+p][j]=M[i][j]+3*p*p;
matrix[i][j+p]=M[i][j]+2*p*p;
matrix[i+p][j+p]=M[i][j]+p*p;
}

if (n==2)
return;

int* I = new int[p];
int* J = new int[n];

for (i=0; i<p; i++)
I[i]=i+1;

k=(n-2)/4;

for (i=1; i<=k; i++)
J[index++] = i;

for (i=n-k+2; i<=n; i++)
J[index++] = i;

int temp;
for (i=1; i<=p; i++)
for (j=1; j<=index; j++)
{
temp=matrix[i-1][J[j-1]-1];
matrix[i-1][J[j-1]-1]=matrix[i+p-1][J[j-1]-1];
matrix[i+p-1][J[j-1]-1]=temp;
}

//j=1, i
//i=k+1, k+1+p
i=k;
j=0;
temp=matrix[i][j]; matrix[i][j]=matrix[i+p][j]; matrix[i+p][j]=temp;

j=i;
temp=matrix[i+p][j]; matrix[i+p][j]=matrix[i][j]; matrix[i][j]=temp;

FreeMatrix(M,p);
delete[] I;
delete[] J;

}


int** CreateMatrix(int n)
{
int i;
int** matrix = new int* [n];
for(i=0;i<n;i++)
{
matrix[i] = new int[n];
}
return matrix;
}


void FreeMatrix(int** matrix, int n)
{
for(int i=0; i<n ;i++)
{
delete[] matrix[i];
}
free(matrix);
}

Screenshoot :




MagicSquare




Sabtu, 27 November 2010

Mengenal Variabel di C++

Variabel adalah suatu nama yang menyatakan tempat dalam memori komputer yang digunakan untuk menyimpan suatu nilai dan nilainya dapat diubah sewaktu-waktu ketika program sedang dieksekusi. Jadi suatu program itu membutuhkan tempat dimemori untuk datanya. Nah tempat itu dipesan dengan menggunakan variabel.

Contoh :



  • int n; = Variabel n bertipe int (untuk menyimpan bilangan bulat) dan tidak harus n tergantung pengenal apa yang nantinya kita tulis.

  • char ch; = Bariabel ch bertipe char (dipakai untuk menyimpan sebuah karakter) tidak harus ch tergantung pengenal apa yang nantinya kita tulis.

  • long int jum_penduduk; = Variabel jum_penduduk bertipe long int (dipakai untuk menyimpan bilangan bulat dengan nilai mencapai sekitar 2 milyar)

  • double jarak; = Variabel jarak bertipe double (dipaki untuk menyimpan sebuah bilangan real dengan kepresisian tinggi)





Jika ada beberapa variabel dengan tipe yang sama, pendeklarasian dapat dilakukan dengan menggunakan sebuah pernyataan saja.

Contoh :

int i,j,k;

jadi tidak perlu ditulis satu-satu.

Bookmark and Share
CopyRight © 2010 - 2011 by spyc0dz
=[ BorneoCrew ]=