Jumat, 06 Juni 2014

TP 11 ALGO : About Array in Turbo Pascal 7.0




Tugas Pendahuluan 11.
PRAKTIKUM
ALGORITMA DAN PEMROGRAMAN

OLEH
LUH PUTU SUCI VANDASARI
F1A113054
KELAS A

JURUSAN MATEMATIKA
PROGRAM STUDI MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS HALU OLEO
2014
 


SOAL.
1.      Jelaskan apa itu Array dengan definisi!
2.      Buat program mengurutkan data terbesar ke terkecil n buah data!
3.      Buat program menjumlahkan matriks 2x2!
4.      Buat program menentukan bilangan prima dengan Array (Interval 1…20)!
5.      Buat program tukar data! Dimana ada 10 data dan hanya data 2 angka terakhir dari stambuk yang ditukar.
PENYELESAIAN.
1.      Definisi array.
Array adalah suatu kumpulan data bertipe sama dimana setiap elemen memakai nama yang sama dan setiap elemen diakses dengan membedakan indeks arraynya. Array adalah variabel berindeks. Indeks harus bertipe yang memiliki keturutan (ada succesor dan predesor), misal integer, byte, character dan boolean. Jadi array dipakai untuk menyajikan sekumpulan data yang bertipe sama dan disimpan dengan urutan sesuai dengan indeks secara kontinyu. Dengan menggunakan array, sejumlah variabel dapat memakai nama yang sama. Antara satu variabel dengan variabel lain di dalam array dibedakan berdasarkan subscript. Sebuah subscript berupa bilangan di dalam kurung siku. Array dapat dibedakan menjadi :
·                       Array berdimensi satu.
·                      Array berdimensi dua.
·                     Array berdimensi tiga.

2.      Program mengurutkan data terbesar ke terkecil n buah data.
program maks_min;
uses crt;
var
u               : array[1..100] of integer;
S,C,i,a,b,d,n : integer;

procedure awal;
begin
textbackground(1);
textcolor(14);
clrscr;
writeln('===== MENGURUTKAN NILAI TERBESAR KE NILAI TERKECIL =====');
writeln;
writeln;
write('Masukkan banyak data yang anda inginkan = ');readln(n);
writeln;
end;

procedure kerja;
begin
 for C:= 1 to n do
  begin
   write('Masukkan data ke-',C,' = ');readln(u[C]);
   writeln;
  end;
end;

procedure maxmin;
begin
 for a:= 1 to n do
  begin
   write(' ',u[a],' ');
  end;
end;

procedure susun;
begin
 for a:=1 to n do
  begin
   for C:=1 to n do
    begin
     if u[a]>u[C] then
      begin
       i:=u[a];
       u[a]:=u[C];
       u[C]:=i;
      end;
    end
  end;
end;

procedure display;
begin
 awal;
 kerja;
 WRITELN;
 writeln('Urutan data dari yang terbesar ke terkecil adalah :');
 WRITELN;
 susun;
 maxmin;
 WRITELN;
 WRITELN;
 WRITELN;
 writeln('TERIMA KASIH .^^');
 readln;
end;

begin
display;
end.

Hasil RUN sebagai berikut.


3.      Program menjumlahkan matriks 2x2.
PROGRAM PENJUMLAHANMATRIKS;
USES CRT;
VAR S,U,C,I : INTEGER;
    Matriks1, Matriks2 : ARRAY[1..100,1..100] OF INTEGER;


PROCEDURE START;
BEGIN
 TEXTBACKGROUND(RED);
 CLRSCR;
 GOTOXY(18,1);WRITELN('=== PROGRAM PENJUMLAHAN MATRIKS 2x2 ===');
 GOTOXY(18,2);WRITELN('_______________________________________');
 WRITELN;
END;

PROCEDURE INPUT;
BEGIN
 WRITELN;
 WRITELN('Input nilai-nilai pada matriks pertama.');
 WRITELN;
 FOR S:=1 TO 2 DO
  BEGIN
  FOR U:=1 TO 2 DO
   BEGIN
   WRITE('Masukkan matriks [',S,',',U,'] = ');
   READLN(Matriks1[S,U]);
   END;
  END;
 WRITELN;
 WRITELN;
 WRITELN('Input nilai-nilai pada matriks kedua');
 WRITELN;
 FOR S:=1 TO 2 DO
  BEGIN
   FOR U:=1 TO 2 DO
    BEGIN
    WRITE('Masukkan matriks [',S,',',U,'] = ');
    READLN(Matriks2[S,U]);
    END;
  END;
END;

PROCEDURE DISPLAY1;
BEGIN
 GOTOXY(60,5);WRITELN('PENJUMLAHAN');
 GOTOXY(45,7);WRITELN('MATRIKS 1');
 GOTOXY(43,9);
 WRITELN(MATRIKS1[1,1]:4,MATRIKS1[1,2]:4);
 GOTOXY(43,11);
 WRITELN(MATRIKS1[2,1]:4,MATRIKS1[2,2]:4);
END;

PROCEDURE DISPLAY2;
BEGIN
 GOTOXY(58,7);WRITELN('MATRIKS 2');
 GOTOXY(56,9);
 WRITELN(MATRIKS2[1,1]:4,MATRIKS2[1,2]:4);
 GOTOXY(56,11);
 WRITELN(MATRIKS2[2,1]:4,MATRIKS2[2,2]:4);
 WRITELN;
END;

PROCEDURE OPERATION;
BEGIN
 GOTOXY(55,10);WRITELN('+');
 GOTOXY(68,10);WRITELN('=');
 GOTOXY(70,9);
 WRITELN(Matriks1[1,1]+Matriks2[1,1]:5,Matriks1[1,2]+Matriks2[1,2]:5);
 GOTOXY(70,11);
 WRITELN(Matriks1[2,1]+Matriks2[2,1]:5,Matriks1[2,2]+Matriks2[2,2]:5);
END;

PROCEDURE FINAL;
BEGIN
 START;
 INPUT;
 TEXTCOLOR(LIGHTGREEN);
 DISPLAY1;
 DISPLAY2;
 OPERATION;
 READLN;
END;

BEGIN
FINAL;
END.

Hasil RUN sebagai berikut.


4.      Program menentukan bilangan prima dengan array (interval 1…20).
program menentukan_bilangan_prima;
uses crt;
var
uci : array[1..100] of integer;
A, N, S,C : integer;

begin
textbackground(5);
textcolor(14);
clrscr;
writeln('***** PROGRAM MENENTUKAN BILANGAN PRIMA MENGGUNAKAN ARRAY *****');
writeln('_______________________________________________________________');
writeln;
write('Masukkan interval yang anda inginkan = 1 sampai  ');readln(C);
writeln;
writeln('Jadi, bilangan prima pada interval 1 sampai 20 adalah : ');
writeln;

for A:= 2 to C do
begin
uci[A]:=A;
for N:= 2 to A-1 do
begin
S:= A mod N;
if S=0 then
uci[A]:=0;
end;
if uci[A]<>0 then
write(uci[A],' ');
end;

GOTOXY(45,15);writeln('TERIMA KASIH .^^');
readln;
end.

Hasil RUN sebagai berikut.


5.      Program tukar data.
PROGRAM TUKAR_DATA;
USES CRT;
VAR S     : ARRAY[1..100] OF INTEGER;
    U,C,N : INTEGER;

PROCEDURE JUDUL;
BEGIN
TEXTBACKGROUND(5);
TEXTCOLOR(14);
CLRSCR;
WRITELN('=*=*= PROGRAM TUKAR DATA SESUAI 2 ANGKA TERAKHIR STAMBUK =*=*=');
WRITELN('____________________________________________________________');
WRITELN;
END;

PROCEDURE INPUT;
BEGIN
WRITELN('Masukkan 10 data yang anda inginkan.');
WRITELN;
FOR U:=1 TO 10 DO
BEGIN
WRITE('Masukkan data ke-',U,' = ');READLN(S[U]);
END;
END;

PROCEDURE STAMBUK;
BEGIN
WRITELN;
WRITELN('STAMBUK F1A113054');
WRITELN('Jadi data ke-5 dan data ke-4 ditukar. Hasilnya sebagai berikut :');
WRITELN;
WRITELN(S[1],' ',S[2],' ',S[3],' ',S[5],' ',S[4],' ',S[6],' ',S[7],' ',S[8],' ',S[9],' ',S[10]);
END;

BEGIN
JUDUL;
INPUT;
STAMBUK;
READLN;
END.

Hasil RUN sebagai berikut.





Tidak ada komentar:

Posting Komentar