Sie sind auf Seite 1von 5

program Persamaaan_kuadrat_anggi;

uses crt;
const anmax=20;
type
block = record
an1:real;
an2:real;
an3:real;
anx:real;
anx2:real;
anx3:string;
andis:real;
end;
var
container:array[1..anmax] of block;
sel,y,i:integer;
files:text;
function perbaikinilaia:real;//Input ulang nilai a jika a = 0
begin
clrscr;
textcolor(black);
gotoxy(25,7); writeln('|+=====================================+|');
gotoxy(25,8); writeln('|| Nilai A Tidak Boleh 0 ||');
gotoxy(25,9); writeln('|| A^2 + Bx + C = 0 ||');
gotoxy(25,10); writeln('|+=====================================+|');
textcolor(white);
gotoxy(25,12);write(' Masukan nilai untuk | A | ',i,' |: ');
readln(container[i].an1);
end;
function hitung:real;//Function Hitung
begin
for i:=1 to anmax do
begin
container[i].andis:=(container[i].an2*container[i].an2)(4*container[i].an1*container[i].an3);
if container[i].andis = 0 then
begin
container[i].anx:=(container[i].an2+(sqrt(container[i].andis)))/(2*container[i].an1);
container[i].anx2:=container[i].anx;
end
else if container[i].andis<0 then
begin
container[i].anx3:=('Imajiner');
end
else
begin
container[i].anx:=(container[i].an2+(sqrt(container[i].andis)))/(2*container[i].an1);
container[i].anx2:=(-container[i].an2(sqrt(container[i].andis)))/(2*container[i].an1);
end
end
end;
function cetak:real;//Cetak Hasil perhitungan
begin
clrscr;
y:=4;
gotoxy(7,1);
writeln('//////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');

gotoxy(7,2); writeln(('| No | a | b | c | d | x1 |
x2 |');
gotoxy(7,3);
writeln('\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\//////////////////////////////////');
gotoxy(7,25); writeln(('+----+-------+-------+-------+-----------+------------+---------+');
textcolor(white);
for i:=1 to anmax do
begin
inc(y);
if container[i].andis<0 then
begin
gotoxy(7,y);writeln('| ',i:2,' |',container[i].an1:5:0,' |',container[i].an2:5:0
,
' |',container[i].an3:5:0,' | ',container[i].andis:6:0,' | ',
container[i].anx3,' | ',container[i].anx3,' |');
end
else
begin
gotoxy(7,y);writeln('| ',i:2,' |',container[i].an1:5:0,' |',container[i].an2:5:0
,
' |',container[i].an3:5:0,' | ',container[i].andis:6:0,' | ',
container[i].anx:6:2,' |',container[i].anx2:8:2,' |');
end
end;
readln;
end;
function isi:real;//Input Interaktif
begin
clrscr;
for i:=1 to anmax do
begin
clrscr;
textcolor(black);
gotoxy(25,7); writeln('|+=====================================+|');
gotoxy(25,8); writeln('|| Masukan Nilai ||');
gotoxy(25,9); writeln('|| A^2 + Bx + C = 0 ||');
gotoxy(25,10); writeln('|+=====================================+|');
textcolor(white);
gotoxy(25,12);write(' Masukan nilai untuk | A | ',i,' |: ');
readln(container[i].an1);
gotoxy(25,13);write(' Masukan nilai untuk | B | ',i,' |: ');
readln(container[i].an2);
gotoxy(25,14);write(' Masukan nilai untuk | C | ',i,' |: ');
readln(container[i].an3);
end;
end;
function acak:real;//Input Bilangan Acak
begin
clrscr;
randomize;
for i:=1 to anmax do
begin
container[i].an1:= random(102)+(1);
container[i].an2:= random(150)+(1);
container[i].an3:= random(103)+(1);
end
end;
function bacafile:real;// Input Baca file

begin
clrscr;
assign(files,'datanilai');
reset(files);
for i:=1 to anmax do
begin
readln(files,container[i].an1);
end;
for i:=1 to anmax do
begin
readln(files,container[i].an2);
end;
for i:=1 to anmax do
begin
readln(files,container[i].an3);
end;
close(files);
end;
function interaktif:real;//Interaktif
begin
isi();
for i:=1 to anmax do
begin
while container[i].an1 = 0 do
perbaikinilaia();
end;
hitung();
cetak();
readln;
end;
function bilanganacak:real;//Bilangan Acak
begin
acak();
hitung();
cetak();
readln;
end;
function bacafiles:real;//Baca files
begin
bacafile();
hitung();
cetak();
readln;
end;
function readme:string;// Readme !
begin
textcolor(White);
clrscr;
gotoxy(1,6); writeln(('||
||');
gotoxy(1,7); writeln(('||
||');
gotoxy(1,8); writeln(('+========================================================
====================+');
gotoxy(1,9); writeln(('||
||');textcolor(red);
gotoxy(1,10); writeln(('||================================README
!!==================================||');textcolor(white);
gotoxy(1,11); writeln(('||
||');

gotoxy(1,12); writeln(('+=======================================================
=====================+');
gotoxy(1,13); writeln(('|| ~ Pilih salah satu metode input dengan memilih
antara no 1-3 ! ||');
gotoxy(1,14); writeln(('|| 1. Program Satu Mengharuskan User Memberikan Input
secara Manual ||');
gotoxy(1,15); writeln(('|| 2. Program Dua Memiliki input random number / Nilai
Acak ||');
gotoxy(1,16); writeln(('|| 3. Program Tiga Menggunakan Text yang ada dalam file
datafile ||');
gotoxy(1,17); writeln(('|| Sebagai Input *
||');
gotoxy(1,18); writeln(('||
||');
gotoxy(1,19); writeln(('|| * Data pada file "datafile" dapat di edit dengan
menggunakan text editor ||');
gotoxy(1,20); writeln(('|| dengan ketentuan seperti berikut :
||');
gotoxy(1,21); writeln(('||
||');
gotoxy(1,22); writeln(('|| |+=======================+|
||');
gotoxy(1,23); writeln(('|| || Baris || Nilai ||
||');
gotoxy(1,24); writeln(('|| ||=======================||
||');
gotoxy(1,25); writeln(('|| || 1 ~ 20 || A ||
||');
gotoxy(1,26); writeln(('|| || 21 ~ 40 || B ||
||');
gotoxy(1,27); writeln(('|| || 41 ~ 60 || C ||
||');
gotoxy(1,28); writeln(('|| |+=======================+|
||');
gotoxy(1,29); writeln(('||
||');
gotoxy(1,30); writeln(('|| Tekan Enter Untuk Kembali Ke Menu Utama !
||');
gotoxy(1,31); writeln(('+=======================================================
=====================+');
readln;
end;
begin // Main Program
repeat
textcolor(white);
textbackground(3);
clrscr;
gotoxy(25,2); writeln(' ---- -- | ---- ---- --- ');
gotoxy(25,3); writeln(' | | | \ | | | | ');
gotoxy(25,4); writeln(' |----| | \ | | _ | _ | ');
gotoxy(25,5); writeln(' | | | \ | | | | | | ');
gotoxy(25,6); writeln(' | | | -- ---- ---- --- ');textcolor(black);
gotoxy(25,7); writeln('*================================*');
gotoxy(25,8); writeln('|| ||');
gotoxy(25,9); writeln('|| A^2 + Bx + C = 0 ||');
gotoxy(25,10); writeln('|| ||');
gotoxy(25,11); writeln('|| Program Persamaan Kuadrat ! ||');
gotoxy(25,12); writeln('|| ||');
gotoxy(25,13); writeln('|| Nama : Anggi Wibiyanto ||');
gotoxy(25,14); writeln('|| Kelas : IF 17K/II ||');

gotoxy(25,15); writeln('|| NIM : 10111983 ||');


gotoxy(25,16); writeln('|| ||');
gotoxy(25,17); writeln('|| 1. Interactive Program ||');
gotoxy(25,18); writeln('|| 2. Random Number With Array ||');
gotoxy(25,19); writeln('|| 3. Input from text ||');
gotoxy(25,20); writeln('|| 4. ReadMe ! ||');
gotoxy(25,21); writeln('|| 5. Exit ! ||');
gotoxy(25,22); writeln('|| ||');
gotoxy(25,23); writeln('|| ||');
gotoxy(25,24); writeln('|| ||');
gotoxy(25,25); writeln('*================================*');
gotoxy(29,23); write('choose program no = ');read(sel);
if sel = 1 then
begin
interaktif();
end
else if sel = 2 then
begin
bilanganacak();
end
else if sel = 3 then
begin
bacafiles();
end
else if sel = 4 then
begin
readme();
readln;
end
until(sel=5);
readln;
end.

Das könnte Ihnen auch gefallen