Hallo juga Muntaz, Saya akan coba mengoreksi dan maap jika ada yang salah.
Saya rasa permasalahan utama terletak pada variabel kata yang terletak pada prosedure isi dan proses. Kedua variable tersebut bersifat lokal, jadi isi variabel kata pada prosedur isi tidak akan tertransfer ke dalam variabel kata yang terletak pada prosedur proses, MESKIPUN nama variabelnya sama. Pertama, coba keluarkan variabel kata menjadi variabel global, baru kemudian masukkan ke dalam prosedur isi dan proses sebagai parameter by reference. Saya coba modifikasi: uses crt; type TArrayKata = array[1..100] of string[50]; procedure isi(var n :byte;var aArray:TArrayKata); var a : byte; begin write('Jumlah array ?'); readln(n); for a := 1 to n do begin write('kata array ke-', a, '-> '); readln(aArray[a]); end; end; procedure proses(var n, v, k :byte; var vok, kon :string; var aArray:TArrayKata); var 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 := aArray[a]; l := 0; l := length(aArray[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; kata : TArrayKata; begin clrscr; isi(h, kata); proses(h, i, j, vok, kon, kata); tampil(i, j, vok, kon); readln; end. -- Berhenti langganan: linux-programming-unsubscr...@linux.or.id Arsip dan info: http://linux.or.id/milis