Senin, 21 Desember 2009

Menampilkan Deret Bilangan Prima

  • Program untuk menampilkan deret bilangan prima dan jumlahnya.
Program Bilangan_Prima;
Uses wincrt;
Var
i,j,m,n, batas,jml: integer;
prima: boolean;
prim:array[1..100] of integer;
Begin
write('bilangan prima sampai suku ke: '); readln(n);
writeln('sebagai berikut: ');
i:=3;
prim[1]:=2;
prim[2]:=3;
m:=2;
Repeat
i:=i+1;
batas:=round(sqrt(i))+1;
prima:=true;
For j:= 2 to batas do
if i mod j = 0 then
prima:=false;
if prima = true then
Begin
m:=m+1;
prim[m]:=i;
end;
until m=n;
For i:=1 to n do
Begin
write(prim[i], ' ');
jml:=jml+prim[i];
end;
writeln;
writeln('jumlah bil prima: ',jml);
readln;
end.

Minggu, 22 November 2009

Record dan array

Buat data mahasiswa dengan inputuan yang sudah ditentukan menggunakan array dan record.

uses wincrt;
type biodata = record
alamat : string;
nama : string;
ttl:string;
nim : string;
end;
var
data:biodata;
n,i: integer;
begin
writeln ('Inputkan Jumlah data Mahasiswa');readln(n);
for i:=1 to n do
begin
writeln ('Data ke - ',i,':');
write ('NIM : '); readln(data.nim);
write ('Nama : '); readln(data.nama);
write ('Alamat : '); readln(data.alamat);
write ('TTL : '); readln(data.ttl);
writeln;
end;
end.

Selasa, 17 November 2009

Tugas Struktur Data 4

uses wincrt;
const awal =1;
const akhir =5;

var
nim,nama :array [awal..akhir] of string;
nilai :array [awal..akhir] of string;
n,i :integer;
jumlah,rataan : real;
begin
write ('banyak nya data mahasiswa =');
readln(n) ;
for n :=1 to 3 do
begin
write('nim',n,':');readln(nim[n]);
write('nama',n,':');readln(nama[n]);
for i:=1 to 3 do
begin
write('nilai ke',n,'=');readln(nilai[i]);
writeln;
end;
end;
writeln;
writeln('hasil dari inputan adalah =');
writeln('=====================');
writeln('nim nama nilai1 nilai 2 nilai 3 rata-rata');
writeln('=====================');
for i:= i to 3 do
begin
writeln(nim [n],' ', nama[n],' ',nilai[1],' ',nilai[2],' ',nilai[3]);
writeln;
end;
end.

Selasa, 10 November 2009

Tugas Struktur Data 2

* Buat input nilai menggunakan array dengan bentuk output berupa kolom

uses wincrt;
const
garis='------------------------------------------------------';
var nil1,nil2,nil3:array[1..10] of 0..100;
nim:array[1..10] of string[8];
nama:array[1..10] of string[15];
n,i,bar:integer;
jum:real;
tulis:char;
begin
clrscr;
write('Masukkan Banyak data:');readln(n);
for i:=1 to n do
begin
clrscr;
GotoXY(30,4+1);write('Data Ke-:',i:2);
GotoXY(10,5+i);write('NIM:');readln(nim[i]);
GotoXY(10,6+i);write('Nama:');readln(nama[i]);
GotoXY(10,7+i);write('Nilai 1:');readln(nil1[i]);
GotoXY(10,8+i);write('Nilai 2:');readln(nil2[i]);
GotoXY(10,9+i);write('Nilai 3:');readln(nil3[i]);
end;
clrscr;
GotoXY(5,4);write(garis);
GotoXY(5,5);write('No');
GotoXY(9,5);write('NIM');
GotoXY(18,5);write('Nama');
GotoXY(34,5);write('Nilai 1');
GotoXY(41,5);write('Nilai 2');
GotoXY(47,5);write('Nilai 3');
GotoXY(54,5);write('Rata');
GotoXY(61,5);write('Abjad');
GotoXY(5,6);write(Garis);
bar:=7;
for i:=1 to n do
begin
jum:=(nil1[i]+nil2[i]+nil3[i]/3);
if jum>=90 then tulis:='A' else
if jum>80 then tulis:='B' else
if jum>60 then tulis:='C' else
if jum<50 then tulis:='D' else tulis:='E';
GotoXY(5,bar);writeln(i:2);
GotoXY(9,bar);writeln(NIM[i]);
GotoXY(18,bar);writeln(Nama[i]);
GotoXY(34,bar);writeln(nil1[i]:4);
GotoXY(41,bar);writeln(nil2[i]:4);
GotoXY(47,bar);writeln(nil3[i]:4);
GotoXY(54,bar);writeln(jum:5:1);
GotoXY(61,bar);writeln(tulis);
bar:=bar+1;
end;
GotoXY(5,bar+1);writeln(garis);
readln;
end.

Selasa, 03 November 2009

Tugas Struktur Data

Array (larik) merupakan tipe data tersetruktur dimana didalamnya terdiri dari komponen – komponen yang mempunyai tipe data yang sama. Didalam suatu array jumlah komponen banyaknya adalah tetap. Didalam suatu larik atau array setiap kompoenen ditunjukan oleh suatu index yang unik. Index dari setiap komponen array menunjukan urutan data atau identitas yang mewakili data yang ada didalamnya.
Logika sederhananya array itu bisa disamakan dengan dua orang dengan nama yang sama didalam suatu komunitas, untuk membedakan antara nama yang satu atau dengan nama yang lain maka diberikan initial tambahan untuk setiap nama.
  • TUGAS ARRAY 1
  • Buat program untuk menghitung nilai rata-rata dari 5 data nilai yang menggunakan array.
  • JAWABAN:
  • Listing Program

uses wincrt;

var nilai:array[1..5] of integer;

jml,rata:real;

begin

clrscr;

writeln('Menghitung rata-rata 5 nilai');

write('Nilai 1=');readln(nilai[1]);

write('Nilai 2=');readln(nilai[2]);

write('Nilai 3=');readln(nilai[3]);

write('Nilai 4=');readln(nilai[4]);

write('Nilai 5=');readln(nilai[5]);

jml:=nilai[1]+nilai[2]+nilai[3]+nilai[4]+nilai[5];

rata:=jml/5;

writeln;

writeln('Jumlah=',jml:9:2);

writeln('Rata-rata=',rata:9:2);

end.

  • output
Menghitung rata-rata 5 nilai
Nilai 1=8
Nilai 2=8
Nilai 3=8
Nilai 4=9
Nilai 5=7
Jumlah=40
Rata-rata=8

Repetition dapat digunakan untuk menjalankan suatu bagian program secara berulang-ulang sesuai dengan kondisi yang ada.

Looping pada Pascal menggunakan beberapa keyword seperti FOR…DO, WHILE…DO dan REPEAT…UNTIL.

  • TUGAS 2

  • Buat program untuk menghitung nilai rata-rata dari 3 buah nilai yang menggunakan looping.
  • Listing Program

uses wincrt;

var nilai:array[1..3]of integer ;

jumlah,rata:real;

i:integer;

begin

writeln;

for i:=1 to 3 do

begin

clrscr;

write('Masukkan data ke-1:');readln(nilai[1]);

write('Masukkan data ke-2:');readln(nilai[2]);

write('Masukkan data ke-3:');readln(nilai[3]);

jumlah:=nilai[1]+nilai[2]+nilai[3];

rata:=jumlah/3;

writeln;

writeln('Jumlah=',jumlah:6:3);

writeln('Rata-ratanya=',rata:6:3);

readln;

end;

end.

  • Output
Masukkan data ke-1:8
Masukkan data ke-2:8
Masukkan data ke-3:8
Jumlah=24
Rata-rata=8