Senin, 02 April 2012

, ,

Tugas Pascal 28 Maret 2012

Buat temen-temen kelas MI Unibi 2011 yg kesulitan mengerjakan tugas Pascal dari Pak Ucu minggu kemaren, berikut aku bagi hasil bikinan aku sendiri. Bisa dirapihkan lagi format tampilannya, atau dikreasikan sesuai keinginan masing-masing. Yang penting pada ngerti y m program yg dibuatnya. Selamat mengerjakan! ^-^



Soal :

Buatlah Tabel :
-------------------------------------------------------------
NPM   | NAMA             |              NILAI       |  HM   |
      |                  | TUGAS | QUIZ | UTS | UAS |       |
-------------------------------------------------------------
      |                  |       |      |     |     |       |
      |                  |       |      |     |     |       |
-------------------------------------------------------------

Inputan :
Jumlah Mahasiswa = ......
NPM = .........
Nama = .........
Tugas = ........
Quiz = ........
UTS = .........
UAS = ........

Ketentuan :
Nilai Akhir = (Tugas*0.2)+(Quiz*0.2)+(UTS*0.25)+(UAS*0.35)
HM =
    80 < Nilai Akhir <= 100 : A
    70 < Nilai Akhir <= 80 : B
    60 < Nilai Akhir <= 70 : C
    50 < Nilai Akhir <= 60 : D
    0 < Nilai Akhir <= 50 : E
Jika semua nilai 0/atau tidak ada maka HM = K
Jika salah satu atau 2 nilai tidak ada maka HM = T
Jika nilai UTS & UAS tidak ada maka HM = K
Script :
program tugas;
uses crt;
{Andina Nur | udinzuhuy.blogspot.com}
type mhs = record
                npm : string[7];
                nama : string[25];
                tugas, quiz, uts, uas, nakhir : real;
                hmutu : char;
              end;
var
   mahasiswa : array[1..50] of mhs; {data dibatasi hingga 50 data}
   i, n : integer;
begin
clrscr;
write('Jumlah data mahasiswa = ');readln(n);
for i:=1 to n do
begin
        with mahasiswa[i] do
        begin
                writeln;
                write('NPM              = ');readln(npm);
                write('Nama             = ');readln(nama);
                write('Nilai Tugas      = ');readln(tugas);
                write('Nilai Quiz       = ');readln(quiz);
                write('Nilai UTS        = ');readln(uts);
                write('Nilai UAS        = ');readln(uas);
        end;
end;
clrscr;
writeln('==============================================================');
writeln('NPM   |  NAMA              |         NILAI            |  HM  |');
writeln('      |                    | TUGAS | QUIZ | UTS | UAS |      |');
writeln('--------------------------------------------------------------');
for i:=1 to n do
begin
        with mahasiswa[i] do
        begin
                gotoxy(2,5+i);write(npm);
                gotoxy(12,5+i);write(nama);
                gotoxy(29,5+i);write(tugas:0:0);
                gotoxy(37,5+i);write(quiz:0:0);
                gotoxy(43,5+i);write(uts:0:0);
                gotoxy(49,5+i);write(uas:0:0);
                nakhir:=(tugas*0.2)+(quiz*0.2)+(uts*0.25)+(uas*0.35);
                if (uts=0) and (uas=0) then
                  hmutu:='K'
                else if ((tugas=0)and(quiz=0)) or ((tugas=0) and (uts=0))
                 or ((tugas=0) and (uas=0)) or ((quiz=0) and (uts=0))
                 or ((quiz=0) and (uas=0)) then
                  hmutu:='T'
                else if (tugas=0) or (quiz=0) or (uts=0) or (uas=0) then
                  hmutu:='T'
                else if (tugas=0) and (quiz=0) and (uts=0) and (uas=0) then
                  hmutu:='K'
                else
                begin
                        if (nakhir>80) and (nakhir<=100) then
                           hmutu:='A'
                        else if (nakhir>70) and (nakhir<=80) then
                           hmutu:='B'
                        else if (nakhir>60) and (nakhir<=70) then
                           hmutu:='C'
                        else if (nakhir>50) and (nakhir<=60) then
                           hmutu:='D'
                        else if (nakhir>=0) and (nakhir<=50) then
                           hmutu:='E'
                        else
                           hmutu:='0';
                end;
                gotoxy(57,5+i);write(hmutu);
        end;
end;
writeln;
writeln('--------------------------------------------------------------');
readln;
end.
Preview Input :
Preview Hasil :
Oke, segitu aja yg bisa aku tampilkan. Biasakan untuk meninggalkan pesan di kolom Komentar di bawah y. Maaf klo ada yg kurang, terima kasih ^-^

0 komentar:

Posting Komentar

Untuk komentarnya bisa diisi disini, terima kasih telah mengunjungi blog saya ^-^