28 May 2009

Tugas Pascal 3 [Pak Friyadie]

Function(Fungsi) adalah salah satu 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;
Contoh :
>> Buatlah Program Hitung Nilai dengan ketentuan sebagai berikut :

Layar Masukan
Hitung Nilai
---------------
Nama Siswa :
Nilai Mid Test :
Nilai Final Test :
Nilai Tugas Mandiri :

Proses
Buatlah fungsi untuk hitung nilai akhir dengan konten proses:
Nilai murni final test = nilai final test x 30%
Nilai murni mid test = nilai mid test x 30%
Nilai murni tugas mandiri = nilai tugas mandiri x 40%
Nilai akhir = summary nilai murni

Buatlah fungsi grade untuk mencari nilai akhir berdasarkan nilai akhir:
Nilai akhir >=85, grade = A
Nilai akhir >=76, grade = B
Nilai akhir >=67, grade = C
Nilai akhir <67, grade = D

Layar Keluaran:
Hasil Perhitungan
---------------------
Nilai Mid Test : …x 30%
Nilai Final Test : …x 30%
Nilai Tugas Mandiri : …x 40%
---------------------------------------
Nilai Akhir :
Grade :

=====================================================================================
=> 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; //Fungtion Identifier nya
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.

18 May 2009

Tugas Pascal Pak Frieyadie



uses crt;
var n_murni:real;
grade:char;
function nilaiakhir(var n_absen,n_tgs,n_ujian:integer):integer;
begin
n_murni:=(n_absen*0.3)+(n_tgs*0.3)+(n_ujian*0.4);
end;


function nilaigrade:integer;
begin
if n_murni>=80 then
grade:='A'
else
if n_murni<70 then
grade:='B'
else
if n_murni<70 then
grade:='C';
end;

var nm:string;
nab,ntg,nuj:integer;
begin
clrscr;
writeln('Input Nilai');
writeln('-----------');
write('Nama Siswa :');readln(nm);
write('Nlai Absen :');readln(nab);
write('Nilai Tugas :');readln(ntg);
write('ilai Ujian :');readln(nuj);
nilaiakhir(nab,ntg,nuj);
clrscr;
writeln('Siswa yang bernama :',nm);
writeln('Nilai AKhir =',n_murni:2:2);
writeln('Grade=',grade);
readln;
end.