Wednesday, July 9, 2008

Calculation

Posted by informatika.com

#include
#include
#include
#include
int hasil1;
char jawab;
int pil,a,t,p,l,s1,s2,n,b,masukan;
int L_segitiga()
{
int L1;
L1=0.5*a*t;
return L1;
}
int L_pp()
{
int L2;
L2=p*l;
return L2;
}
int L_trapesium()
{
int L3;
L3=0.5*(s1+s2)*t;
return L3;
}
int faktorial()
{
int n,b;
cout<<"Masukkan jumlah faktorial : ";cin>>n;
cout<
b=1;
for (int a=1;a<=n;a++)
{
b=b*a;
}
cout<
cout<
return b;
}
void main()
{
jawab='Y';
while(toupper(jawab)=='Y')
{
cout<
{clrscr();
cout<<" pilihan menu "<
cout<<"1. segitiga "<
cout<<"2. persegi panjang "<
cout<<"3. trapesium "<
cout<<"4. faktorial "<
cout<<"masukkan pilihan anda ? ";
cin>>p;
switch (p)
{
case 1 : cout<<"masukkan alas : ";cin>>a;
cout<<"masukkan tinggi : ";cin>>t;
hasil1=L_segitiga();
cout<<"luas adalah "<
cout<
break;
case 2 : cout<<"masukkan panjang: ";cin>>p;
cout<<"masukkan lebar: ";cin>>l;
hasil1=L_pp();
cout<<"luas adalah "<
cout<
break;
case 3 : cout<<"masukkan sisi pertama : ";cin>>s1;
cout<<"masukkan kedua : ";cin>>s2;
cout<<"masukkan tinggi : ";cin>>t;
hasil1=L_trapesium();
cout<<"luas adalah "<
cout<
break;
case 4 :faktorial();
break;
default:
cout<<"Masukan anda salah!";
}
cout<
cout<<"apakah anda ingin mengulang?Y/T _";
do{
putchar('\b');
jawab=getche();
}while(!(toupper(jawab)=='Y'||toupper(jawab)=='T'));
cout<
}}}

Phone Books

Posted by informatika.com

#include
#include
#include
#include

struct buku_telepon
{
int no;
char nama[20];
char alamat[100];
char telp[10];
buku_telepon *next;
};

typedef struct buku_telepon* BUKU_TELEPON;
BUKU_TELEPON head=NULL,tail=NULL;

BUKU_TELEPON getNode()
{
BUKU_TELEPON dataBaru;
dataBaru=(BUKU_TELEPON)malloc(sizeof(buku_telepon));
strcpy(dataBaru->nama,"");
strcpy(dataBaru->alamat,"");
strcpy(dataBaru->telp,"");
dataBaru->next=NULL;
return dataBaru;
}
void tambah()
{
BUKU_TELEPON dataBaru;
dataBaru=getNode();
printf("Nama :");
fflush(stdin);
scanf("%s", dataBaru->nama);
printf("Alamat :");
fflush(stdin);
scanf("%s", dataBaru->alamat);
printf("Telp :");
fflush(stdin);
scanf("%s", dataBaru->telp);
if(head==NULL)
{
head=dataBaru;
tail=dataBaru;
}
else
{
tail->next = dataBaru;
tail=dataBaru;
}
}
void lihat()
{
BUKU_TELEPON jalan=head;
while(jalan!=NULL)
{
printf("\n\nNo : %d\n",jalan->no);
printf("Nama : %s\n",jalan->nama);
printf("Alamat : %s\n",jalan->alamat);
printf("Telepon: %s\n",jalan->telp);
jalan=jalan->next;
}
getch();
}
BUKU_TELEPON cari(int noData)
{
BUKU_TELEPON data;
data=head;
while(data!=NULL)
{
if(data->no==noData)
return data;
else
data=data->next;
}
return data;
}
BUKU_TELEPON cariData(char str[],int piihan)
{
BUKU_TELEPON cari=head;
while(cari!=NULL)
{
if (piihan==2)
{
if(strcmp(str,cari->nama)==0)
return cari;
}
else if (piihan==3)
{
if(strcmp(str,cari->alamat)==0)
return cari;
}
cari=cari->next;
}
return cari;
}
void cariRecord()
{
BUKU_TELEPON hasil;
int no;
char pilih,nm[20],alm[100];
printf("Cari Berdasarkan apa :\n");
printf("1. No\n");
printf("2. Nama\n");
printf("3. Alamat\n");
printf("pilih :");
pilih=getch();
switch(pilih)
{
case '1' :
printf("No :");
scanf("%d",&no);
hasil=cari(no);
break;
case '2' :
printf("Nama :");
scanf("%s",&nm);
hasil=cariData(nm,2);
break;
case '3' :
printf("Alamat :");
scanf("%s",&alm);
hasil=cariData(alm,3);
break;
}
if(hasil!=NULL)
{
printf("\nHasil Pencarian");
printf("\nNama : %s",hasil->nama);
printf("\nAlamat: %s",hasil->alamat);
printf("\nTelp : %s",hasil->telp);
}
else
{
printf("\nTidak ada\n");
getch();
}
getch();
}
void masukkanData(int no,char nm[],char alm[],char telp[])
{
BUKU_TELEPON DataBaru;
DataBaru=getNode();
DataBaru->no=no;
strcpy(DataBaru->nama,nm);
strcpy(DataBaru->alamat,alm);
strcpy(DataBaru->telp,telp);
if(head==NULL)
{head=DataBaru;
tail=DataBaru;
}
else
{
tail->next=DataBaru;
tail=DataBaru;
}}
void main()
{
char pilih;
do{
clrscr();
printf("\n\nProgram Buku Buku_telepon\n");
printf("1. Tambah Record\n");
printf("2. Lihat Record\n");
printf("3. Cari Record\n");
printf("4. Keluar\n");
printf("pilih :");
pilih=getche();
printf("\n");
switch (pilih)
{
case '1' :
tambah();
break;
case '2' :
lihat();
break;
case '3' :
cariRecord();
break;

}}while(pilih!='6');}

Matrix

Posted by informatika.com

#include
#include
void main()
{
int A[3][3],B[3][3],X[3][3],Y[3][3],i,j,k,l;
cout<
cout<<" Penjumlahan Dua Matrik 3x3"<
cout<<"Matrik A"<
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
cout<<"Masukkan elemen ["<<<"]["<<<"]:";
cin>>A[i][j];
}}
cout<
cout<<"Matrik B"<
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{ cout<<"Masukkan elemen ["<<<"]["<<<"]:";
cin>>B[i][j];
}
}
/*Menampilkan isi matrik A*/
cout<
cout<<"Matrik A"<
for(i=0;i<1;i++)
{
for(j=0;j<3;j++)
cout<<<" ";
cout<
}
for(i=1;i<2;i++)
{
for(j=0;j<3;j++)
cout<<<" ";
cout<
}
for(i=2;i<3;i++)
{
for(j=0;j<3;j++)
cout<<<" ";
cout<
}
cout<

cout<<"Matrik B"<
for(i=0;i<1;i++)
{
for(j=0;j<3;j++)
cout<<<" ";
cout<
}
for(i=1;i<2;i++)
{
for(j=0;j<3;j++)
cout<<<" ";
cout<
}
for(i=2;i<3;i++)
{
for(j=0;j<3;j++)
cout<<<" ";
cout<
}
cout<
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
X[i][j]=A[i][j]+B[i][j];
}}
cout<<"Hasil Penjumlahan Matrik A dan B"<
for(i=0;i<1;i++)
{
for(j=0;j<3;j++)
cout<<<" ";
}
cout<
for(i=1;i<2;i++)
{
for(j=0;j<3;j++)
cout<<<" ";
}
cout<
for(i=2;i<3;i++)
{
for(j=0;j<3;j++)
cout<<<" ";
}}

Vocal

Posted by informatika.com

#include
char huruf;
void main()
{
cout<<"Masukkan huruf yang anda inginkan : " ;
cin>>huruf;
if (huruf!='a' && huruf!='i' && huruf!='u' && huruf!='e' && huruf!='o')
cout<<"Huruf "<<<" adalah huruf konsonan";
else
cout<<"Huruf "<<<" adalah huruf vokal";
}

Star Animation

Posted by informatika.com

#include
#include
int tinggi, baris, kolom;
char a;
void main()
{
do{
clrscr();
cout<<"Tinggi bintang : ";cin>>tinggi;
for ( baris= tinggi ; baris >= 1 ;baris-- )
{
for (kolom = baris ; kolom >= 1 ; kolom--)
cout<<'*';
cout<
}
for ( baris= 1 ; baris <= tinggi-1 ;baris++ )
{
for (kolom = 0 ; kolom <= baris ; kolom++)
cout<<'*';
cout<
}
cout<<"Apakah anda ingin mengulang (y/n) : ";
cin>>a;
}while (a!='n');
}

Capital Word

Posted by informatika.com

#include
#include
#include
#include
int b,c;
char a[100];
void main()
{
cout<<"Masukkan Kalimat = ";
cin.getline(a,sizeof(a));
b = strlen(a);
for (c=1;c<=b;c++)
a[c-1] = toupper(a[c-1]);
cout<<"Kalimat yang anda masukkan : " << a;
}

Dimensional

Posted by informatika.com

#include
#include
#include
int a;
char z;
int lingkaran()
{
const float phi=22/7;
float r,luas,keliling;
cout<<"Masukkan Jari-Jari : ";
cin>>r;
luas=phi*r*r;
cout<<"Luas Lingkaran :"<<
keliling=2*phi*r;
cout<<"Keliling Lingkaran : "<
return luas,keliling;
}
int segitiga_siku2()
{
float a,t,luas,keliling,m;
cout<<"Masukkan Panjang Alas : ";
cin>>a;
cout<<"Masukkan Panjang Tinggi : ";
cin>>t;
m=sqrt((a*a)+(t*t));
cout<<"Sisi Miring : "<<
luas=a*t*0.5;
cout<<"Luas Segitiga : "<<
keliling=a+t+m;
cout<<"Keliling Segitiga : "<
return luas,keliling;
}
int persegi_panjang()
{
int p,l,luas,keliling;
cout<<"Masukkan Panjang persegi : ";
cin>>p;
cout<<"Masukkan Lebar persegi : ";
cin>>l;
luas=p*l;
cout<<"Luas Persegi Panjang : "<<
keliling=2*(p+l);
cout<<"Keliling Persegi Panjang : "<
return luas,keliling;
}
void main()
{
do {
clrscr();
cout<<"==============================="<
cout<<"| Menu Pilihan |"<
cout<<"==============================="<
cout<<"| 1. Segitiga Siku-Siku |"<
cout<<"| 2. Lingkaran |"<
cout<<"| 3. Persegi Panjang |"<
cout<<"==============================="<
cout<<" "<
cout<<"Masukkan Pilihan Anda : ";
cin>>a;
switch (a)
{
case 1 :
segitiga_siku2();
break;

case 2 :
lingkaran();
break;

case 3 :
persegi_panjang();
break;

default:
cout<<"Pilihlah sesuai hati nuranimu.";
}
cout<
cout<<"Ketik sembarang untuk mengulang atau ketik 'n' untuk mengakhiri : ";
cin>>z;
}while (z !='n');
}

Fibonacci

Posted by informatika.com

#include
int x=1,y=1,p,i,a;
void main()
{
cout<<"Masukkan batas deret fibonacci : ";
cin>>a;
cout<<<" ";
cout<<<" ";

for (i=0;i<=a-3;i++)
{
p=x+y;
cout<

<<" ";
x=y;
y=p;
}
}

Factorial

Posted by informatika.com

#include
#include
int a;
char z;
int fibonacci()
{
int f1,f2,fn,n;
cout<<"Masukkan Jumlah Deret Fiboncci : ";cin>>n;
cout<
f1=1;
f2=1;
fn=f1+f2;
cout<<<", ";
cout<<<", ";
for (int a=0;a
{
cout<<<", ";
f1=f2;
f2=fn;
fn=f1+f2;

}
cout<
return fn;
}
int faktorial()
{
long int n,b;
cout<<"Masukkan bilangan : ";cin>>n;
cout<
b=1;
for (int a=1;a<=n;a++)
{
b=b*a;
}
cout<<"Jumlah Faktorial dari "<<<" adalah : "<
cout<
return b;
}
void main()
{
do {
clrscr();
cout<<"======================================="<
cout<<"| Menu Pilihan |"<
cout<<"======================================="<
cout<<"| 1. Program Fibonanci |"<
cout<<"| 2. Program Faktorial |"<
cout<<"======================================="<
cout<<" "<
cout<<"Masukkan Pilihan Anda : ";
cin>>a;
switch (a)
{
case 1 :
fibonacci();
break;

case 2 :
faktorial();
break;

default:
cout<<"Pilihlah sesuai hati nuranimu."<
}
cout<<"Ketik sembarang untuk mengulang atau ketik 'n' untuk mengakhiri : ";
cin>>z;
}while (z !='n');
}

matrix multiple

Posted by informatika.com

#include
void main()
{
int I,J,K,BarisA,KolomA,BarisB,KolomB;
int MatrikA[3][3],MatrikB[3][3],MatrikC[3][3];

printf("======================================================\n");
printf("| Program Perkalian 2 Buah Matrik Ahmad Nurdin Tsani |\n");
printf("======================================================\n");
printf("Jumlah Baris Matrik A : ");scanf("%d",&BarisA);
printf("Jumlah Kolom Matrik A : ");scanf("%d",&KolomA);
printf("\n");
printf("Jumlah Baris Matrik B : ");scanf("%d",&BarisB);
printf("Jumlah Kolom Matrik B : ");scanf("%d",&KolomB);
printf("\n");

printf("Masukkan Nilai Matrik A:\n");
for(I=0;I
for(J=0;J
printf("A(%3d,%3d) : ",I+1,J+1);
scanf("%d",&MatrikA[I][J]);
}
printf("\n");
}

printf("Masukkan Nilai Matrik B:\n");
for(J=0;J
for(K=0;K
printf("B(%3d,%3d) : ",J+1,K+1);
scanf("%d",&MatrikB[J][K]);
}
printf("\n");
}

for(I=0;I
for(K=0;K
MatrikC[I][K]=0;
for(J=0;J
MatrikC[I][K]+=MatrikA[I][J]*MatrikB[J][K];
}
}

printf("Hasil Perkalian 2 Buah Matrik di atas adalah:\n");

for(I=0;I
for(K=0;K
printf("\n");
}
printf("\n");
}

Conversion

Posted by computer.com

Word Commutator

Posted by computer.com

uses wincrt;
const max_elemen=20;
type str = string[20];
stack = record
elemen:array[1..max_elemen] of char;
atas : integer;
end;

var T:stack;
atas:integer;

procedure push(var a :stack; kar:char);
begin
if a.atas = max_elemen then
writeln('STACK SUDAH PENUH ')
else
begin
inc(a.atas);
a.elemen[a.atas]:= kar;
end;
end;
function pop(var a:stack):char;
begin
if a.atas = 0 then
writeln('STACK SUDAH KOSONG')
else
begin
pop:=a.elemen[a.atas];
dec(a.atas);
end;
end;
procedure konversi(var T : Stack);
var Kal:str;
i,j :integer;
begin
write('kalimat :');readln(Kal);
for i := length(Kal) downto 0 do
begin
if i <> 0 then {jika indeks kalimat belum habis lakukan push atau pop}
begin
if Kal[i] <> ' ' then {jika tidak ditemukan spasi berarti tiap huruf di-Push ke stack}
begin
push(T,Kal[i]);
end
else {jika ditemukan berarti dalam stack telah terisi satu kata}
begin
for j := 1 to T.atas do
begin
write(pop(T)); {Tulis semua huruf dalam stack}
end;
write(' ');
end;
end
else {indeks kalimat sudah habis}
begin
for j := 1 to T.atas do
write(pop(T)); {tampilkan semua huruf dalam stack yang tersisa}
end;
end;
end;
begin {Program utama}
T.atas:=0;
konversi(T);
end.

Tuesday, July 8, 2008

Data Sorting with Pascal

Posted by computer.com

uses wincrt;
var A : array [0..99] of integer ;
i,j,N,temp:integer;
pilih:char;
begin
write (' Berapa masukan anda (maks 100)='); readln(N);
for j:=0 to (N-1) do
begin
write(' Data yang ke',j+1,'=');
readln(A[j]);
end;
write('hasil ditampilkan secara ascending atau discending(a/d)?');readln(pilih);
if (pilih='a') OR (pilih='A')then
begin
for i:=1 to (N-1) do
begin
for j:=i downto 1 do
begin
if A[j] < pilih=" 'd')" pilih="'D')">A[j-1] then
begin
temp:=A[j];
A[j]:=A[j-1];
A[j-1]:=temp;
end;
end;
end;
writeln ('Hasil setelah pengurutan adalah');
for j:=0 to(N-1) do
begin
writeln(A[j]);
end;
end;
end.