Dalam praktik pemrograman terstruktur ini, mahasiswa dapat membandingkan ...
membuat program dengan menggunakan bahasa Pascal. 2. Tujuan Praktik ...
BAB I PENDAHULUAN Sebagai salah satu mahasiswa dari Politeknik Purbaya Kabupaten Tegal, khususnya program studi Teknik Informatika semester I, para mahasiswa wajib melaksanakan praktik pemrograman pada mata kuliah pemrograman terstruktur. Praktik membuat program ( pemrograman ) ini merupakan bagian dari kurikulum yang bertujuan untuk melihat secara nyata permasalahan yang ada di dalam membuat program dan sejauh mana para mahasiswa memahami dan mendalami materi pemrograman. Dalam praktik pemrograman terstruktur ini, mahasiswa dapat membandingkan antara teori dengan kenyataan yang ada pada saat membuat program. Dan dapat merasakan kondisi yang sebenarnya pada saat menjadi seorang programmer. Dengan adanya Praktik pemrograman terstruktur ini, diharapkan para mahasiswa tidak kaget dan tidak kaku dalam menjalankan tugasnya, jika suatu saat nanti terjun ke dunia kerja.
1 Maksud Praktik Pemrograman Terstruktur
Adapun maksud dari praktik pemrograman terstruktur adalah : Pemahaman yang menyeluruh tentang Pemrograman, khususnya Program bahasa Pascal. Pemahaman yang menyeluruh tentang acuan (tolak ukur) dalam membuat program dengan menggunakan bahasa Pascal.
2. Tujuan Praktik Pemrograman Terstruktur
Adapun tujuan praktik pemrograman terstruktur ini adalah : Memenuhi salah satu kurikulum Politeknik Purbaya Kabupaten Tegal, khususnya Program studi Teknik Informatika. Mengaplikasikan atau menerapkan ilmu pemrograman dengan bahasa Pascal yang telah diperoleh. Mengadaptasikan para mahasiswa dengan kondisi dunia kerja atau pun
Pemrograman Terstruktur 1
1
07020004
sebagai seorang programmer. Mendorong agar siswa dapat menganalisa halhal apa saja yang diperlukan dalam membuat sebuah program, khususnya dengan bahasa Pascal.
3 Rumusan Masalah
Dalam pembuatan laporan praktik pemrograman terstruktur ini, permasalahan yang akan dibahas adalah : a) Apakah Program dan bahasa pemrograman ? b) Apakah Pascal itu ? ➢ Bagaimana menggunakan bahasa pemrograman Pascal ? ➢ Bagaimana struktur program yang lengkap ? ➢ Bagaimana menggunakan perintah IF, CASE, FOR, WHILE DO dan lain – lain serta menggunaka tipe – tipe data ?
4 Metodelogi Penelitian
Metode yang dilakukan adalah : a) Membaca dan menyalin dari buku – buku yang berhubungan dengan program bahasa pemrograman Pascal. b) Menbaca dan menyalin dari situs – situs di internet yang berhubungan dengan program bahasa Pascal. c) Mempraktikannya di Laboratorium Komputer Politeknik Purbaya Kabupaten Tegal.
Pemrograman Terstruktur 1
2
07020004
BAB II GAMBARAN UMUM
Program dan Bahasa Pemrograman
υ Program
Program adalah instruksi – instruksi yang diberikan kepada komputer agar komputer dapat melaksanakan tugas – tugas tertentu. Sebuah program berisikan sekumpulan kode. Kode – kode yang dipergunakan dapat bermacam – macam dan bergantung oleh bahasa pemrograman komputer yang digunakan.
υ Bahasa Pemrograman
Komputer memiliki berbagai bahasa. Dimana semua bahasa yang diterjemahkan oleh komputer mempunyai bahasa dasar yang berupa bahasa mesin. Bahasa mesin adalah bahasa yang hanya mengenal kode biner, yaitu kode yang berisi angka 1 atau 0 saja. Bahasa ini pastilah sulit untuk dipahami oleh manusia, sehingga diciptakanlah bahasa pemrograman komputer yang lain. Pada dasarnya ada dua golongan bahasa pemrograman komputer, yaitu : I. Bahasa tingkat rendah ( low level languages ) II. Bahasa tingkat tinggi ( high level languages )
Bahasa tingkat rendah adalah bahasa yang berorientasi pada mesin. Yang termasuk dalam golongan bahasa tingkat rendah adalah : i. Bahasa mesin ( machine languages ) ii. Bahasa rakitan ( assembly languages ) Bahasa pemrograman tingkat rendah sangat sukar untuk dipahami oleh orang awam. Terkadang orang yang sudah mahir pun masih sering mengalami kebingungan, karena kode yang digunakan pada setiap mesin itu berbeda – beda. Bahasa rakitan mempunyai kedudukan yang lebih tinggi dari pada bahasa mesin. Sederetan angka 0 dan 1 digantikan oleh kode – kode singkatan yang lebih Pemrograman Terstruktur 1
3
07020004
gampang diingat dari pada deretan angka. Meski demikian, bahasa ini tetap tergolong bahasa tingkat rendah, karena sangat berorientasi pada mesin. Agar program komputer dapat dibuat dengan mudah dan mudah dipahami oleh orang awam, maka kode yang digunakan harus tidak berorientasi pada mesin. Dari keinginan itulah maka diciptakanlah bahasa tingkat tinggi, yaitu bahasa yang berorientasi pada manusia. Beberapa diantara jenis bahasa tingkat tinggi adalah : Pascal Basic Combol Fortran C dan C++ dan lain – lain Dalam Laporan ini penulis hanya menyinggung Program bahasa Pascal, Program bahasa inilah yang digunakan oleh penulis selama praktik.
λ Keterangan Sebelum anda membaca buku laporan ini lebih jauh, ingatlah bahwa pada bagian hasil ada beberapa huruf atau angka yang bergaris bawah. Ini menunjukan huruf atau angka yang harus anda ketikkan.
Pemrograman Terstruktur 1
4
07020004
BAB III PASCAL
1
Sejarah
Pascal diciptakan pada awal 70an oleh sekumpulan pengaturcara yang diketuai oleh Niklaus Wirth (Eidgenossishe Technishe Hochshule, Zurich Switzerland) untuk menghasilkan suatu bahasa pengaturcaraan baru yang berstruktur dan mudah dipahami serta dikendalikan. Hasilnya ialah Pascal, sempena mengambil nama ahli falsafah dan matematik Perancis, Blaise Pascal (19 Jun,1623 19 Ogos,1662). Bahasa Pascal amat mudah serta menjadikan penggunanya menulis dalam format pengaturcaraan yang baik. Ia juga menggunakan pengkompilasi yang akan memeriksa aturcara anda sebelum ia diterjemahkan kedalam bahasa mesin. Kerana itulah ia sering digunakan sebagai bahan mengajar asas pengaturcaraan kepada pengaturcara atau pelajar yang ingin mengenali pengaturcaraan. Kebanyakan bahasa pengaturcaraan menggunakan bahasa Inggeris, dengan itu ia dikenali dengan Bahasa Tingkat Tinggi. Pascal akan mengkompail aturcara, menyemak aturcara dan menukarkannya kepada kode mesin dan di dalam fail yang boleh di’execute’ (fail *.EXE) tanpa memerlukan Bahasa Pascal lagi. Dengan itu ia akan menjadi lebih cepat di’access’ oleh komputer, pengguna tidak perlu memahami bahasa Pascal, mudah dijual atau disebarkan tanpa perlu hakcipta dari Borland (Inprise) International dan yang paling penting aturcara sumber (source codes) anda tidak perlu disertakan, ini akan menjamin keselamatan aturcara anda dari diubah atau disalin oleh pengguna yang tidak bertanggungjawab.
2 Versi Pascal Pascal dibagi dalam beberapa kategori;
a) Pascal Standard Pascal yang dicipta oleh Niklaus Wirth b) Turbo Pascal Ia juga dikenali sebagai Borland Pascal. Bahasa Pengaturcaraan Pascal baru yang dicipta oleh Borland International (kemudiannya menukar nama kepada Inprise Corporation). c) LainLain Pascal Terdapat banyak bahasa pengaturcaan Pascal yang boleh didapati secara percuma (‘download’ dari Internet) dan secara
Pemrograman Terstruktur 1
5
07020004
komersial. Antaranya : Free Pascal, dev Pascal dan Mystic Pascal. 3
Mengenal Lingkungan Pascal
Di dalam Pascal kita memiliki beberapa batang menu yang harus kita kenal sebelum mengoperasikannya. Isi dari menu tersebut adalah : υ File Berisi perintah untuk operasi yang berhubungan dengan file. Baik itu untuk membuka window baru, membuka file, menyimpan file, menutup file dan mengeprint. υ Edit Berisikan perintah yang berkaitan dengan perbaikan file, diantaranya : • copy + paste • undo + redo • melihat isi clipboard υ Search Diantaranya berguna untuk mencari dan mengganti teks υ Runs Berisi perintah untuk mengeksekusi program,mengisikan parameter perintah dan mengeksekusi perintah perlangkah. υ Compile Untuk mengkompilasi program ke disk atau ke memori. υ Debugs Untuk melakukan pencarian kesalahan. υ Options Untuk mengatur pilihan Debugger dan links
Pemrograman Terstruktur 1
6
07020004
υ Window Untuk mengatur jendela yang sedang aktif υ Help Berisi berbagai bantuan
ν Beberapa Fungsi Tombol Singkat No 1 2 3 4 5 6 7
Tombol Esc F10 F3 F2 Alt + F3 Alt + R Alt + huruf depan menu
Fungsi Membatalkan perintah Memilih toolbar Membuka file Untuk menyimpan file Untuk menutup jendela aktif Untuk membuka menu Runs Membuka menu
4 Struktur Program
Sebuah program dalam bahasa pascal paling tidak berisi sebuah kata yang diapit dengan kata : Begin writeln(' '); end. Di atas kata begin bisa ditambahkan kepala program. Misalnya saja : Program Pertamaku; Kata Program harus dipisahkan dengan dengan kata berikutnya. Contoh : Program pertamaku; uses crt; Begin clrscr; writeln('Hallo Dunia'); Pemrograman Terstruktur 1
7
07020004
writeln('Saya Pendatang baru di Pascal'); End. Pada contoh program di atas, setelah dieksekusi menghasilkan : Hallo Dunia Saya Pendatang baru di Pascal Press any key to return to IDE Crt; dan clrscr: berfungsi untuk mendapatkan hasil pada layar yang bersih ( yang ditampilkan hanyalah hasil eksekusi dari progrm ang ada di layar aktif ). Hal – hal yang perlu diperhatikan dalam menuliskan sebuah program : ➢ ➢ ➢
Tanda titik koma ( ; ), selalu diletakan di belakang baris. Tanda titik ( . ), selalu diletakan di belakang kata “end” di akhir program. Kata “Begin” harus berpasangan dengan kata “end”.
5 Elemen – elemen Pascal
Ada beberapa elemen yang harus terkandung dalam suatu program di dalam bahasa Pascal, yaitu : ν Simbol – simbol dasar Simbol – simbol dasar berupa : Huruf ===> ada huruf kapital ( A........Z) ada huruf kecil ( a...........z) Angka ===> berupa 0................9 ν Simbol khusus Simbol khusus dapat berupa : + , , * , / , = , ^ , ( ) , [ ] , { } , : , ' , # , $ ν Kata – kata cadangan Kata – kata ini mempunyai makna khusus. Kata – kata ini tidak dipakai untuk menamai label, type, variabel, konstanta bernama ataupun prosedure dan fungsi. Beberapa contoh kata cadangan : AND ASM ARRAY CASE CONST CONSTRUKTOR Pemrograman Terstruktur 1
8
07020004
DIV DO END EXPORT FUNCTION GOTO
DOWNTO FILE IF
ν Pengenal ( idenfier ) Merupakan elemen nama yang bamyak dipakai di dalam program. Ini nantinya digunakan untuk memberikan nama pada : label, variabel, procedure, fungsi, program, konstanta dan lain – lain.
υ Data υ Data dapat berupa : Type Byte Shortint Integer Word Longint
Ukuran memory 1 1 2 2 4
Jangkauan nilai 0 .........255 128 ...........127 32768 ........326767 0 ..................65535 2147483648...2147483647
Karakter kontrol Tanda operasi Komentar program Statment ( pernyataan ) Prosedure Fungsi
6. Praktikum yang dilaksanakan oleh Penulis
Pada program yang pertama penulis mempraktikan program sapaan. Inilah salah satu bentuk dari program sapaan :
• Praktikum Utama
6
Praktikum 1.1
Program pertamaku; Begin writeln('Hallo Dunia'); writeln('Saya Pendatang baru di Pascal'); Pemrograman Terstruktur 1
9
07020004
End. Setelah penulis mengeksekusi pragram di atas, didapatlah hasil sebagai berikut : Hasil: Hallo Dunia Saya Pendatang baru di Pascal Press any key to return to IDE
ν Konstanta
Suatu konstanta dapat diberi nama. Cara mendefinisikan konstanta yang mempunyai nama adalah dengan menggunakan CONST, dengan format sebagai berikut : CONST pengenal=nilai; ............... pengenal=nilai; Sebagai contoh : 6
Praktikum 1.2
Program contoh_konstanta; const potongan=0.2; gaji=25000; Namaperusahaan='PT.Lali Jawa'; Begin writeln('Potongan=',potongan:1); writeln('Gaji=',gaji:1); writeln('Nama Perusahaan=',Namaperusahaan); End. Jawab: Potongan=0.2 Gaji=25000 Nama Perusahaan=PT.Lali Jawa Press any key to return to IDE Pemrograman Terstruktur 1
10
07020004
6
Praktikum 1.3
Program konstanta_terdefinisi; Begin writeln('Nilai logika=',true); writeln('Nilai logika=',false); writeln('Nilai maxlnt=',maxint); writeln('Nilai maxlongint=',maxlongint); end. Jawab Nilai logika=TRUE Nilai logika=FALSE Nilai maxlnt=32767 Nilai maxlongint=2147483647 Press any key to return to IDE 6
Praktikum 1.4
program contoh_deklarasi_variabel; uses crt; var total,gaji,tunjangan : real; menikah : boolean; jumlahanak : integer; ket : string[25]; begin clrscr; gaji := 50000; menikah := true; jumlahanak := 3; tunjangan := 0.25*gaji + jumlahanak * 30000; total :=gaji + tunjangan; ket := 'karyawan teladan'; writeln('gaji bulanan : Rp', gaji); writeln('tunjangan : Rp',tunjangan); Pemrograman Terstruktur 1
11
07020004
writeln('total gaji := Rp',total); writeln('sudah menikah =',menikah); writeln('jumlah anak =',jumlahanak); writeln('ket =',ket); end. Hasil : gaji bulanan : Rp50000.000 tunjangan : Rp102500.000 total gaji := Rp152500.000 sudah menikah =TRUE jumlah anak =3 ket =karyawan teladan Press any key to return to IDE 6
Praktikum 2.1
Program Nilai; var nilai_1,nilai_2 :real; Begin nilai_1 :=12345678907.234; nilai_2 :=12345; writeln('Nilai 1=',nilai_1); writeln('Nilai 2=',nilai_2); end. Hasil : Nilai 1= 1.234567890723400E+010 Nilai 2= 1.234500000000000E+004 Press any key to return to IDE 6
Praktikum 2.2
{$n+} var S : single; D : double; Pemrograman Terstruktur 1
12
07020004
E : extended; C : comp; Begin S:=22/7; D:=22/7; E:=22/7; C:=22/7; writeln('single:',S); writeln('Double:',D); writeln('Extended:',E); writeln('Comp:',C); end. Jawab single: 3.142857075E+00 Double: 3.142857142857143E+000 Extended: 3.1428571428571429E+0000 Comp: 3.00000000000000E+0000 Press any key to return to IDE
ν Tipe data karakter Sebuah karakter ditulis di antara tanda petik tunggal. Contoh : 6
Praktikum 2.3
Program karakter; var sebuah_karakter :char; Begin sebuah_karakter := 'A'; writeln('Karakter tersebut adalah : ',sebuah_karakter); end. Jawab Karakter tersebut adalah : A Press any key to return to IDE
Pemrograman Terstruktur 1
13
07020004
ν Tipe data boolean Boolean berupa True atau False 6
Praktikum 3.1
Program coba_boolean; var lagi:boolean; Begin lagi:=True; writeln('Nilai Lagi :',lagi); end. Hasil : Nilai Lagi :TRUE Press any key to return to IDE
ν Tipe data pointer Pointer adalah variabel yang berisikan alamat ( address ) di Random Acces Memori ( RAM ) tempat suatu data di simpan. 6
Praktikum 3.2
Type Tipestring = string [40]; Pointerstring = Tipestring; var LetakNama : pointerstring; Begin LetakNama :='Sakuri 1985'; writeln(LetakNama); end. Hasil : Sakuri 1985 ν Press any key to return to IDE
ν Karakter kontrol Pemrograman Terstruktur 1
14
07020004
6
Praktikum 3.3
Program karakter_kontrol; uses crt; Begin clrscr; writeln(#83#65#89#65); writeln('Karakter ASCII #65 mewakili :',#65,' dan #83 mewakili :',#83,' serta karakter #89 mewakili :',#89); end. Hasil : SAYA Karakter ASCII #65 mewakili :A dan #83 mewakili :S serta karakter #89 mewakili :Y Press any key to return to IDE 6
Praktikum 3.4
Program karakter_kontrol_2; uses crt; Begin clrscr; writeln('Karakter ASCii'); writeln('65 mewakili,'#65:15); writeln('90 mewakili,'#90:15); writeln('antara '#65,' sampai '#90,' ada diantara 65.....90'); writeln('Untuk lainnya, mencari sendiri'); end. Hasil : Karakter ASCii 65 mewakili,A 90 mewakili,Z antara A sampai Z ada diantara 65.....90 Untuk lainnya, mencari sendiri Press any key to return to IDE
Pemrograman Terstruktur 1
15
07020004
6
Praktikum 3.5
Program lingkaran; uses crt; var r,luas,keliling,volume : real; Begin clrscr; r :=5; luas:=3.14*r*r; keliling:=2*3.14*r; volume:=(4/3)*3.14*r*r*r; writeln('Luas Lingkaran :',luas); writeln('Keliling Lingkaran :',keliling); writeln('Volume Bola :',volume); end. Hasil : Luas Lingkaran : 1.130400000000000E+002 Keliling Lingkaran : 3.768000000000000E+001 Volume Bola : 9.043200000000001E+002 Press any key to return to IDE Praktikum 4.1 Program pytagoras; uses crt; var a,b,c : real; begin clrscr; writeln('Mencari nilai sisi miring pada segitiga siku siku'); writeln('dengan menggunakan hukum phytagoras'); writeln; writeln; writeln('Masukkan panjang sisi mendatar (x) ? '); readln(a); write('Masukkan panjang sisi tegak (y) ? '); readln(b); C := sqrt(sqr (a) + sqr (b)); writeln('Panjang sisi miring (r) = ',C:4:3); end. Pemrograman Terstruktur 1
16
07020004
Hasil : Mencari nilai sisi miring pada segitiga sikusiku dengan menggunakan hukum phytagoras
Masukkan panjang sisi mendatar (x) ? 5 Masukkan panjang sisi tegak (y) ? 2 Panjang sisi miring (r) = 5.385 Press any key to return to IDE 6
Praktikum 4.2
uses crt; var a,b,c,m : real; begin clrscr; writeln('Program mencari persamaan garis yang melalui titik (a,b)'); writeln; write('Masukkan nilai basis a = '); readln(a); write('Masukkan nilai koordinat b = '); readln(b); m := b/a; c := a*m + b; writeln('m = ',m:3:2); writeln('c = ',c:3:2); writeln('Persamaan garis lurus yang dimaksud adalah = '); writeln('y = ',m:2:2,' x + ',C:2:2); end. Program mencari persamaan garis yang melalui titik (a,b) Masukkan nilai basis a = 6 Masukkan nilai koordinat b = 5 m = 0.83 Pemrograman Terstruktur 1
17
07020004
c = 10.00 Persamaan garis lurus yang dimaksud adalah = y = 0.83 x + 10.00 Press any key to return to IDE
ν Tabel dan Perulangan 6
Praktikum 5.1
Program Tabel; uses crt; var a,b,c : integer; d : real; Begin clrscr; writeln('============================'); writeln(' x x+x x+x+x 1/x'); writeln('============================'); for a := 1 to 20 do Begin b:=a+a; c:=a+a+a; d:=1/a; writeln(a:2,b:5,c:5,d:12:3 ); end; writeln('=============================='); end. Hasil : x x+x x+x+x 1/x ============================ 1 2 3 1.000 2 4 6 0.500 3 6 9 0.333 4 8 12 0.250 5 10 15 0.200 6 12 18 0.167 7 14 21 0.143 Pemrograman Terstruktur 1
18
07020004
8 16 24 0.125 9 18 27 0.111 10 20 30 0.100 11 22 33 0.091 12 24 36 0.083 13 26 39 0.077 14 28 42 0.071 15 30 45 0.067 16 32 48 0.063 17 34 51 0.059 18 36 54 0.056 19 38 57 0.053 20 40 60 0.050 ============================== Press any key to return to IDE 6
Praktikum 5.2
Program Tabel_2;{perulangan} uses crt; var I,J:integer; Begin clrscr; for I := 1 to 5 do Begin for J := 1 to 3 do writeln(I:2,J:5); writeln; end; end. Hasil : 1 1 1 2 1 3 2 1 Pemrograman Terstruktur 1
19
07020004
2 2 2 3 3 1 3 2 3 3 4 1 4 2 4 3 5 1 5 2 5 3 Press any key to return to IDE 6
Praktikum 5.3
uses crt; var x:integer; sinus,cosinus,tangen : real; begin clrscr; writeln('>'); for I:=2 to 1000 do Begin if Prima[I] '*' then Begin write(I:5); Jumlah := Jumlah +1; if I 2 3 5 7 11 13 17 19 23 2 9 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 22 229 233 239 241 251 257 263 269 271 27 281 283 293 307 311 313 317 331 337 34 Pemrograman Terstruktur 1
44
07020004
349 353 359 367 373 379 383 389 397 40 409 419 421 431 433 439 443 449 457 46 463 467 479 487 491 499 503 509 521 52 541 547 557 563 569 571 577 587 593 59 601 607 613 617 619 631 641 643 647 65 659 661 673 677 683 691 701 709 719 72 733 739 743 751 757 761 769 773 787 79 809 811 821 823 827 829 839 853 857 85 863 877 881 883 887 907 911 919 929 93 941 947 953 967 971 977 983 991 997 Banyaknya bilangan prima sampai dengan 1000 : 168 Press any key to return to IDE
Array uses crt; var I,N : byte; total, rata, sigma, sd : real; x : array[byte] of real; Begin clrscr; write('Jumlah data ( maximal 255)'); readln(N); writeln; total:=0; for I:=1 to N do Begin write('Nilai data ke ',I,' ?'); readln(x[I]); total:= total + x[I]; end; rata:= total /N; sigma :=0; for I:=1 to N do sigma := sigma + sqr(x[I] rata); sd := sqrt(sigma/N); writeln; writeln('Jumlah data : ',n:7); writeln('Total Nilai data : ',total:7:2); writeln('Rata rata nilai data : ',rata:7:2); writeln('Simpangan baku data : ',sd:7:2); Pemrograman Terstruktur 1
45
07020004
end. Hasil : Jumlah data ( maximal 255) :3 Nilai data ke 1 ?5 Nilai data ke 2 ?8 Nilai data ke 3 ?4 Jumlah data : 3 Total Nilai data : 17.00 Rata rata nilai data : 5.67 Simpangan baku data : 1.70 Press any key to return to IDE
Program mencariakarpersamaan; uses crt; var a,b,c,x,x1,x2,D,Im : real; lagi : char; Begin clrscr; lagi := 'y'; while lagi='y' do Begin writeln('Mencari akar persamaan dari Bentuk umum'); writeln('ax^2 + bx + c = 0, dengan a tidak = 0'); a:=0; while a = 0 do Begin write('Masukan nilai a : '); readln(a); end; write('Masukan nilai b : '); readln(b); write('Masukan nilai c : '); readln(c); D :=sqr(b)4*a*c; Pemrograman Terstruktur 1
46
07020004
writeln('Persamaan yang anda maksud adalah'); writeln(a:4:2,'x^2 ',b:4:2,'x +',c:4:2); writeln; if D=0 then Begin x:= ( b + sqrt(D)) / 2*a; writeln('Yang memiliki akar kembar, x1 = x2 =',x:4:2); end; if D>0 then Begin x1:=(b + sqrt(D)) /2*a; x2:=(b sqrt(D)) /2*a; writeln('Yang memiliki akar akar x1 = ',x1:4:2,' dan x2 = ',x2:4:2); end; if D