Showing posts with label Pascal. Show all posts
Showing posts with label Pascal. Show all posts

uses wincrt;
var
tahun : integer;

begin
writeln('      Program menentukan tahun kabisat by:muyufar.blogspot.com');
writeln('                     ___======================___');
writeln(' ');
write ('                             Tahun Berapa ?:'); readln (tahun);
     if (tahun mod 100 = 0) then

     begin
          if tahun mod 400=0 then
          writeln ( '                         Tahun ini adalah Tahun kabisat' )

     else
         writeln ( '                  bukan tahun Kabisat:');
                   
end

else
begin
     if (tahun mod 4 = 0) then
        writeln ( 'tahun kabisat' )
     else
         writeln(' ');
         writeln ( '                          Tahun ini bukan tahun kabisat' );
end;
end.




artikel tentang Menentukan tahun kabisat ini semoga membantu..!!!





Program Kasir,




Program Kasir;
uses wincrt;
var nama_barang : array[1..20] of string;
harga : array[1..20] of real;
banyak : array[1..20] of byte;
kata,grs :string;
x,y,i,j :byte;
Jum_Harga,Total_Harga,disc,Total_Bayar,uang :real;
begin
clrscr;
grs:='===============================================================';
kata:='Program Kasir';
x:=round((78-length(kata))/2);
gotoxy(x,2);writeln(kata);
x:=round((78-length(grs))/2);
gotoxy(x,3);write(grs);
{-----------------------------}
gotoxy(x,4);write('Data Belanja');
gotoxy(x,5);write(grs);


gotoxy(x,6);writeln('| No | Nama Barang | Harga Satuan |
Banyak | Jumlah Harga |');
gotoxy(x,7);write(grs);
{--------------------------------------------------------------------}
i:=0;
Total_Harga:=0;
repeat
i:=i+1;
gotoxy(x,7+i);write('| ',i);
gotoxy(x+5,7+i);write('|');
gotoxy(x+7,7+i);readln(Nama_barang[i]);
if Nama_Barang[i] <>'' then begin
gotoxy(x+25,7+i);write('|');
gotoxy(x+28,7+i);readln(Harga[i]);
gotoxy(x+28,7+i);writeln(Harga[i]:10:2);
gotoxy(x+41,7+i);write('|');
gotoxy(x+44,7+i);readln(Banyak[i]);
gotoxy(x+50,7+i);write('|');
Jum_Harga:=Harga[i]*Banyak[i];
gotoxy(x+53,7+i);writeln(Jum_Harga:10:2);
gotoxy(x+65,7+i);writeln('|');
Total_Harga:=Total_Harga+Jum_Harga ; end;
until nama_barang[i]='';
{--------------------------------------------------------------------}
disc:=0;
if (Total_Harga > 10000) and (Total_Harga <100000) then
disc:=0.05 * Total_Harga
else
if (Total_Harga >= 100000 ) then
disc:=0.1 *Total_Harga;
{--------------------------------------------------------------------}
kata:='Faktur Penjualan';
y:=round((78-length(kata))/2);
gotoxy(y,2);writeln(kata);
j:=i-1;
gotoxy(x,8+j);write(grs);
gotoxy(x,8+j+1);write('Total Belanja :');
gotoxy(x+53,8+j+1);write(Total_Harga:10:2);
gotoxy(x,8+j+2);write('Discount :');
gotoxy(x+53,8+j+2);write(disc:10:2);
gotoxy(x,8+j+3);write(grs);
gotoxy(x,8+j+4);write('Total Bayar setelah discount :');
Total_Bayar:=Total_Harga-disc;
gotoxy(x+53,8+j+4);write(Total_Bayar:10:2);
gotoxy(x,8+j+5);write('Uang diBayar');
gotoxy(x+53,8+j+5);readln(Uang);
gotoxy(x+53,8+j+5);writeln(Uang:10:2);
gotoxy(x,8+j+6);Write(grs);
gotoxy(x,8+j+7);write('Uang Kembali');
gotoxy(x+53,8+j+7);write(Uang-Total_Bayar:10:2);
end.








Program Contoh Array




Program contoh_array;
uses wincrt;
var
x:array[1..10] of integer;
i,jum,n : integer;
begin
clrscr;
jum:=0;
write('Masukkan data =');readln(n);
for i:= 1 to n do
begin
write('Data ke-',i ,'=');readln(x[i]);
jum:=jum+x[i];
end;
writeln('Jumlah = ',jum);
end.








Program Menghitung Banyak Huruf Dalam Kalimat






program banyak_huruf_dalam_kalimat;
uses wincrt;
var n:array[1..26] of integer;
i,j:integer;
kata : String;
begin
for i:=1 to 26 do n[i]:=0;
write('Ketikkan sebuah kalimat : ');readln(kata);
for i:=1 to length(kata) do
for j:=1 to 26 do
if ord(upcase(kata[i]))=64+j then
inc(n[j]);
for i:=1 to 13 do
writeln(chr(64+2*i-1),' = ',n[2*i-1],' ',chr(64+2*i),' =
',n[2*i]);
end.




Program Menghitung Banyak Vokal,


Program Menghitung_Banyak_Vokal ;
uses wincrt;
var
nama :string;
i,vok :integer;
BEGIN
clrscr;
vok:=0;
write('Banyak Vokal dalam kalimat berikut =');readln(nama);
for i:=1 to length(nama) do
case nama[i] of
'A','a','U','u','I','i','E','e','O','o':vok:=vok+1;
end;
writeln('Jumlah Vokalnya :',vok);
READLN;
END. 



Uses WinCrt;
Var
des,desi : integer;
Bin : String;
Begin
Write('Masukkan Suatu Bilangan Desimal :');Readln(des);
desi:=des;
bin:='';
repeat
if(des mod 2 = 0) then bin:='0'+bin
else bin:='1' + bin;
des:=des div 2;
until des=0;
writeln('(',desi,') desimal =',bin,' (Biner)');
end.


program mendeteksi_bil_prima;
uses wincrt;
var
bil,i,x :word;
prima :boolean;
batas :integer;
lagi :char;
begin
repeat
clrscr;
write('Masukkan bilangan :');read(bil);
batas:=round(sqrt(bil))+1;
prima:=true;
if (bil=2 ) or (bil=3) then
prima:=true
else
for i:= 2 to batas do
if bil mod i = 0 then
prima:=false;
if prima = true then
writeln(bil,' Adalah prima')
else
writeln(bil,' Bukan prima');
write('Lagi......[Y/T]');lagi:=upcase(readkey);
writeln(lagi);
until lagi <> 'Y';
end.

program cacah_data;
uses wincrt;
var
x:array[1..10] of integer;
i,n,jum,njum:integer;
rata:real;
begin
clrscr;
jum:=0;
write('Masukkan cacah data =');readln(n);
for i:= 1 to n do
begin
write('Masukkan data ke-',i, '=');readln(x[i]);
jum:=jum+x[i];
njum:=njum+1;
Rata:=jum/njum;
end;
writeln('Jumlah = ',jum);
writeln('Rata-rata = ',rata:0:2);
end.

 

Program menghitung_jumlah_ganjil_genap_dan_reratanya;
uses wincrt;
var
data:array[1..100] of integer;
n,i:integer;
jumGanjil,nGanjil,JumGenap,nGenap:integer;
rataGenap,rataGanjil:real;
begin
jumGenap:=0;
nGenap:=0;
jumGanjil:=0;
nGanjil:=0;
write('Masukkan banyak data =');readln(n);
for i:= 1 to n do
begin
write('Data ke ',i,' =');readln(data[i]);
if data[i] mod 2 =0 then
begin
jumGenap:=jumGenap+data[i];
nGenap:=nGenap+1;
end
else
begin
jumGanjil:=JumGanjil+data[i];
nGanjil:=nGanjil+1;
end;
end;
rataGenap:=jumGenap/nGenap;
rataGanjil:=jumGanjil/nGanjil;
writeln('Cacah Genap = ',nGenap,' rata-rata Genap =
',rataGenap:0:2);
writeln('Cacah Ganjil = ',nGanjil,' rata-rata Ganjil =
',rataGanjil:0:2);
writeln('Jumlah Genap = ',jumGenap);
writeln('jumlah Ganjil = ',JumGanjil);
end.

Program Menghitung Koefisien Persamaan Regressi;
uses wincrt;
type data=array[1..100]of integer;
var
x,y :data;
N,d,j :Integer;
ratax,ratay :real;
SXY,SX,SX2,SY:real;
A,B :real;
{--------------------------------------------------------------------}
Procedure Regressi;
begin
N:=0;
repeat
write('Nilai data x= ');readln(d);
if d<>0 then begin
N:=N+1;
x[N]:=d;
write('Nilai data y = ');readln(y[N]);
end;
until d=0;
SXY:=0; SX:=0; SX2:=0; SY:=0;
for j:= 1 to N do
begin
SXY:=SXY+x[j]*y[j];
SX:=SX+x[j];
SY:=SY+y[j];
SX2:=SX2+x[j]*x[j];
end;
A:=((SX2-(SX)*SY))/N;
A:=A/(SX2-(SX*SX)/N);
ratay:=SY/N;
ratax:=SX/N;
B:=ratay-A*rataX;
writeln('N= ',N);
writeln('Jumlah x= ',SX:0:2);
writeln('Jumlah y= ',SY:0:2);
writeln('Jumlah x dikali y =',SXY:0:2);
writeln('Jumlah x kwadrat=',SX2:0:2);
writeln('Rata-rata x=',ratax:0:2);
 writeln('Rata-rata y=',ratay:0:2);
writeln('Y= ', A:0:2,'X- ', B:0:2);
end;
begin
regressi;
end.

program nilai_mahasiswa;
uses wincrt;
const sks:array[1..8] of integer=(2,2,2,2,2,2,1,1);
type
siswa=record
nim:string[5];
nama:string[15];
Nihur:array[1..8] of char;
end;
type kuliah=array[1..2] of siswa;
var kul:kuliah;
{--------------------------------------------------------------------}
function bobot(huruf:char):integer;
begin
case upcase(huruf) of
'E':bobot:=0;
'D':bobot:=1;
'C':bobot:=2;
'B':bobot:=3;
'A':bobot:=4;
end;
end;
{--------------------------------------------------------------------}
procedure masuk(var kul:kuliah);
var i,j,bbt,jumus,jumsks:integer;
ip:real;
begin
jumsks:=0;
gotoxy(20,1);writeln('PENGOLAHAN NILAI PRA ILKOM 2003');
for i:=1 to 8 do
jumsks:=jumsks+sks[i];
gotoxy(1,3);writeln('No. No.Mhs Nama Mk1 Mk2 Mk3 Mk4
Mk5 Mk6 Mk7 Mk8 IP Ket');
for i:=1 to 19 do begin
jumus:=0;
gotoxy(1,3+i);writeln(i);
gotoxy(6,3+i);readln(kul[i].nim);
gotoxy(15,3+i);readln(kul[i].nama);
for j:=1 to 8 do begin
gotoxy(24+j*5,3+i);readln(kul[i].nihur[j]);
bbt:=bobot(kul[i].nihur[j]);
jumus:=jumus+bbt*sks[j];
end;
ip:=jumus/jumsks;
gotoxy(28+j*5,3+i);writeln(ip:0:2);
if ip>2.75 then begin
gotoxy(34+j*5,3+i);writeln('Lolos');
end
else begin
gotoxy(34+j*5,3+i);writeln('Gagal');
end;
end;
end;
{--------------------------------------------------------------------}
begin
masuk(kul);
end.