Ernidwip’s Blog

Just another WordPress.com weblog

Tugas Pascal 4

Buatlah program untuk melakukan perekaman dg ktentuan sbb:

- Gunakan Record untuk perekaman data seperti masukkan di bawah ini :

DEALER MOTOR “JAYA”

Nama Pembeli : ___________

Data Motor :

- Merk Motor : ___________

- Jenis Motor : ___________

- Harga Motor : Rp.___________

Jenis Bayar [Tunai/Kredit] : _________

Masukkan Data Lagi [Y/T] : _________

- Buatlah Function untuk menentukan diskon

- Diskon diberikan dari harga motor

- Buatlah Function urut data untuk mengurutkan data

- Buatlah Function cetak data untuk mencetak data

Merk

Diskon
Tunai Kredit
Honda 20% 5%
Yamaha 20% 7%
Kawasaki 20% 6%

Tampilan Keluaran :

DEALER MOTOR “JAYA”

No. Nama Pembeli Merk Harga JenisBayar Diskon JumlahBayar
———————————————————————————————-
1. Rp. Rp.

2. Rp. Rp.
———————————————————————————————-
Total Bayar Rp.

Maka Listingnya adalah :

program lat_fungsi;
uses crt;

type
simpan = record
tipebayar, nama,merk,jenis : string;
harga : real;
end;

var masukan : array [1..10] of simpan;
pil_merk, jenisbayar, tanya : char;
hitungdisc, disc, total, jmlbayar : real;
i,max : integer;
label lagi;

function diskon(var x, y : string) : real;
begin
   if x = 'Honda' then
   begin
       if y = 'Tunai' then
            diskon := 0.2
       else if y = 'Kredit' then
            diskon := 0.05;
    end
    else if x = 'Yamaha' then
    begin
        if y = 'Tunai' then
            diskon := 0.2
        else if y = 'Kredit' then
            diskon := 0.07;
    end
    else if x = 'Kawasaki' then
    begin
        if y = 'Tunai' then
            diskon := 0.2
        else if y = 'Kredit' then
            diskon := 0.06;
    end;
end;

function hitungdiskon(var a,b : real) : real;
begin
hitungdiskon := a * b;

end;

begin
max := 0;
lagi:
clrscr;
max := max + 1;
writeln('DEALER MOTOR JAYA');
writeln('=================');
writeln;
write('Nama Pembeli : ');readln(masukan[max].nama);
writeln('Data Motor   : ');
write(' - Merk Motor [H/Y/K]: '); readln(pil_merk);
   if upcase(pil_merk) = 'H' then
   begin
       masukan[max].merk := 'Honda';
   end
   else if upcase(pil_merk) = 'Y' then
   begin
       masukan[max].merk :='Yamaha';
   end
   else if upcase(pil_merk) = 'K' then
   begin
       masukan[max].merk := 'Kawasaki';
   end;

write(' - Jenis Motor       : '); readln( masukan[max].jenis);
write(' - Harga motor       : Rp. '); readln(masukan[max].harga);
write(' - Jenis bayar [T/K] : '); readln(jenisbayar);
if upcase(jenisbayar) = 'T' then
masukan[max].tipebayar := 'Tunai'
else
masukan[max].tipebayar := 'Kredit';

writeln;
writeln;
write(' Masukkan data lagi ? [Y/N] : ');readln(tanya);
if upcase(tanya) = 'Y' then goto lagi;
{output}
clrscr;
writeln('DEALER MOTOR "JAYA"');
writeln('=================================================================');
writeln('No  Pembeli   Merk      Harga   Jns_Bayar    Diskon    Jml_Bayar');
writeln('=================================================================');
for i := 1 to max do
begin
jmlbayar := 0;
gotoxy(1,5+i);write(i);
gotoxy(5,5+i);write(masukan[i].nama);
gotoxy(15,5+i);write(masukan[i].merk);
gotoxy(25,5+i);write(masukan[i].harga:2:0);
gotoxy(35,5+i);write(masukan[i].tipebayar);
disc := diskon(masukan[i].merk,masukan[i].tipebayar);
{gotoxy(5,5+i);write(disc:2:2);write('   ');}
hitungdisc := hitungdiskon(disc,masukan[i].harga);
gotoxy(47,5+i);write(hitungdisc:2:0);
jmlbayar := masukan[i].harga - hitungdisc;
gotoxy(57,5+i);writeln(jmlbayar:2:0);
total := total + jmlbayar;
end;
writeln('==================================================================');
writeln('                                       Total Bayar :Rp. ',total:2:0);
readln;
end.

Hasil Input :

input

Hasil Output :
output

Juni 8, 2009 Ditulis oleh ernidwip | Uncategorized | | Belum Ada Tanggapan

Tugas Pascal 3

Fungsi (function) merupakan bagian program terpisah seperti prosedur. Fungsi dapat berupa fungsi standart (fungsi yang sudah disediakan pascal) atau fungsi yang dibuat sendiri oleh user. Dalam pendeklarasian fungsi hampir sama dengan prosedur, hanya saja fungsi harus dideklarasikan dengan tipe datanya.

Bentuk Umum : Function indentifier(daftar-parameter):type;

Berikut ini adalah contoh soal Function pada Pascal :

>> Buatlah Program Hitung Nilai dengan ketentuan sebagai berikut :

=> Layar Masukkan (Input) :

input_tgs3

=> Berikut ini adalah listingnya :

program lat_function;

uses crt;

function n_akhir(var nm,nf,nt,na : real):real;

begin

na:=(nm*0.3)+(nf*0.3)+(nt*0.4);

end;

function grade(g : real):char; //type data function indentifier dan daftar parameternya bisa berbeda

begin

if g >= 85 then

grade := ‘A’

else

if g >= 76 then

grade := ‘B’

else

if g >= 67 then

grade := ‘C’

else

grade := ‘D’;

end;

var nama:string;

mid, final, mandiri, akhir, a, b, c, d :real;

begin

clrscr;

writeln(‘Hitung Nilai’);

writeln(‘————’);

writeln;

write(‘Nama Siswa : ‘); readln(nama);

write(‘Nilai Mid Test : ‘); readln(mid);

write(‘Nilai Final test : ‘); readln(final);

write(‘Nilai Tugas Mandiri : ‘); readln(mandiri);

clrscr;

writeln(‘Hasil Perhitungan’);

writeln(‘—————–’);

writeln;

writeln(‘Nama Siswa : ‘, nama);

a:=mid*0.3;

writeln(‘Nilai Mid Test : ‘, mid:0:0, ‘* 30 % : ‘, a:0:0);

b:=final*0.3;

writeln(‘Nilai Final test : ‘, final:0:0, ‘* 30 % : ‘, b:0:0);

c:=mandiri*0.4;

writeln(‘Nilai Tugas Mandiri : ‘, mandiri:0:0, ‘* 40 % : ‘, c:0:0);

writeln(‘———————————————-’);

akhir:=a+b+c;

writeln(‘Nilai Akhir : ‘, akhir:0:0);

writeln(‘Grade : ‘, grade(akhir));

readln;

end.

=> Layar Keluaran (output) :

output_tgs3

Semoga Bermanfaat ^_^

program lat_function;

uses crt;

function n_akhir(var nm,nf,nt,na:real):real;

begin

na:=(nm*0.3)+(nf*0.3)+(nt*0.4);

end;

function grade(g:real):char;

begin

if g >= 85 then

grade := ‘A’

else

if g >= 76 then

grade := ‘B’

else

if g >= 67 then

grade := ‘C’

else

grade := ‘D’;

end;

var nama:string;

mid, final, mandiri, akhir, a, b, c, d :real;

begin

clrscr;

writeln(‘Hitung Nilai’);

writeln(‘————’);

writeln;

write(‘Nama Siswa : ‘); readln(nama);

write(‘Nilai Mid Test : ‘); readln(mid);

write(‘Nilai Final test : ‘); readln(final);

write(‘Nilai Tugas Mandiri : ‘); readln(mandiri);

clrscr;

writeln(‘Hasil Perhitungan’);

writeln(‘—————–’);

writeln;

writeln(‘Nama Siswa : ‘, nama);

a:=mid*0.3;

writeln(‘Nilai Mid Test : ‘, mid:0:0, ‘* 30 % : ‘, a:0:0);

b:=final*0.3;

writeln(‘Nilai Final test : ‘, final:0:0, ‘* 30 % : ‘, b:0:0);

c:=mandiri*0.4;

writeln(‘Nilai Tugas Mandiri : ‘, mandiri:0:0, ‘* 40 % : ‘, c:0:0);

writeln(‘———————————————-’);

akhir:=a+b+c;

writeln(‘Nilai Akhir : ‘, akhir:0:0);

writeln(‘Grade : ‘, grade(akhir));

readln;

end.

Mei 28, 2009 Ditulis oleh ernidwip | Uncategorized | | Belum Ada Tanggapan

Mei 28, 2009 Ditulis oleh ernidwip | Uncategorized | | Belum Ada Tanggapan

TUGAS PASCAL II (Function)

Fungsi (function) merupakan bagian terpisah seperti procedure. Fungsi dapat berupa fungsi standar (disediakan pascal) atau fungsi yang dibuat sendiri oleh pemakai. Dalam pendeklarasian, fungsi hampir sama dengan procedure, hanya saja fungsi harus dideklarasikan dengan tipe datanya.

Contoh Soal Fungsi =

Buatlah program untuk menghitung nilai akhir siswa dengan menampilkan nilai Huruf dari Nilai Akhir Tersebut.
Buatlah fungsi NilaiAkhir untuk memproses perhitungan untuk mendapatkan Nilai Akhir. Ketentuan untuk mendapatkan Nilai Akhir seperti berikut:

  • Nilai Murni Absensi = Nilai Absen * 30%
  • Nilai Murni Tugas = Nilai Tugas * 30%
  • Nilai Murni Ujian = Nilai Ujian * 40%
  • Nilai Akhir summary Nilai-Nilai Murni diatas

Buatlah fungsi NilaiGrade untuk memproses perhitungan untuk mendapatkan Nilai Grade. Ketentuan untuk mendapatkan Nilai Grade seperti berikut:

  • Nilai Murni >= 80, Nilai Grade = A
  • Nilai Murni >= 70, Nilai Grade = B
  • Nilai Murni < 70, Nilai Grade = C

Maka listingnya =

Program TugasII;

uses crt;

function nil_akhir(var niltgs,nilabs,nilujn,nilhasil:real):real;

begin

nilhasil:=(niltgs*0.3)+(nilabs*0.3)+(nilujn*0.4);

end;

function grade(var nilmurni:real):char;

begin

if nilmurni>=80 then

grade:=’A’

else

if nilmurni>=70 then

grade:=’B’

else

grade:=’C';

end;

var nm:string[25];

x,y,z,q:real;

begin

clrscr;

writeln(‘INPUT NILAI’);

writeln(‘——————’);

write(‘Nama Siswa :’);readln(nm);

write(‘Nilai Absen  :’);readln(x);

write(‘Nilai Tugas  :’);readln(y);

write(‘Nilai Ujian   :’);readln(z);

nil_akhir(x,y,z,q);

clrscr;

writeln(‘Siswa Yang Bernama    : ‘,nm);

writeln(‘Nilai Akhir                        : ‘,q:3:0);

writeln(‘Nilai Grade                       : ‘,grade(q));

readln;

end.

Hasil INPUT :

Untitled-1 copy

Hasil OUTPUT :

hasil

Mei 18, 2009 Ditulis oleh ernidwip | Uncategorized | | Belum Ada Tanggapan

Tugas Pascal

TUGAS PASCAL

A Repeat – Until digunakan untuk mengulang statement-statemen atau blok statement sampai (Until) kondisi yang diseleksi di Until tidak terpenuhi.

BU : repeat

statement;

until ungkapan_logika;


(tugas A) :

program for_a;

uses crt;

var x, y : integer; {deklarasi variable}

begin

clrscr;

x := 1;

y := 0;

repeat

begin {blok statement}

write (x);

if x < 9 then

write (‘ + ‘)

else

write(‘ = ‘);

y := y+x;

x := x+2;

end;

until x >= 10; {sampai dengan x bernilai >= 10 maka selesai}

write (y);

readln;

end;

Tampilan Hasil :

repeat until


B Perulangan For tersarang adalah perulangan For yang berada pada perulangan yang lainnya. Perulangan yang lebih dalam akan diproses terlebih dahulu sampai habis, kemudian perulangan yang lebih luar baru akan bertambah, mengerjakan perulangan yang lebih dalam lagi mulai dari nilai awalnya dan seterusnya.


(tugas B) :

program for_b;

uses crt;

var x, y : integer; {deklarasi variable}

begin

clrscr;

for x := 1 to 5 do

begin {blok statement}

writeln(‘’);

for y := 1 to x do

write (y);

end;

readln;

end.

Tampilan Hasil :

for tersarang


C Perulangan dengan statement For digunakan untuk mengulang statemen atau suatu blok statemen berulang kali.

BU : for var_name := nil_awal to nil_akhir do

begin {nilai awal dan nilai akhir tipenya harus sama}

statement;

statement;

……………

end;


(tugas C) :

program for_c;

uses crt;

var x, y, z : integer; {deklarasi variable}

begin

clrscr;

x := 0;

y := 1;

for z := 1 to 8 do

begin {blok statement : jika statement lebih dari satu}

write (x); write (‘,’);

write (y); write (‘,’);

x := y+x; y := x+y;

end;

write (‘…..’);

readln;

end.

Tampilan Hasil :

for to do

April 15, 2009 Ditulis oleh ernidwip | Uncategorized | | Belum Ada Tanggapan

Pascal (bahasa pemrograman)

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas

Pascal adalah bahasa pemrograman yang pertama kali di buat oleh Profesor Niklaus Wirth, seorang anggota International Federation of Information Processing (IFIP) pada tahun 1971. Dengan mengambil nama dari matematikawan Perancis, Blaise Pascal, yang pertama kali menciptakan mesin penghitung, Profesor Niklaus Wirth membuat bahasa Pascal ini sebagai alat bantu untuk mengajarkan konsep pemrograman komputer kepada mahasiswanya. Selain itu, Profesor Niklaus Wirth membuat Pascal juga untuk melengkapi kekurangan-kekurangan bahasa pemrograman yang ada pada saat itu.

Kelebihan

Kelebihan dari bahasa pemrograman Pascal adalah:

  • Tipe Data Standar, tipe-tipe data standar yang telah tersedia pada kebanyakan bahasa pemrograman. Pascal memiliki tipe data standar: boolean, integer, real, char, string,
  • User defined Data Types, programmer dapat membuat tipe data lain yang diturunkan dari tipe data standar.
  • Strongly-typed, programmer harus menentukan tipe data dari suatu variabel, dan variabel tersebut tidak dapat dipergunakan untuk menyimpan tipe data selain dari format yang ditentukan.
  • Terstruktur, memiliki sintaks yang memungkinkan penulisan program dipecah menjadi fungsi-fungsi kecil (procedure dan function) yang dapat dipergunakan berulang-ulang.
  • Sederhana dan Ekspresif, memiliki struktur yang sederhana dan sangat mendekati bahasa manusia (bahasa Inggris) sehingga mudah dipelajari dan dipahami.

Bahasa PASCAL juga merupakan bahasa yang digunakan sebagai standar bahasa pemrograman bagi tim nasional Olimpiade Komputer Indonesia (TOKI). Selain itu, Bahasa PASCAL masih digunakan dalam IOI (International Olympiad in Informatics).

Hello World

Contoh program Hello World menggunakan bahasa pascal adalah sebagai berikut:

Program HelloWorld;
begin
   writeln('Hello world');
end.

April 14, 2009 Ditulis oleh ernidwip | Uncategorized | | Belum Ada Tanggapan

Hello world!

Welcome to WordPress.com. This is your first post. Edit or delete it and start blogging!

April 14, 2009 Ditulis oleh ernidwip | Uncategorized | | 1 Komentar