Rabu, 10 Juni 2015

PROGRAM RECORD

PROGRAM RECORD
OLEH :
NAMA         : RIZKY KURNIAWAN
NPM            : 2014-55-201-013
JURUSAN  : T.INFORMATIKA
UNIVERSITAS MUSAMUS MERAUKE
  • MENGHITUNG LUAS DAN KELILING LINGKARAN
uses wincrt;
type
    hasil=record
    jari        :real;
    keliling    :real;
    luas        :real;
    end;
var
   lingkaran:hasil;
begin
     write ('jari-jari lingkaran        = ');readln (lingkaran.jari);
     lingkaran.keliling:=2*PI*lingkaran.jari;
     lingkaran.luas:=PI*sqr(lingkaran.jari);
        writeln;
        writeln('keliling lingkaran       = ',lingkaran.keliling:7:2);
        writeln('luas lingkaran           = ',lingkaran.luas:7:2);
             writeln ('-----------------------------------');
             writeln ('-------Copyright@ rizsky-kun-------');
             writeln ('-----------------------------------');
end.
PROGRAM DAN OUTPUT PROGRAM

  • VARIASI  RECORD
uses wincrt;
type
    statusmenikah=(single,menikah,cerai);
    DP=record
             nama       :string[25];
             gaji       :real;
              case status:statusmenikah of
                                          single        :();
                                          menikah       :();
                                          cerai         :();  
    end;
var
   karyawan:array[1..20] of DP;
   jawab:char;
   JD,i:byte;  

procedure masukandata;
begin
     clrscr;
     write('jumlah data = ');readln(JD);
     for i:= 1 to JD do
     begin
          with karyawan[i] do
          begin
               writeln;
               write('nama karyawan                       = ');readln(nama);
               write('gaji tiap bulan                     = ');readln(gaji);
               write('status menikah S/M/C                = ');readln(jawab);
                             if upcase (jawab)='s' then
                             begin
                                  status:=single;
                             end;
                             if upcase (jawab)='m' then
                             begin   
                                  status:=menikah;
                             end;
                             if upcase (jawab)='c' then
                             begin
                                  status:=cerai;
                             end;
               end;
          end;
     end;
procedure tampilkanhasil;
begin
     clrscr;
     writeln('--------------daftar karyawan--------------');
     writeln('                        gaji    status    ');
     writeln('       nama karyawan   sebulan   S/M/C    ');

     for i:= 1 to JD do
     begin
          with karyawan[i] do
          begin
               write(nama:20, gaji:10:2);
               case status of
                    single   :writeln('     s');
                    menikah  :writeln('     m');
                    cerai    :writeln(',    c');
               end;
          end;
     end;
     writeln('--------------------------------------------');
end;
begin
     masukandata;
     tampilkanhasil;
end.

PROGRAM

OUTPUT PROGRAM

  • WITH DO
uses wincrt;
type
    hasil=record
                jari:real;
                keliling:real;
                luas:real;
    end;
var
   lingkaran:hasil;
begin
        with lingkaran do
             begin
                  write('jari-jari lingkaran    = ');readln(jari);
                  keliling:=2*PI*jari;
                  luas:=PI*sqr(jari);
                  writeln;
                  writeln('keliling lingkaran   = ',keliling:7:2);
                  writeln('luas lingkaran       = ',luas:7:2);
                  writeln;
                  writeln('------------------------------------');
                  writeln('-------Copyright @rizsky-kun--------');
                  writeln('------------------------------------');
             end;
end.
PROGRAM
OUTPUT PROGRAM

  •  VARIASI RECORD (BIODATA)
uses wincrt;
type RecTanggal = record
                tanggal,bulan,tahun:integer;
end;
     RecPegawai = record
                nomor       :longint;
                nama        :string[35];
                tgllahir    :RecTanggal;
                gaji        :real;
                end;
var
   DataPeg:RecPegawai;

begin
with datapeg do
     begin
     writeln('======================================');
     writeln('============INPUT BIODATA=============');
     writeln('======================================');
     write  ('=====Nomor         = '); readln(nomor);
     write  ('=====Nama          = '); readln(nama);
     write  ('=====Tanggal Lahir = '); readln(tgllahir.tanggal);
     write  ('=====Bulan Lahir       = '); readln(tgllahir.bulan);
     write  ('=====Tahun Lahir       = '); readln(tgllahir.tahun);
     write  ('=====Gaji          = '); readln(gaji);
     writeln('======================================');

     writeln;
     clrscr;
     writeln('--------------------------------------');
     writeln('        DATA PEGAWAI             ');
     writeln('--------------------------------------');
     writeln('Nama Pegawai   = ',nama);
     writeln('Tanggal Lahir  = ',tgllahir.tanggal,'/',DataPeg.tgllahir.bulan,'/',DataPeg.tgllahir.tahun);
     writeln('Gaji (juta)    = ',gaji:3:1,'juta');
     writeln('------------------------------');
end;
end.
PROGRAM
OUTPUT PROGRAM
  • RECORD (BIODATA MAHASISWA)
uses wincrt;
type
    statusmahasiswa=(single,menikah);
    data = record
         nama          :string[25];
         nim            :string[12];
         case status   :statusmahasiswa of
            single      :();
            menikah   :();
end;
var
  mahasiswa    :array[1..20] of data;
  jawab             :char;
  n,i               :integer;

begin
     write('Jumlah Data = '); readln(n);
for i:= 1 to n do

begin
     with mahasiswa[i] do
         begin
         writeln;
         write('Nama    = '); readln(nama);
         write('NIM     = '); readln(nim);
         write('Status (single (s) / menikah (m)) = '); readln(jawab);

if upcase (jawab) = 'S' then
begin
         status:=single;
end;

         if upcase (jawab) = 'M' then
begin
         status:=menikah;
         end;
         end;
    end;
    writeln;
    writeln('-------------------------');
    writeln('Nama    NIM    Status    ');
    writeln('-------------------------');
for i:=1 to n do

    begin
with mahasiswa[i] do
         begin
         write(nama,'   ',nim);
case status of
           single:writeln('    s');
           menikah:writeln('    m');
         end;
    end;
    end;
    writeln('-------------------------');
end.
PROGRAM
OUTPUT PROGRAM





Tidak ada komentar:

Posting Komentar