[{"data":1,"prerenderedAt":385},["ShallowReactive",2],{"tag-labels":3,"site-header":4,"article-operasi-aritmatika-pada-bahasa-pascal-id":72},{},{"featuredPost":5,"navigations":29},{"id":6,"title":7,"title_en":8,"slug":9,"excerpt":10,"excerpt_en":11,"has_translation":12,"published_at":13,"reading_time":14,"hidden_from_listing":15,"tags":16,"thumbnail_image":21,"og_image":22,"series":23,"authors":28},110,"Ketika Pilih Framework Cuma Biar Kelihatan Beda","When You Pick a Framework Just to Look Different","ketika-pilih-framework-cuma-biar-kelihatan-beda","Terakhir kali kamu milih framework atau library baru, itu karena masalahmu butuh alat itu, atau karena alatnya kedengaran keren dan belum banyak yang pakai? Pertanyaan ini nggak enak dijawab. Soalnya keputusan teknologi sering diambil dengan alasan yang nggak pernah ditulis di dokumen teknis mana pun.","The last time you chose a new framework or library, was it because your problem needed that tool, or because it sounded cool and few people around you were using it? That question is uncomfortable. Technology decisions are often made for reasons that never appear in any technical document.",true,"2026-10-06T15:25:21.000Z",5,false,[17,18,19,20],"karier","framework","opini","pengalaman",null,"\u002Fog\u002Fketika-pilih-framework-cuma-biar-kelihatan-beda.png",{"id":24,"title":25,"title_en":26,"slug":27},9,"Artikel","Articles","all",[],[30,46,67],{"collection":31,"item":32},"series",{"__typename":31,"title":25,"title_en":26,"slug":27,"children_series":33},[34,38,42],{"title":35,"title_en":36,"slug":37},"Kecerdasan Artifisial","Artificial Intelligence","kecerdasan-artifisial",{"title":39,"title_en":40,"slug":41},"Konsep Dasar Pemrograman","Programming Fundamentals","konsep-dasar-pemrograman",{"title":43,"title_en":44,"slug":45},"Algoritma dan Struktur Data","Algorithms and Data Structures","algoritma-struktur-data",{"collection":31,"item":47},{"__typename":31,"title":48,"title_en":48,"slug":49,"children_series":50},"Tutorial","tutorial",[51,55,59,63],{"title":52,"title_en":53,"slug":54},"Belajar Python","Learning Python","belajar-python",{"title":56,"title_en":57,"slug":58},"Belajar Golang","Learning Go","belajar-golang",{"title":60,"title_en":61,"slug":62},"Belajar Java","Learning Java","belajar-java",{"title":64,"title_en":65,"slug":66},"Belajar Pascal","Learning Pascal","belajar-pascal",{"collection":31,"item":68},{"__typename":31,"title":69,"title_en":69,"slug":70,"children_series":71},"Lab","lab",[],{"article":73,"renderedBody":269,"renderedTakeaway":270,"latestArticles":271,"toc":371},{"id":74,"title":75,"title_en":76,"slug":77,"excerpt":78,"excerpt_en":79,"has_translation":12,"published_at":80,"reading_time":14,"hidden_from_listing":15,"tags":81,"thumbnail_image":21,"og_image":85,"series":86,"authors":262,"body_locale":265,"available_locales":266,"body":268,"takeway":21,"prerequisite":21},66,"Operasi Aritmatika pada Bahasa Pascal","Arithmetic Operations in Pascal","operasi-aritmatika-pada-bahasa-pascal","Setelah tahu tentang apa itu tipe data, sekarang kita akan coba belajar tentang operasi apa saja yang dapat dilakukan pada setiap tipe data dalam bahasa Pascal.","Once you know what a data type is, the next question is which operations each type allows. Here is the answer for Pascal, type by type.","2020-10-18T11:46:28.000Z",[82,83,84],"pascal","operator","dasar","\u002Fog\u002Foperasi-aritmatika-pada-bahasa-pascal.png",{"id":87,"title":88,"title_en":89,"slug":90,"description":91,"description_en":92,"articles":93,"children_series":241,"parent_series":242},23,"Berkenalan dengan Bahasa Pascal","Getting Started with Pascal","pascal-intro","Dari instalasi Free Pascal di Windows dan Linux, bikin Hello World, sampai paham struktur program, komentar, dan operasi aritmatika.","Install Free Pascal on Windows or Linux, write Hello World, then learn how a Pascal program is put together, comments and arithmetic included.",[94,114,130,146,162,178,192,209,214,227],{"id":95,"title":88,"title_en":96,"slug":97,"excerpt":98,"excerpt_en":99,"has_translation":12,"published_at":100,"reading_time":101,"hidden_from_listing":15,"tags":102,"thumbnail_image":21,"og_image":105,"series":106,"authors":107},59,"Getting to Know the Pascal Language","berkenalan-dengan-bahasa-pascal","Pascal merupakan bahasa pemrograman dengan sintaks sederhana, ekspresif, dan mudah dibaca. Ini membuatnya menjadi bahasa pemrograman yang baik untuk pemula.","Pascal is a programming language with a simple, expressive, and readable syntax. That makes it a good first language for beginners.","2020-10-28T09:11:25.000Z",3,[82,103,104,84],"intro","pemrograman","\u002Fog\u002Fberkenalan-dengan-bahasa-pascal.png",{"id":87,"title":88,"title_en":89,"slug":90},[108],{"authors_id":109},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},1,"Daffa Izzuddin","izzudd","Writer",{"id":115,"title":116,"title_en":117,"slug":118,"excerpt":119,"excerpt_en":120,"has_translation":12,"published_at":121,"reading_time":101,"hidden_from_listing":15,"tags":122,"thumbnail_image":21,"og_image":125,"series":126,"authors":127},60,"Sistem Input dengan Read dan Readln pada Bahasa Pascal","Input with Read and Readln in Pascal","sistem-input-dengan-read-dan-readln-pada-bahasa-pascal","Pada kesempatan kali ini kita akan belajar tentang proses masukan dari keyboard dengan menggunakan perintah read dan readln pada Bahasa Pascal.","This time you'll learn how keyboard input works with the read and readln commands in Pascal.","2020-10-22T12:05:49.000Z",[82,123,124],"input-output","syntax","\u002Fog\u002Fsistem-input-dengan-read-dan-readln-pada-bahasa-pascal.png",{"id":87,"title":88,"title_en":89,"slug":90},[128],{"authors_id":129},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":131,"title":132,"title_en":133,"slug":134,"excerpt":135,"excerpt_en":136,"has_translation":12,"published_at":137,"reading_time":101,"hidden_from_listing":15,"tags":138,"thumbnail_image":21,"og_image":141,"series":142,"authors":143},61,"Menginstall Free Pascal pada Linux","Installing Free Pascal on Linux","menginstall-free-pascal-pada-linux","Untuk menjalankan kode Pascal pada sistem operasi Windows kita perlu compiler. Kali ini kita akan mengunakan Free Pascal sebagai compiler sekaligus code editor kita.","To run Pascal code you need a compiler. This time we'll use Free Pascal as both our compiler and our code editor.","2020-10-01T07:33:57.000Z",[82,139,140],"instalasi","tooling","\u002Fog\u002Fmenginstall-free-pascal-pada-linux.png",{"id":87,"title":88,"title_en":89,"slug":90},[144],{"authors_id":145},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":147,"title":148,"title_en":149,"slug":150,"excerpt":151,"excerpt_en":152,"has_translation":12,"published_at":153,"reading_time":154,"hidden_from_listing":15,"tags":155,"thumbnail_image":21,"og_image":157,"series":158,"authors":159},62,"Mengenal Bagian dan Struktur Bahasa Pascal","The Parts and Structure of a Pascal Program","mengenal-bagian-dan-struktur-bahasa-pascal","Ibarat menulis surat mulai dari kepala surat sampai tanda tangan, kode Pascal juga memiliki aturan penulisan dan struktur yang harus dipenuhi. Mari kita bahas lebih lanjut.","Like a letter that runs from the letterhead to the signature, Pascal code has writing rules and a structure it has to satisfy. Here is what goes where.","2020-10-04T13:29:37.000Z",4,[82,124,84,156],"konsep","\u002Fog\u002Fmengenal-bagian-dan-struktur-bahasa-pascal.png",{"id":87,"title":88,"title_en":89,"slug":90},[160],{"authors_id":161},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":163,"title":164,"title_en":165,"slug":166,"excerpt":167,"excerpt_en":168,"has_translation":12,"published_at":169,"reading_time":101,"hidden_from_listing":15,"tags":170,"thumbnail_image":21,"og_image":173,"series":174,"authors":175},63,"Penulisan Komentar pada Bahasa Pascal","Writing Comments in Pascal","penulisan-komentar-pada-bahasa-pascal","Kali ini kita akan membahas tentang penulisan komentar pada bahasa Pascal. Komentar adalah bagian dar kode yang tidak akan dibaca oleh komputer.","This time we'll cover how to write comments in Pascal. A comment is the part of the code the computer never reads.","2020-10-05T11:08:33.000Z",[82,171,124,172],"komentar","best-practice","\u002Fog\u002Fpenulisan-komentar-pada-bahasa-pascal.png",{"id":87,"title":88,"title_en":89,"slug":90},[176],{"authors_id":177},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":179,"title":180,"title_en":181,"slug":182,"excerpt":183,"excerpt_en":184,"has_translation":12,"published_at":185,"reading_time":101,"hidden_from_listing":15,"tags":186,"thumbnail_image":21,"og_image":187,"series":188,"authors":189},64,"Output dengan Write dan Writeln pada Bahasa Pascal","Output with Write and Writeln in Pascal","output-dengan-write-dan-writeln-pada-bahasa-pascal","Sistem output merupakan suatu yang sangat penting dalam pemrograman. Bukan cuma pemrograman, bahkan semua hal pasti berorientasi pada output.","Output matters in programming, and not only there: every process is judged by what it produces. This is how Pascal puts text on the console.","2020-10-09T11:17:19.000Z",[82,123,124],"\u002Fog\u002Foutput-dengan-write-dan-writeln-pada-bahasa-pascal.png",{"id":87,"title":88,"title_en":89,"slug":90},[190],{"authors_id":191},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":193,"title":194,"title_en":195,"slug":196,"excerpt":197,"excerpt_en":198,"has_translation":12,"published_at":199,"reading_time":200,"hidden_from_listing":15,"tags":201,"thumbnail_image":21,"og_image":204,"series":205,"authors":206},65,"Variable, Konstanta, dan Tipe Data pada Pascal","Variables, Constants, and Data Types in Pascal","variable-konstanta-dan-tipe-data-pada-pascal","Variable, konstanta, dan tipe data merupakan jantung dari pemrograman yang akan kita gunakan untuk melakukan manipulasi data.","Variables, constants, and data types are the heart of programming: they're what you use to manipulate data.","2020-10-11T11:25:24.000Z",7,[82,202,203,84],"variabel","tipe-data","\u002Fog\u002Fvariable-konstanta-dan-tipe-data-pada-pascal.png",{"id":87,"title":88,"title_en":89,"slug":90},[207],{"authors_id":208},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":74,"title":75,"title_en":76,"slug":77,"excerpt":78,"excerpt_en":79,"has_translation":12,"published_at":80,"reading_time":14,"hidden_from_listing":15,"tags":81,"thumbnail_image":21,"og_image":85,"series":210,"authors":211},{"id":87,"title":88,"title_en":89,"slug":90},[212],{"authors_id":213},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":215,"title":216,"title_en":217,"slug":218,"excerpt":135,"excerpt_en":219,"has_translation":12,"published_at":220,"reading_time":14,"hidden_from_listing":15,"tags":221,"thumbnail_image":21,"og_image":222,"series":223,"authors":224},102,"Menginstal Free Pascal pada Windows","Installing Free Pascal on Windows","menginstal-free-pascal-pada-windows","To run Pascal code on Windows you need a compiler. This time we'll use Free Pascal as both our compiler and our code editor.","2020-09-30T07:32:11.000Z",[82,139,140],"\u002Fog\u002Fmenginstal-free-pascal-pada-windows.png",{"id":87,"title":88,"title_en":89,"slug":90},[225],{"authors_id":226},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":228,"title":229,"title_en":230,"slug":231,"excerpt":232,"excerpt_en":233,"has_translation":12,"published_at":234,"reading_time":154,"hidden_from_listing":15,"tags":235,"thumbnail_image":21,"og_image":236,"series":237,"authors":238},103,"Membuat Program Hello World pada Pascal","Writing Your First Hello World Program in Pascal","membuat-program-hello-world-pada-pascal","Setelah melakukan instalasi Free Pascal baik pada windows atau linux, kali ini kita akan belajar untuk membuat program pertama kita. Sekaligus kenalan sedikit dengan Program Free Pascal.","With Free Pascal installed on Windows or Linux, it's time for your first program, plus a quick look around the Free Pascal IDE.","2020-10-02T13:06:35.000Z",[82,49,84],"\u002Fog\u002Fmembuat-program-hello-world-pada-pascal.png",{"id":87,"title":88,"title_en":89,"slug":90},[239],{"authors_id":240},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},[],{"id":243,"title":64,"title_en":65,"slug":66,"parent_series":244,"children_series":245},14,{"id":110,"title":48,"title_en":48,"slug":49},[246,247,252,257],{"id":87,"title":88,"title_en":89,"slug":90,"cover_image":21},{"id":248,"title":249,"title_en":250,"slug":251,"cover_image":21},24,"Struktur Kontrol","Control Structures","pascal-struktur-kontrol",{"id":253,"title":254,"title_en":255,"slug":256,"cover_image":21},25,"Tipe Data Bentukan","Composite Types","pascal-tipe-data-bentukan",{"id":258,"title":259,"title_en":260,"slug":261,"cover_image":21},26,"Pemrograman Prosedural","Procedural Programming","pascal-pemrograman-prosedural",[263],{"authors_id":264},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},"id",[267,265],"en","Operasi Aritmatika merupakan operasi yang biasa kita temui pada matematika. Ada tambah, kurang, kali, bagi, dan masih banyak lagi. Dalam pemrograman Pascal, operasi aritmatika juga kita gunakan untuk proses manipulasi data. Karena dalam pemrograman tidak hanya berurusan dengan angka, jadi operasinya juga akan berbeda pada setiap tipe data.\n\nSetelah tahu tentang apa itu tipe data, sekarang kita akan coba belajar tentang operasi apa saja yang dapat dilakukan pada setiap tipe data dalam bahasa Pascal. Kebanyakan operasi ini juga berlaku untuk bahasa pemroraman lainnya.\n\n## Operasi Tipe Data Integer pada Pascal\n\nTipe data integer berisi bilangan bulat negatif, positif, dan nol. Tipe data integer tidak mengenal angka desimal, dan pecahan. Sehingga operasi yang dapat dilakukan pada tipe data integer juga **tidak boleh** menghasilkan bilangan desimal.\n\nOperasi yang dapat dilakukan pada tipe data integer adalah **tambah, kurang, kali, divisi,** dan **modulus.** Tipe data integer tidak mengenal yang namanya operasi pembagian, karena memungkinkan hasilnya berupa bilangan desimal.\n\n| Operasi     | Tanda | Keterangan                             | Contoh        |\n| ----------- | ----- | -------------------------------------- | ------------- |\n| Penjumlahan | `+`   | Melakukan penjumlahan 2 bilangan bulat | 2+2 = 4       |\n| Pengurangan | `–`   | Melakukan pengurangan 2 bilangan bulat | 6-4 = 2       |\n| Perkalian   | `*`   | Melakukan perkalian 2 bilangan bulat   | 6*6 = 36      |\n| Divisi      | `div` | Membagi 2 bilangan dibulatkan ke bawah | 5 `div` 2 = 2 |\n| Modulus     | `mod` | Mengambil sisa bagi 2 bilangan         | 5 `mod` 2 = 1 |\n\nPada operasi tipe data integer terdapat 2 operasi yang tidak ada di operasi matematika, yaitu `div` dan `mod`.\n\nOperasi `div` merupakan operasi pembagian dengan **pembulatan** **ke bawah**. Tapi saya lebih suka menyebutnya sebagai **pembagian tanpa sisa.** Sedangkan operasi `mod` merupakan operasi pembagian namun **hanya diambil sisanya saja.**\n\nContohnya **9 : 2 = 4 sisa 1**. Jadi `9 div 2 = 4` dan `9 mod 2 = 1`.\n\nContoh yang lain adalah **7 : 5 = 1 sisa 2**. Jadi `7 div 5 = 1`. dan `7 mod 5 = 2`.\n\nSupaya lebih paham lagi tentang operasi `div` dan `mod`, coba ketikkan kode dibawah ini lalu jalankan.\n\n```pascal\nprogram OperasiDivMod;\nuses crt;\n\n\u002F\u002F deklarasi variable\nvar\n  a, b :integer;\n  hasil :integer;\n  sisa :integer;\n\n{Program ini digunakan untuk menampilkan hasil bagi a dan b\ndalam bentuk 'hasil dan sisa' (bukan dalam bentuk desimal)}\nbegin\n  clrscr;\n\n  \u002F\u002F memberi nilai variable\n  a := 7;\n  b := 5;\n  hasil := a div b; \u002F\u002F hasil bagi antara a dan b tanpa sisa\n  sisa := a mod b; \u002F\u002F sisa bagi antara a dan b\n\n  \u002F\u002F sistem output\n  writeln('nilai a = ', a); \u002F\u002F menampilkan nilai a\n  writeln('nilai b = ', b); \u002F\u002F menampilkan nilai b\n\n  \u002F\u002F menampilkan operasi pembagian\n  write(a, ' \u002F ', b, ' = '); \u002F\u002F menampilkan a dan b\n  writeln(hasil, ' sisa ', sisa); \u002F\u002F menampilkan hasil dan sisa\n\n  readln;\nend.\n```\n\nKira kira output programnya akan terliat seperti ini.\n\n```\nnilai a = 7\nnilai b = 5\n7 \u002F 5 = 1 sisa 2\n```\n\nUntuk eksperimen kalian bisa coba ganti nilai variable **a** dan **b**. Oh iya sekalian kalian bisa coba ganti operasi `div` diatas menjadi tanda bagi (\u002F) dan lihat apa yang terjadi hehe.\n\n## Operasi Tipe Data Real pada Pascal\n\nOperasi pascal selanjutnya adalah pada tipe data Real. Baik Real maupun Integer merupakan tipe data yang berupa angka, sehingga sebagian besar operasi yang dapat dilakukan juga sama.\n\nPerbedaannya hanya terletak pada operasi pembagian. Tipe data Real mengenal operasi pembagian, namun Integer tidak. Di sisi lain tipe data Real tidak mengenal operasi `div` dan `mod`\n\nAda lagi satu operasi untuk tipe data real. Lebih tepatnya ini disebut **format** bukan operasi hehe. Jadi secara default pascal akan membaca bilangan desimal dengan banyak angka 0 dibelakang koma. Nah kita bisa mengatasi ini dengan cara melakukan [format real](https:\u002F\u002Fwiki.freepascal.org\u002FFormatting_output).\n\n| Operasi     | Tanda | Keterangan                       | Contoh            |\n| ----------- | ----- | -------------------------------- | ----------------- |\n| Penjumlahan | +     | Melakukan penjumlahan 2 bilangan | 2.7+2.7 = 5.4     |\n| Pengurangan | –     | Melakukan pengurangan 2 bilangan | 6.9-10.9 = -4.0   |\n| Perkalian   | \\*    | Melakukan perkalian 2 bilangan   | 0.6*6 = 3.6       |\n| Pembagian   | \u002F     | Membagi 2 bilangan               | 5 \u002F 2 = 2.5       |\n| Fromat      | r:[a]:b | Melakukan format real            | 3.1415:2:2 = 3.14 |\n\n> pada tabel diatas maksud dari r:[a]:b adalah **r**: bilangan real; **a**: panjang bilangan didepan koma; **b**: panjang bilangan dibelakang koma.\n\nPada bahasa Pascal, bilangan bulat juga dapat masuk kedalam nilai variable Real, tidak seperti Integer yang hanya bisa menerima bilangan bulat. Ini karena bilangan bulat dapat dituliskan dalam bentuk desimal. Angka 7 (integer) dapat ditulis sebagai 7.0 (real).\n\nYuk coba kita koding pakai tipe data real, biar semakin paham hehe\n\n```pascal\nprogram OperasiReal;\nuses crt;\n\n\u002F\u002F deklarasi variable\nvar\n  a, b: integer;\n  c, d: real;\n\nbegin\n  clrscr;\n\n  \u002F\u002F memberi nilai pada variable\n  a := -20;  \u002F\u002F bilangan negatif\n  b := 4;\n  c := a\u002Fb;\n  d := -c\u002Fb; \u002F\u002F negatif dibagi negatif menjadi positif\n\n  \u002F\u002F output nilai variable\n  writeln('a = ', a);\n  writeln('b = ', b);\n  writeln('c = ', c);\n  writeln('d = ', d);\n  readln;\nend.\n```\n\nJika kalian jalankan maka kurang lebih outputnya akan seperti ini\n\n```\na = -20\nb = 4\nc =  -5.0000000000000000E+000\nd =  1.2500000000000000E+000\n```\n\nWow wow, kenapa banyak angka nol disana :o Ini karena variable **c** dan **e** belum diformat. Untuk melakukan format kita bisa menambahkan operasi format pada perintah `writeln`. Selanjutnya silahkan ganti kode output **c** dan **d** kalian menjadi seperti ini.\n\n```pascal\n....\n  writeln('c = ', c:2:2);\n  writeln('d = ', d:2:2);\n....\n```\n\nKalau sudah jadi nanti hasil outputnya akan berubah menjadi seperti ini\n\n```\na = -20\nb = 4\nc = -5.00\nd = 1.25\n```\n\nJadi angka didepan dan dibelakang koma dibatasi hanya berjumlah 2 digit saja. Sekarang jadi lebih enak dilihat :D\n\n## Urutan Prioritas Operasi Pada Pascal\n\nUrutan prioritas operasi pada pascal sama seperti urutan pada operasi aritmatika dalam matematika yaitu:\n\n1. Operasi dalam kurung didahulukan\n2. Selanjutnya operasi kali , bagi, `div`, dan `mod`\n3. Selanjutnya operasi tambah dan kurang\n4. Operasi selalu dilakukan dari kiri\n\nContoh kita punya variable a yang bertipe real. Maka 2\\*3+7 tidak sama dengan 2\\*(3+7)\n\n## Penutup\n\nOperasi Aritmatika pada Pascal sebenarnya sama seperti yang ada pada matematika. Semua operasi ini akan sangat berguna dalam melakukan manipulasi data kedepannya. Untuk operasi tipe data yang lainnya seperti string dan boolean akan kita bahas pada tutorial tutorial selanjutnya hehe.\n\nCukup sekian untuk tutorial pascal kali ini, semoga bermanfaat 👋 Pada tutorial selanjutnya kita akan membahas tentang [sistem input Pada Bahasa Pascal](https:\u002F\u002Finvasikode.com\u002Fread-readln-pascal\u002F).\n","\u003Cp>Operasi Aritmatika merupakan operasi yang biasa kita temui pada matematika. Ada tambah, kurang, kali, bagi, dan masih banyak lagi. Dalam pemrograman Pascal, operasi aritmatika juga kita gunakan untuk proses manipulasi data. Karena dalam pemrograman tidak hanya berurusan dengan angka, jadi operasinya juga akan berbeda pada setiap tipe data.\u003C\u002Fp>\n\u003Cp>Setelah tahu tentang apa itu tipe data, sekarang kita akan coba belajar tentang operasi apa saja yang dapat dilakukan pada setiap tipe data dalam bahasa Pascal. Kebanyakan operasi ini juga berlaku untuk bahasa pemroraman lainnya.\u003C\u002Fp>\n\u003Ch2 id=\"operasi-tipe-data-integer-pada-pascal\">Operasi Tipe Data Integer pada Pascal\u003C\u002Fh2>\n\u003Cp>Tipe data integer berisi bilangan bulat negatif, positif, dan nol. Tipe data integer tidak mengenal angka desimal, dan pecahan. Sehingga operasi yang dapat dilakukan pada tipe data integer juga \u003Cstrong>tidak boleh\u003C\u002Fstrong> menghasilkan bilangan desimal.\u003C\u002Fp>\n\u003Cp>Operasi yang dapat dilakukan pada tipe data integer adalah \u003Cstrong>tambah, kurang, kali, divisi,\u003C\u002Fstrong> dan \u003Cstrong>modulus.\u003C\u002Fstrong> Tipe data integer tidak mengenal yang namanya operasi pembagian, karena memungkinkan hasilnya berupa bilangan desimal.\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Operasi\u003C\u002Fth>\n\u003Cth>Tanda\u003C\u002Fth>\n\u003Cth>Keterangan\u003C\u002Fth>\n\u003Cth>Contoh\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>Penjumlahan\u003C\u002Ftd>\n\u003Ctd>\u003Ccode>+\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Melakukan penjumlahan 2 bilangan bulat\u003C\u002Ftd>\n\u003Ctd>2+2 = 4\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Pengurangan\u003C\u002Ftd>\n\u003Ctd>\u003Ccode>–\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Melakukan pengurangan 2 bilangan bulat\u003C\u002Ftd>\n\u003Ctd>6-4 = 2\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Perkalian\u003C\u002Ftd>\n\u003Ctd>\u003Ccode>*\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Melakukan perkalian 2 bilangan bulat\u003C\u002Ftd>\n\u003Ctd>6*6 = 36\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Divisi\u003C\u002Ftd>\n\u003Ctd>\u003Ccode>div\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Membagi 2 bilangan dibulatkan ke bawah\u003C\u002Ftd>\n\u003Ctd>5 \u003Ccode>div\u003C\u002Fcode> 2 = 2\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Modulus\u003C\u002Ftd>\n\u003Ctd>\u003Ccode>mod\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Mengambil sisa bagi 2 bilangan\u003C\u002Ftd>\n\u003Ctd>5 \u003Ccode>mod\u003C\u002Fcode> 2 = 1\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Cp>Pada operasi tipe data integer terdapat 2 operasi yang tidak ada di operasi matematika, yaitu \u003Ccode>div\u003C\u002Fcode> dan \u003Ccode>mod\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Operasi \u003Ccode>div\u003C\u002Fcode> merupakan operasi pembagian dengan \u003Cstrong>pembulatan\u003C\u002Fstrong> \u003Cstrong>ke bawah\u003C\u002Fstrong>. Tapi saya lebih suka menyebutnya sebagai \u003Cstrong>pembagian tanpa sisa.\u003C\u002Fstrong> Sedangkan operasi \u003Ccode>mod\u003C\u002Fcode> merupakan operasi pembagian namun \u003Cstrong>hanya diambil sisanya saja.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Contohnya \u003Cstrong>9 : 2 = 4 sisa 1\u003C\u002Fstrong>. Jadi \u003Ccode>9 div 2 = 4\u003C\u002Fcode> dan \u003Ccode>9 mod 2 = 1\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Contoh yang lain adalah \u003Cstrong>7 : 5 = 1 sisa 2\u003C\u002Fstrong>. Jadi \u003Ccode>7 div 5 = 1\u003C\u002Fcode>. dan \u003Ccode>7 mod 5 = 2\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Supaya lebih paham lagi tentang operasi \u003Ccode>div\u003C\u002Fcode> dan \u003Ccode>mod\u003C\u002Fcode>, coba ketikkan kode dibawah ini lalu jalankan.\u003C\u002Fp>\n\n\u003Cdiv class=\"code-block-wrapper my-6 not-prose rounded-xl border-2 border-black dark:border-gray-600 shadow-neo overflow-hidden bg-[#24292e] text-[#e1e4e8] transition-all\">\n  \u003Cdiv class=\"code-block-header flex items-center justify-between px-4 py-2.5 bg-[#1f2428] border-b-2 border-black dark:border-gray-600 font-mono text-xs font-bold text-gray-300 select-none\">\n    \u003Cdiv class=\"flex items-center gap-2\">\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ff5f56] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">PASCAL\u003C\u002Fspan>\n    \u003C\u002Fdiv>\n    \u003Cbutton type=\"button\" class=\"copy-code-btn flex items-center gap-1.5 px-3 py-1 text-xs font-bold bg-[#2f363d] text-gray-200 border-2 border-black dark:border-gray-500 rounded-lg shadow-neo-sm hover:translate-x-0.5 hover:translate-y-0.5 hover:shadow-none hover:bg-gray-700 transition-all cursor-pointer\" data-code=\"program%20OperasiDivMod%3B%0Auses%20crt%3B%0A%0A%2F%2F%20deklarasi%20variable%0Avar%0A%20%20a%2C%20b%20%3Ainteger%3B%0A%20%20hasil%20%3Ainteger%3B%0A%20%20sisa%20%3Ainteger%3B%0A%0A%7BProgram%20ini%20digunakan%20untuk%20menampilkan%20hasil%20bagi%20a%20dan%20b%0Adalam%20bentuk%20'hasil%20dan%20sisa'%20(bukan%20dalam%20bentuk%20desimal)%7D%0Abegin%0A%20%20clrscr%3B%0A%0A%20%20%2F%2F%20memberi%20nilai%20variable%0A%20%20a%20%3A%3D%207%3B%0A%20%20b%20%3A%3D%205%3B%0A%20%20hasil%20%3A%3D%20a%20div%20b%3B%20%2F%2F%20hasil%20bagi%20antara%20a%20dan%20b%20tanpa%20sisa%0A%20%20sisa%20%3A%3D%20a%20mod%20b%3B%20%2F%2F%20sisa%20bagi%20antara%20a%20dan%20b%0A%0A%20%20%2F%2F%20sistem%20output%0A%20%20writeln('nilai%20a%20%3D%20'%2C%20a)%3B%20%2F%2F%20menampilkan%20nilai%20a%0A%20%20writeln('nilai%20b%20%3D%20'%2C%20b)%3B%20%2F%2F%20menampilkan%20nilai%20b%0A%0A%20%20%2F%2F%20menampilkan%20operasi%20pembagian%0A%20%20write(a%2C%20'%20%2F%20'%2C%20b%2C%20'%20%3D%20')%3B%20%2F%2F%20menampilkan%20a%20dan%20b%0A%20%20writeln(hasil%2C%20'%20sisa%20'%2C%20sisa)%3B%20%2F%2F%20menampilkan%20hasil%20dan%20sisa%0A%0A%20%20readln%3B%0Aend.\" title=\"Salin kode\">\n      \u003Csvg class=\"w-3.5 h-3.5 copy-icon-svg\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n        \u003Cpath stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\">\u003C\u002Fpath>\n      \u003C\u002Fsvg>\n      \u003Cspan class=\"copy-text\">Copy\u003C\u002Fspan>\n    \u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n  \u003Cdiv class=\"code-block-content p-4 overflow-x-auto text-sm font-mono leading-relaxed bg-[#24292e]\">\n    \u003Cpre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\">\u003Ccode>program OperasiDivMod;\nuses crt;\n\n\u002F\u002F deklarasi variable\nvar\n  a, b :integer;\n  hasil :integer;\n  sisa :integer;\n\n{Program ini digunakan untuk menampilkan hasil bagi a dan b\ndalam bentuk 'hasil dan sisa' (bukan dalam bentuk desimal)}\nbegin\n  clrscr;\n\n  \u002F\u002F memberi nilai variable\n  a := 7;\n  b := 5;\n  hasil := a div b; \u002F\u002F hasil bagi antara a dan b tanpa sisa\n  sisa := a mod b; \u002F\u002F sisa bagi antara a dan b\n\n  \u002F\u002F sistem output\n  writeln('nilai a = ', a); \u002F\u002F menampilkan nilai a\n  writeln('nilai b = ', b); \u002F\u002F menampilkan nilai b\n\n  \u002F\u002F menampilkan operasi pembagian\n  write(a, ' \u002F ', b, ' = '); \u002F\u002F menampilkan a dan b\n  writeln(hasil, ' sisa ', sisa); \u002F\u002F menampilkan hasil dan sisa\n\n  readln;\nend.\u003C\u002Fcode>\u003C\u002Fpre>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Cp>Kira kira output programnya akan terliat seperti ini.\u003C\u002Fp>\n\n\u003Cdiv class=\"code-block-wrapper my-6 not-prose rounded-xl border-2 border-black dark:border-gray-600 shadow-neo overflow-hidden bg-[#24292e] text-[#e1e4e8] transition-all\">\n  \u003Cdiv class=\"code-block-header flex items-center justify-between px-4 py-2.5 bg-[#1f2428] border-b-2 border-black dark:border-gray-600 font-mono text-xs font-bold text-gray-300 select-none\">\n    \u003Cdiv class=\"flex items-center gap-2\">\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ff5f56] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">TEXT\u003C\u002Fspan>\n    \u003C\u002Fdiv>\n    \u003Cbutton type=\"button\" class=\"copy-code-btn flex items-center gap-1.5 px-3 py-1 text-xs font-bold bg-[#2f363d] text-gray-200 border-2 border-black dark:border-gray-500 rounded-lg shadow-neo-sm hover:translate-x-0.5 hover:translate-y-0.5 hover:shadow-none hover:bg-gray-700 transition-all cursor-pointer\" data-code=\"nilai%20a%20%3D%207%0Anilai%20b%20%3D%205%0A7%20%2F%205%20%3D%201%20sisa%202\" title=\"Salin kode\">\n      \u003Csvg class=\"w-3.5 h-3.5 copy-icon-svg\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n        \u003Cpath stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\">\u003C\u002Fpath>\n      \u003C\u002Fsvg>\n      \u003Cspan class=\"copy-text\">Copy\u003C\u002Fspan>\n    \u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n  \u003Cdiv class=\"code-block-content p-4 overflow-x-auto text-sm font-mono leading-relaxed bg-[#24292e]\">\n    \u003Cpre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\">\u003Ccode>nilai a = 7\nnilai b = 5\n7 \u002F 5 = 1 sisa 2\u003C\u002Fcode>\u003C\u002Fpre>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Cp>Untuk eksperimen kalian bisa coba ganti nilai variable \u003Cstrong>a\u003C\u002Fstrong> dan \u003Cstrong>b\u003C\u002Fstrong>. Oh iya sekalian kalian bisa coba ganti operasi \u003Ccode>div\u003C\u002Fcode> diatas menjadi tanda bagi (\u002F) dan lihat apa yang terjadi hehe.\u003C\u002Fp>\n\u003Ch2 id=\"operasi-tipe-data-real-pada-pascal\">Operasi Tipe Data Real pada Pascal\u003C\u002Fh2>\n\u003Cp>Operasi pascal selanjutnya adalah pada tipe data Real. Baik Real maupun Integer merupakan tipe data yang berupa angka, sehingga sebagian besar operasi yang dapat dilakukan juga sama.\u003C\u002Fp>\n\u003Cp>Perbedaannya hanya terletak pada operasi pembagian. Tipe data Real mengenal operasi pembagian, namun Integer tidak. Di sisi lain tipe data Real tidak mengenal operasi \u003Ccode>div\u003C\u002Fcode> dan \u003Ccode>mod\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Ada lagi satu operasi untuk tipe data real. Lebih tepatnya ini disebut \u003Cstrong>format\u003C\u002Fstrong> bukan operasi hehe. Jadi secara default pascal akan membaca bilangan desimal dengan banyak angka 0 dibelakang koma. Nah kita bisa mengatasi ini dengan cara melakukan \u003Ca href=\"https:\u002F\u002Fwiki.freepascal.org\u002FFormatting_output\">format real\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Operasi\u003C\u002Fth>\n\u003Cth>Tanda\u003C\u002Fth>\n\u003Cth>Keterangan\u003C\u002Fth>\n\u003Cth>Contoh\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>Penjumlahan\u003C\u002Ftd>\n\u003Ctd>+\u003C\u002Ftd>\n\u003Ctd>Melakukan penjumlahan 2 bilangan\u003C\u002Ftd>\n\u003Ctd>2.7+2.7 = 5.4\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Pengurangan\u003C\u002Ftd>\n\u003Ctd>–\u003C\u002Ftd>\n\u003Ctd>Melakukan pengurangan 2 bilangan\u003C\u002Ftd>\n\u003Ctd>6.9-10.9 = -4.0\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Perkalian\u003C\u002Ftd>\n\u003Ctd>*\u003C\u002Ftd>\n\u003Ctd>Melakukan perkalian 2 bilangan\u003C\u002Ftd>\n\u003Ctd>0.6*6 = 3.6\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Pembagian\u003C\u002Ftd>\n\u003Ctd>\u002F\u003C\u002Ftd>\n\u003Ctd>Membagi 2 bilangan\u003C\u002Ftd>\n\u003Ctd>5 \u002F 2 = 2.5\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Fromat\u003C\u002Ftd>\n\u003Ctd>r:[a]:b\u003C\u002Ftd>\n\u003Ctd>Melakukan format real\u003C\u002Ftd>\n\u003Ctd>3.1415:2:2 = 3.14\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Cblockquote>\n\u003Cp>pada tabel diatas maksud dari r:[a]:b adalah \u003Cstrong>r\u003C\u002Fstrong>: bilangan real; \u003Cstrong>a\u003C\u002Fstrong>: panjang bilangan didepan koma; \u003Cstrong>b\u003C\u002Fstrong>: panjang bilangan dibelakang koma.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>Pada bahasa Pascal, bilangan bulat juga dapat masuk kedalam nilai variable Real, tidak seperti Integer yang hanya bisa menerima bilangan bulat. Ini karena bilangan bulat dapat dituliskan dalam bentuk desimal. Angka 7 (integer) dapat ditulis sebagai 7.0 (real).\u003C\u002Fp>\n\u003Cp>Yuk coba kita koding pakai tipe data real, biar semakin paham hehe\u003C\u002Fp>\n\n\u003Cdiv class=\"code-block-wrapper my-6 not-prose rounded-xl border-2 border-black dark:border-gray-600 shadow-neo overflow-hidden bg-[#24292e] text-[#e1e4e8] transition-all\">\n  \u003Cdiv class=\"code-block-header flex items-center justify-between px-4 py-2.5 bg-[#1f2428] border-b-2 border-black dark:border-gray-600 font-mono text-xs font-bold text-gray-300 select-none\">\n    \u003Cdiv class=\"flex items-center gap-2\">\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ff5f56] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">PASCAL\u003C\u002Fspan>\n    \u003C\u002Fdiv>\n    \u003Cbutton type=\"button\" class=\"copy-code-btn flex items-center gap-1.5 px-3 py-1 text-xs font-bold bg-[#2f363d] text-gray-200 border-2 border-black dark:border-gray-500 rounded-lg shadow-neo-sm hover:translate-x-0.5 hover:translate-y-0.5 hover:shadow-none hover:bg-gray-700 transition-all cursor-pointer\" data-code=\"program%20OperasiReal%3B%0Auses%20crt%3B%0A%0A%2F%2F%20deklarasi%20variable%0Avar%0A%20%20a%2C%20b%3A%20integer%3B%0A%20%20c%2C%20d%3A%20real%3B%0A%0Abegin%0A%20%20clrscr%3B%0A%0A%20%20%2F%2F%20memberi%20nilai%20pada%20variable%0A%20%20a%20%3A%3D%20-20%3B%20%20%2F%2F%20bilangan%20negatif%0A%20%20b%20%3A%3D%204%3B%0A%20%20c%20%3A%3D%20a%2Fb%3B%0A%20%20d%20%3A%3D%20-c%2Fb%3B%20%2F%2F%20negatif%20dibagi%20negatif%20menjadi%20positif%0A%0A%20%20%2F%2F%20output%20nilai%20variable%0A%20%20writeln('a%20%3D%20'%2C%20a)%3B%0A%20%20writeln('b%20%3D%20'%2C%20b)%3B%0A%20%20writeln('c%20%3D%20'%2C%20c)%3B%0A%20%20writeln('d%20%3D%20'%2C%20d)%3B%0A%20%20readln%3B%0Aend.\" title=\"Salin kode\">\n      \u003Csvg class=\"w-3.5 h-3.5 copy-icon-svg\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n        \u003Cpath stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\">\u003C\u002Fpath>\n      \u003C\u002Fsvg>\n      \u003Cspan class=\"copy-text\">Copy\u003C\u002Fspan>\n    \u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n  \u003Cdiv class=\"code-block-content p-4 overflow-x-auto text-sm font-mono leading-relaxed bg-[#24292e]\">\n    \u003Cpre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\">\u003Ccode>program OperasiReal;\nuses crt;\n\n\u002F\u002F deklarasi variable\nvar\n  a, b: integer;\n  c, d: real;\n\nbegin\n  clrscr;\n\n  \u002F\u002F memberi nilai pada variable\n  a := -20;  \u002F\u002F bilangan negatif\n  b := 4;\n  c := a\u002Fb;\n  d := -c\u002Fb; \u002F\u002F negatif dibagi negatif menjadi positif\n\n  \u002F\u002F output nilai variable\n  writeln('a = ', a);\n  writeln('b = ', b);\n  writeln('c = ', c);\n  writeln('d = ', d);\n  readln;\nend.\u003C\u002Fcode>\u003C\u002Fpre>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Cp>Jika kalian jalankan maka kurang lebih outputnya akan seperti ini\u003C\u002Fp>\n\n\u003Cdiv class=\"code-block-wrapper my-6 not-prose rounded-xl border-2 border-black dark:border-gray-600 shadow-neo overflow-hidden bg-[#24292e] text-[#e1e4e8] transition-all\">\n  \u003Cdiv class=\"code-block-header flex items-center justify-between px-4 py-2.5 bg-[#1f2428] border-b-2 border-black dark:border-gray-600 font-mono text-xs font-bold text-gray-300 select-none\">\n    \u003Cdiv class=\"flex items-center gap-2\">\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ff5f56] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">TEXT\u003C\u002Fspan>\n    \u003C\u002Fdiv>\n    \u003Cbutton type=\"button\" class=\"copy-code-btn flex items-center gap-1.5 px-3 py-1 text-xs font-bold bg-[#2f363d] text-gray-200 border-2 border-black dark:border-gray-500 rounded-lg shadow-neo-sm hover:translate-x-0.5 hover:translate-y-0.5 hover:shadow-none hover:bg-gray-700 transition-all cursor-pointer\" data-code=\"a%20%3D%20-20%0Ab%20%3D%204%0Ac%20%3D%20%20-5.0000000000000000E%2B000%0Ad%20%3D%20%201.2500000000000000E%2B000\" title=\"Salin kode\">\n      \u003Csvg class=\"w-3.5 h-3.5 copy-icon-svg\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n        \u003Cpath stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\">\u003C\u002Fpath>\n      \u003C\u002Fsvg>\n      \u003Cspan class=\"copy-text\">Copy\u003C\u002Fspan>\n    \u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n  \u003Cdiv class=\"code-block-content p-4 overflow-x-auto text-sm font-mono leading-relaxed bg-[#24292e]\">\n    \u003Cpre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\">\u003Ccode>a = -20\nb = 4\nc =  -5.0000000000000000E+000\nd =  1.2500000000000000E+000\u003C\u002Fcode>\u003C\u002Fpre>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Cp>Wow wow, kenapa banyak angka nol disana :o Ini karena variable \u003Cstrong>c\u003C\u002Fstrong> dan \u003Cstrong>e\u003C\u002Fstrong> belum diformat. Untuk melakukan format kita bisa menambahkan operasi format pada perintah \u003Ccode>writeln\u003C\u002Fcode>. Selanjutnya silahkan ganti kode output \u003Cstrong>c\u003C\u002Fstrong> dan \u003Cstrong>d\u003C\u002Fstrong> kalian menjadi seperti ini.\u003C\u002Fp>\n\n\u003Cdiv class=\"code-block-wrapper my-6 not-prose rounded-xl border-2 border-black dark:border-gray-600 shadow-neo overflow-hidden bg-[#24292e] text-[#e1e4e8] transition-all\">\n  \u003Cdiv class=\"code-block-header flex items-center justify-between px-4 py-2.5 bg-[#1f2428] border-b-2 border-black dark:border-gray-600 font-mono text-xs font-bold text-gray-300 select-none\">\n    \u003Cdiv class=\"flex items-center gap-2\">\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ff5f56] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">PASCAL\u003C\u002Fspan>\n    \u003C\u002Fdiv>\n    \u003Cbutton type=\"button\" class=\"copy-code-btn flex items-center gap-1.5 px-3 py-1 text-xs font-bold bg-[#2f363d] text-gray-200 border-2 border-black dark:border-gray-500 rounded-lg shadow-neo-sm hover:translate-x-0.5 hover:translate-y-0.5 hover:shadow-none hover:bg-gray-700 transition-all cursor-pointer\" data-code=\"....%0A%20%20writeln('c%20%3D%20'%2C%20c%3A2%3A2)%3B%0A%20%20writeln('d%20%3D%20'%2C%20d%3A2%3A2)%3B%0A....\" title=\"Salin kode\">\n      \u003Csvg class=\"w-3.5 h-3.5 copy-icon-svg\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n        \u003Cpath stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\">\u003C\u002Fpath>\n      \u003C\u002Fsvg>\n      \u003Cspan class=\"copy-text\">Copy\u003C\u002Fspan>\n    \u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n  \u003Cdiv class=\"code-block-content p-4 overflow-x-auto text-sm font-mono leading-relaxed bg-[#24292e]\">\n    \u003Cpre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\">\u003Ccode>....\n  writeln('c = ', c:2:2);\n  writeln('d = ', d:2:2);\n....\u003C\u002Fcode>\u003C\u002Fpre>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Cp>Kalau sudah jadi nanti hasil outputnya akan berubah menjadi seperti ini\u003C\u002Fp>\n\n\u003Cdiv class=\"code-block-wrapper my-6 not-prose rounded-xl border-2 border-black dark:border-gray-600 shadow-neo overflow-hidden bg-[#24292e] text-[#e1e4e8] transition-all\">\n  \u003Cdiv class=\"code-block-header flex items-center justify-between px-4 py-2.5 bg-[#1f2428] border-b-2 border-black dark:border-gray-600 font-mono text-xs font-bold text-gray-300 select-none\">\n    \u003Cdiv class=\"flex items-center gap-2\">\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ff5f56] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">TEXT\u003C\u002Fspan>\n    \u003C\u002Fdiv>\n    \u003Cbutton type=\"button\" class=\"copy-code-btn flex items-center gap-1.5 px-3 py-1 text-xs font-bold bg-[#2f363d] text-gray-200 border-2 border-black dark:border-gray-500 rounded-lg shadow-neo-sm hover:translate-x-0.5 hover:translate-y-0.5 hover:shadow-none hover:bg-gray-700 transition-all cursor-pointer\" data-code=\"a%20%3D%20-20%0Ab%20%3D%204%0Ac%20%3D%20-5.00%0Ad%20%3D%201.25\" title=\"Salin kode\">\n      \u003Csvg class=\"w-3.5 h-3.5 copy-icon-svg\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n        \u003Cpath stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\">\u003C\u002Fpath>\n      \u003C\u002Fsvg>\n      \u003Cspan class=\"copy-text\">Copy\u003C\u002Fspan>\n    \u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n  \u003Cdiv class=\"code-block-content p-4 overflow-x-auto text-sm font-mono leading-relaxed bg-[#24292e]\">\n    \u003Cpre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\">\u003Ccode>a = -20\nb = 4\nc = -5.00\nd = 1.25\u003C\u002Fcode>\u003C\u002Fpre>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Cp>Jadi angka didepan dan dibelakang koma dibatasi hanya berjumlah 2 digit saja. Sekarang jadi lebih enak dilihat :D\u003C\u002Fp>\n\u003Ch2 id=\"urutan-prioritas-operasi-pada-pascal\">Urutan Prioritas Operasi Pada Pascal\u003C\u002Fh2>\n\u003Cp>Urutan prioritas operasi pada pascal sama seperti urutan pada operasi aritmatika dalam matematika yaitu:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Operasi dalam kurung didahulukan\u003C\u002Fli>\n\u003Cli>Selanjutnya operasi kali , bagi, \u003Ccode>div\u003C\u002Fcode>, dan \u003Ccode>mod\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Selanjutnya operasi tambah dan kurang\u003C\u002Fli>\n\u003Cli>Operasi selalu dilakukan dari kiri\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Contoh kita punya variable a yang bertipe real. Maka 2*3+7 tidak sama dengan 2*(3+7)\u003C\u002Fp>\n\u003Ch2 id=\"penutup\">Penutup\u003C\u002Fh2>\n\u003Cp>Operasi Aritmatika pada Pascal sebenarnya sama seperti yang ada pada matematika. Semua operasi ini akan sangat berguna dalam melakukan manipulasi data kedepannya. Untuk operasi tipe data yang lainnya seperti string dan boolean akan kita bahas pada tutorial tutorial selanjutnya hehe.\u003C\u002Fp>\n\u003Cp>Cukup sekian untuk tutorial pascal kali ini, semoga bermanfaat 👋 Pada tutorial selanjutnya kita akan membahas tentang \u003Ca href=\"https:\u002F\u002Finvasikode.com\u002Fread-readln-pascal\u002F\">sistem input Pada Bahasa Pascal\u003C\u002Fa>.\u003C\u002Fp>\n","",[272,291,304,317,330,351],{"id":273,"title":274,"title_en":21,"slug":275,"excerpt":276,"excerpt_en":21,"has_translation":15,"published_at":277,"reading_time":278,"hidden_from_listing":15,"tags":279,"thumbnail_image":21,"og_image":282,"series":283,"authors":288},133,"Python Strings: the Badge That Only Worked for One Name","python-strings","The badge script printed the right name for the person who wrote it and the wrong name for everybody else. Slicing counts characters, and a name is words.","2026-10-28T13:00:00.000Z",6,[280,281],"python","string","\u002Fog\u002Fpython-strings.png",{"id":284,"title":285,"title_en":286,"slug":287},30,"Koleksi dan String","Collections and Strings","python-collections",[289],{"authors_id":290},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":292,"title":293,"title_en":21,"slug":294,"excerpt":295,"excerpt_en":21,"has_translation":15,"published_at":296,"reading_time":278,"hidden_from_listing":15,"tags":297,"thumbnail_image":21,"og_image":299,"series":300,"authors":301},132,"Python Tuples: Why All Three Points Are the Same Point","python-tuples","Three points walk into a loop and come out identical. The list was never copied three times; the name was. A tuple makes that bug impossible.","2026-10-28T12:00:00.000Z",[280,298],"tuple","\u002Fog\u002Fpython-tuples.png",{"id":284,"title":285,"title_en":286,"slug":287},[302],{"authors_id":303},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":305,"title":306,"title_en":21,"slug":307,"excerpt":308,"excerpt_en":21,"has_translation":15,"published_at":309,"reading_time":278,"hidden_from_listing":15,"tags":310,"thumbnail_image":21,"og_image":312,"series":313,"authors":314},131,"Python Sets: the Duplicate That Keeps Coming Back","python-sets","A de-duplication loop that works on clean data leaves four tags where there should be two. The bug is case, and the fix is a `set`.","2026-10-28T11:00:00.000Z",[280,311],"set","\u002Fog\u002Fpython-sets.png",{"id":284,"title":285,"title_en":286,"slug":287},[315],{"authors_id":316},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":318,"title":319,"title_en":21,"slug":320,"excerpt":321,"excerpt_en":21,"has_translation":15,"published_at":322,"reading_time":278,"hidden_from_listing":15,"tags":323,"thumbnail_image":21,"og_image":325,"series":326,"authors":327},130,"Python Dictionaries: the Key That Isn't There","python-dictionary","A word counter dies the first time it meets a word twice. The fix is one line; what takes longer is knowing which of a dict's three lookups to reach for.","2026-10-28T10:00:00.000Z",[280,324],"dictionary","\u002Fog\u002Fpython-dictionary.png",{"id":284,"title":285,"title_en":286,"slug":287},[328],{"authors_id":329},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":331,"title":332,"title_en":333,"slug":334,"excerpt":335,"excerpt_en":336,"has_translation":12,"published_at":337,"reading_time":14,"hidden_from_listing":15,"tags":338,"thumbnail_image":21,"og_image":345,"series":346,"authors":348},129,"Biar RAG nggak kena 504: pisahin jalur query dan ingestion","So Your RAG Stops Hitting 504: Split the Query Path From Ingestion","rag-pisah-jalur-query-dan-ingestion","Satu service RAG yang merangkap parsing dan menjawab kueri bakal tumbang pas ada yang upload PDF 200 halaman. Obatnya dua jalur dan satu queue.","One RAG service that both parses uploads and answers queries will fall over the moment someone uploads a 200-page PDF. The cure is two paths and one queue.","2026-10-22T01:30:00.000Z",[339,340,341,342,343,344],"rag","cloud-run","cloud-tasks","gcp","serverless","arsitektur","\u002Fog\u002Frag-pisah-jalur-query-dan-ingestion.png",{"id":347,"title":35,"title_en":36,"slug":37},8,[349],{"authors_id":350},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},{"id":352,"title":353,"title_en":354,"slug":355,"excerpt":356,"excerpt_en":357,"has_translation":12,"published_at":358,"reading_time":278,"hidden_from_listing":15,"tags":359,"thumbnail_image":21,"og_image":366,"series":367,"authors":368},128,"Linear atau graf: cara mengatur banyak agent tanpa loop abadi","Linear or Graph: How to Run Many Agents Without an Eternal Loop","multi-agen-linear-atau-grafik","Satu agent dengan dua puluh tool gampang kacau. Begitu beberapa agent saling revisi, kamu butuh graf yang mendukung cycle dan angka yang membuatnya berhenti.","One agent with twenty tools gets messy fast. Once several agents revise each other, you need a graph that allows cycles and a number that makes it stop.","2026-10-21T16:05:00.000Z",[360,361,362,363,364,365],"multi-agent","langgraph","autogen","orkestrasi","checkpoint","llm","\u002Fog\u002Fmulti-agen-linear-atau-grafik.png",{"id":347,"title":35,"title_en":36,"slug":37},[369],{"authors_id":370},{"id":110,"name":111,"slug":112,"role":113,"profile_picture":21},[372,376,379,382],{"text":373,"depth":374,"id":375},"Operasi Tipe Data Integer pada Pascal",2,"operasi-tipe-data-integer-pada-pascal",{"text":377,"depth":374,"id":378},"Operasi Tipe Data Real pada Pascal","operasi-tipe-data-real-pada-pascal",{"text":380,"depth":374,"id":381},"Urutan Prioritas Operasi Pada Pascal","urutan-prioritas-operasi-pada-pascal",{"text":383,"depth":374,"id":384},"Penutup","penutup",1793295834832]