Hallo,
saya belajar pemprogramman pascal, di linux dengan freepascal, dibawah ini
adalah source kode yang saya tulis untuk belajar procedure. Hasil nya
tidak sesuai dengan yang saya harapkan, yaitu variable didalam procedure
tidak terkoneksi antara procedure "proses" dan prosedure "tampil". Mohon
bantuan rekan-rekan untuk koreksi dimana kekurangan program saya tersebut.
Terima kasih.
-------kode---------
uses crt;
procedure isi(var n :byte);
var kata : array[1..100] of string[50];
a : byte;
begin
write('Jumlah array ?');
readln(n);
for a := 1 to n do begin
write('kata array ke-', a, '-> ');
readln(kata[a]);
end;
end;
procedure proses(var n, v, k :byte; var vok, kon :string);
var kata : array[1..100] of string[50];
huruf : array[1..100] of string[1];
tkata : string;
a,b,l : byte;
begin
vok := '';
kon := '';
v := 0;
k := 0;
writeln(n);
for a := 1 to n do begin
tkata := '';
tkata := kata[a];
l := 0;
l := length(kata[a]);
for b := 1 to l do begin
huruf[b] := tkata[b];
if (huruf[b]='a') or (huruf[b]='i') or
(huruf[b]='u') or (huruf[b]='e') or (huruf[b]='o')
then begin
inc(v);
vok := vok+huruf[b];
end
else begin
inc(k);
kon := kon+huruf[b];
end;
end;
end;
end;
procedure tampil(var v, k :byte; var vok, kon :string);
begin
writeln;
writeln('vokal = ', v, '-> ', vok);
writeln('konsonan = ', k, '-> ', kon);
end;
var vok, kon : string;
h, i, j : byte;
begin
clrscr;
isi(h);
proses(h, i, j, vok, kon);
tampil(i, j, vok, kon);
readln;
end.
--
www.binhatta.com
--
Berhenti langganan: [email protected]
Arsip dan info: http://linux.or.id/milis