Untitled

 avatar
unknown
plain_text
5 months ago
2.4 kB
3
Indexable
program BiayaKursus;

type
  dataSiswaRecord = record
    nomorpendaftaran: string;
    nama: string;
    nilai: integer;
    biaya: longint;
    grade: char;
  end;

var
  SiswaArray: array[1..3] of dataSiswaRecord;
  i: Integer;

begin
  { Input Data Siswa }
  for i := 1 to 3 do
  begin
    writeln('Input Data Siswa Ke-', i);
    write('No Pendaftaran: ');
    readln(SiswaArray[i].nomorpendaftaran);
    write('Nama: ');
    readln(SiswaArray[i].nama);
    write('Nilai: ');
    readln(SiswaArray[i].nilai);
     { Menentukan Biaya dan Grade Berdasarkan Nilai }
    if (SiswaArray[i].nilai >= 1) and (SiswaArray[i].nilai <= 50) then
    begin
      SiswaArray[i].biaya := 5500000;
      SiswaArray[i].grade := '0';
    end
    else if (SiswaArray[i].nilai >= 51) and (SiswaArray[i].nilai <= 55) then
    begin
      SiswaArray[i].biaya := 4500000;
      SiswaArray[i].grade := 'E';
    end
    else if (SiswaArray[i].nilai >= 56) and (SiswaArray[i].nilai <= 60) then
    begin
      SiswaArray[i].biaya := 4000000;
      SiswaArray[i].grade := 'D';
    end
    else if (SiswaArray[i].nilai >= 61) and (SiswaArray[i].nilai <= 70) then
    begin
      SiswaArray[i].biaya := 3500000;
      SiswaArray[i].grade := 'C';
    end
    else if (SiswaArray[i].nilai >= 71) and (SiswaArray[i].nilai <= 85) then
    begin
      SiswaArray[i].biaya := 2500000;
      SiswaArray[i].grade := 'B';
    end
    else if (SiswaArray[i].nilai >= 86) and (SiswaArray[i].nilai <= 100) then
    begin
      SiswaArray[i].biaya := 1500000;
      SiswaArray[i].grade := 'A';
    end
    else
    begin
      writeln('Nilai tidak valid. Masukkan nilai antara 1 - 100.');
      SiswaArray[i].biaya := 0;
      SiswaArray[i].grade := '-';
    end;
  end;

  writeln; { Tambahkan baris kosong untuk pemisah }
  writeln('=========================================================');
  write('| No Pendaftaran | Nama   | Nilai  | Grade  | Biaya  |');
  writeln;
  
  
  { Output Data Siswa }
  for i := 1 to 3 do
  begin
    write('| ',SiswaArray[i].nomorpendaftaran,'      |');
    write(SiswaArray[i].nama,'|  ');
    write(SiswaArray[i].nilai,'|  ');
    write(SiswaArray[i].grade,'|  ');
     write(SiswaArray[i].biaya,'|  ');
    writeln; { Tambahkan baris kosong antar siswa }
  end;
  
  writeln; { Tambahkan baris kosong untuk pemisah }
  writeln('=========================================================');
  
end.
Editor is loading...
Leave a Comment