Perulangan takterhingga: Perbedaan antara revisi
Impor teks terkontrol dari Wikipedia bahasa Indonesia; revisi 29187997; atribusi sumber disertakan. |
Presentation V4: sitasi, referensi, Math, Wikimedia Commons, dan atribusi |
||
| Baris 1: | Baris 1: | ||
Dalam [[Pemrograman|pemrograman komputer]], '''perulangan takterhingga''' adalah serangkaian instruksi, yang sebagaimana ketika dituliskan, akan terus berjalan tanpa henti, kecuali terjadi intervensi dari luar, seperti mematikan daya melalui [[Sakelar|saklar]] atau mencabut steker secara sengaja. Perulangan takterhingga juga didefinisikan sebagai potongan kode yang tidak memiliki keluaran fungsional sehingga ia mengulang secara tak terbatas. | Dalam [[Pemrograman|pemrograman komputer]], '''perulangan takterhingga''' adalah serangkaian instruksi, yang sebagaimana ketika dituliskan, akan terus berjalan tanpa henti, kecuali terjadi intervensi dari luar, seperti mematikan daya melalui [[Sakelar|saklar]] atau mencabut steker secara sengaja. Perulangan takterhingga juga didefinisikan sebagai potongan kode yang tidak memiliki keluaran fungsional sehingga ia mengulang secara tak terbatas.<ref>[https://www.yourdictionary.com/endless-loop Endless loop dictionary definition].</ref><ref>[https://whatis.techtarget.com/definition/infinite-loop-endless-loop What is infinite loop (endless loop)].</ref> | ||
==Ringkasan== | ==Ringkasan== | ||
Perulangan takterhingga berbeda dengan "tipe [[program komputer]] yang menjalankan instruksi yang sama secara terus-menerus hingga dihentikan atau mengalami gangguan". | Perulangan takterhingga berbeda dengan "tipe [[program komputer]] yang menjalankan instruksi yang sama secara terus-menerus hingga dihentikan atau mengalami gangguan". | ||
<ref>Denise Caruso. [https://archive.nytimes.com/www.nytimes.com/library/tech/99/08/biztech/articles/16digi.html Overload of Hangers-On Creates Bumpy Ride for Internet Stocks]. ''The New York Times''. August 16, 1999.</ref> | |||
Pseudocode berikut menampilkan kode perulangan yang akan dijalankan secara terus-menerus hingga dihentikan atau terganggu. | Pseudocode berikut menampilkan kode perulangan yang akan dijalankan secara terus-menerus hingga dihentikan atau terganggu. | ||
<syntaxhighlight lang="lua"> | |||
berapa_banyak = 0 | |||
while ada_data_lain() do | |||
berapa_banyak = berapa_banyak + 1 | |||
end | |||
display "jumlah butir yang dihitung = " berapa_banyak | |||
</syntaxhighlight> | |||
Perintah ''while'' dalam kode tersebut mengartikan jika kondisi terpenuhi (''ada_data_lain'') maka perintah ''do'' akan dijalankan, dan perulangan akan terus berjalan selama kondisi terpenuhi (''TRUE''). Perulangan akan dihentikan jika terjadi pengembalian ''FALSE'' yang dilakukan fungsi ''ada_data_lain''yang disebabkan kondisi tidak terpenuhi. | |||
Dengan demikian, kode berikut menampilkan bahwa perulangan tidak berhenti dengan sendirinya. | |||
<syntaxhighlight lang="lua"> | |||
Dengan demikian, kode berikut menampilkan bahwa perulangan tidak berhenti dengan sendirinya. | burung = 1 | ||
ikan = 2 | |||
while burung + ikan > 1 do | |||
burung = 3 - burung | |||
ikan = 3 - ikan | |||
end | |||
</syntaxhighlight> | |||
Kode diatas menunjukkan bahwa nilai ''burung'' akan bergantian menjadi 1 atau 2, sementara nilai ''ikan'' akan bergantian menjadi 2 atau 1. Perulangan tidak akan berhenti kecuali ada intervensi eksternal (misal "menarik steker"). | Kode diatas menunjukkan bahwa nilai ''burung'' akan bergantian menjadi 1 atau 2, sementara nilai ''ikan'' akan bergantian menjadi 2 atau 1. Perulangan tidak akan berhenti kecuali ada intervensi eksternal (misal "menarik steker"). | ||
==Detail== | ==Detail== | ||
Perulangan takterhingga merupakan serangkaian instruksi dalam sebuah program komputer yang berulang tanpa henti, baik dikarenakan perulangan tersebut tidak memiliki kondisi penghentian, memiliki satu kondisi yang tidak pernah terpenuhi, atau hal yang menyebabkan perulangan memulai kembali. Pada [[sistem operasi]] lama dengan [[tugas ganda]] kooperatif, perulangan tak terbatas biasanya menyebabkan seluruh sistem menjadi tidak responsif. Dengan model [[multitasking preemptive#Preemption|''tugas ganda preemptive'']] yang pada saat ini umum dipakai, perulangan takterhingga biasanya menyebabkan program menghabiskan seluruh waktu pemrosesan yang tersedia, namun pada umumnya proses ini dapat diakhiri oleh pengguna. Perulangan ''[[busy waiting]]'' juga disebut sebagai ''perulangan takterhingga''. Perulangan takterhingga adalah salah satu penyebab kemungkinan sebuah komputer mengalami [[Macet (komputasi)|macet]], [[deraan]], [[kebuntuan]], dan pelanggaran akses. | Perulangan takterhingga merupakan serangkaian instruksi dalam sebuah program komputer yang berulang tanpa henti, baik dikarenakan perulangan tersebut tidak memiliki kondisi penghentian,<ref>[http://www.flowjournal.org/tag/loop-media/ Codes and Modes: The Character of Documentary Culture]. November 2014.</ref> memiliki satu kondisi yang tidak pernah terpenuhi, atau hal yang menyebabkan perulangan memulai kembali. Pada [[sistem operasi]] lama dengan [[tugas ganda]] kooperatif, perulangan tak terbatas biasanya menyebabkan seluruh sistem menjadi tidak responsif. Dengan model [[multitasking preemptive#Preemption|''tugas ganda preemptive'']] yang pada saat ini umum dipakai,<ref>juga dikenal sebagai ''non-preemptive-multitasking'': [https://www.pcmag.com/encyclopedia/term/48051/non-preemptive-multitasking Non-preemptive Multitasking].</ref> perulangan takterhingga biasanya menyebabkan program menghabiskan seluruh waktu pemrosesan yang tersedia, namun pada umumnya proses ini dapat diakhiri oleh pengguna. Perulangan ''[[busy waiting]]'' juga disebut sebagai ''perulangan takterhingga''. Perulangan takterhingga adalah salah satu penyebab kemungkinan sebuah komputer mengalami [[Macet (komputasi)|macet]], [[deraan]], [[kebuntuan]], dan pelanggaran akses. | ||
==Perulangan yang Dimaksudkan vs Perulangan yang Tidak Dimaksudkan== | ==Perulangan yang Dimaksudkan vs Perulangan yang Tidak Dimaksudkan== | ||
Perulangan adalah mengulangi serangkaian instruksi sampai kondisi tertentu terpenuhi. Perulangan takterhingga terjadi ketika kondisi tersebut tidak akan pernah terpenuhi yang dikarenakan beberapa karakteristik inheren dari perulangan tersebut. | Perulangan adalah mengulangi serangkaian instruksi sampai kondisi tertentu terpenuhi.<ref>[https://whatis.techtarget.com/definition/infinite-loop-endless-loop What is infinite loop (endless loop)].</ref> Perulangan takterhingga terjadi ketika kondisi tersebut tidak akan pernah terpenuhi yang dikarenakan beberapa karakteristik inheren dari perulangan tersebut. | ||
===Perulangan yang Dimaksudkan=== | ===Perulangan yang Dimaksudkan=== | ||
Perulangan yang dimaksudkan adalah perulangan yang terjadi di beberapa situasi yang mana perilaku ini diinginkan. Sebagai contoh, permainan pada konsol permainan berbasis ''cartridge'', umumnya tidak memiliki kondisi berhenti dalam perulangan utamanya, sebab tidak ada sistem operasi tempat program keluar; perulangan akan berjalan terus hingga konsol dimatikan. | Perulangan yang dimaksudkan adalah perulangan yang terjadi di beberapa situasi yang mana perilaku ini diinginkan. Sebagai contoh, permainan pada konsol permainan berbasis ''cartridge'', umumnya tidak memiliki kondisi berhenti dalam perulangan utamanya, sebab tidak ada sistem operasi tempat program keluar; perulangan akan berjalan terus hingga konsol dimatikan. | ||
Komputer interaktif modern harus terus memantau masukan pengguna atau aktivitas perangkat, sehingga pada tingkat dasar terdapat perulangan ''idle'' takterhingga yang harus berlanjut hingga perangkat dimatikan atau dihidupkan kembali. Pada [[Komputer Panduan Apollo]], misalnya, perulangan luar ini terdapat dalam program Exec, dan ketika komputer tidak memiliki tugas lain yang harus dilakukan, perulangan akan menjalankan tugas palsu yang hanya mematikan lampu indikator "aktivitas komputer". | Komputer interaktif modern harus terus memantau masukan pengguna atau aktivitas perangkat, sehingga pada tingkat dasar terdapat perulangan ''idle'' takterhingga yang harus berlanjut hingga perangkat dimatikan atau dihidupkan kembali. Pada [[Komputer Panduan Apollo]], misalnya, perulangan luar ini terdapat dalam program Exec,<ref>David Hoag. [http://klabs.org/history/history_docs/mit_docs/1711.pdf The History of Apollo On-board Guidance, Navigation, and Control]. Charles Stark Draper Laboratory. September 1976.</ref> dan ketika komputer tidak memiliki tugas lain yang harus dilakukan, perulangan akan menjalankan tugas palsu yang hanya mematikan lampu indikator "aktivitas komputer". | ||
Komputer modern juga biasanya tidak menghentikan [[prosesor]] atau sirkuit penggerak [[papan induk]] saat mengalami [[Mogok (komputasi)|''crash'']]. Sebaliknya, mereka kembali ke kondisi kesalahan dengan menampilkan pesan kepada operator (seperti [[Layar Biru Maut|layar biru kematian]]), dan memasuki perulangan tak terbatas yang menunggu tanggapan pengguna untuk melanjutkan, atau menghidupkan kembali perangkat. | Komputer modern juga biasanya tidak menghentikan [[prosesor]] atau sirkuit penggerak [[papan induk]] saat mengalami [[Mogok (komputasi)|''crash'']]. Sebaliknya, mereka kembali ke kondisi kesalahan dengan menampilkan pesan kepada operator (seperti [[Layar Biru Maut|layar biru kematian]]), dan memasuki perulangan tak terbatas yang menunggu tanggapan pengguna untuk melanjutkan, atau menghidupkan kembali perangkat. | ||
== Referensi == | == Referensi == | ||
<references /> | |||
== Sumber dan atribusi == | == Sumber dan atribusi == | ||
Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=Perulangan+takterhingga&oldid=29187997 Wikipedia bahasa Indonesia], revisi 29187997 (2026-05-02T15:36:25Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku. | Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=Perulangan+takterhingga&oldid=29187997 Wikipedia bahasa Indonesia], revisi 29187997 (2026-05-02T15:36:25Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku. | ||
<!-- WIKI_UNISSULA_PRESENTATION_V4 --> | |||
Revisi terkini sejak 23 Agustus 2026 04.06
Dalam pemrograman komputer, perulangan takterhingga adalah serangkaian instruksi, yang sebagaimana ketika dituliskan, akan terus berjalan tanpa henti, kecuali terjadi intervensi dari luar, seperti mematikan daya melalui saklar atau mencabut steker secara sengaja. Perulangan takterhingga juga didefinisikan sebagai potongan kode yang tidak memiliki keluaran fungsional sehingga ia mengulang secara tak terbatas.[1][2]
Ringkasan
Perulangan takterhingga berbeda dengan "tipe program komputer yang menjalankan instruksi yang sama secara terus-menerus hingga dihentikan atau mengalami gangguan". [3] Pseudocode berikut menampilkan kode perulangan yang akan dijalankan secara terus-menerus hingga dihentikan atau terganggu. <syntaxhighlight lang="lua"> berapa_banyak = 0 while ada_data_lain() do
berapa_banyak = berapa_banyak + 1
end display "jumlah butir yang dihitung = " berapa_banyak </syntaxhighlight>
Perintah while dalam kode tersebut mengartikan jika kondisi terpenuhi (ada_data_lain) maka perintah do akan dijalankan, dan perulangan akan terus berjalan selama kondisi terpenuhi (TRUE). Perulangan akan dihentikan jika terjadi pengembalian FALSE yang dilakukan fungsi ada_data_lainyang disebabkan kondisi tidak terpenuhi.
Dengan demikian, kode berikut menampilkan bahwa perulangan tidak berhenti dengan sendirinya. <syntaxhighlight lang="lua"> burung = 1 ikan = 2 while burung + ikan > 1 do
burung = 3 - burung ikan = 3 - ikan
end </syntaxhighlight>
Kode diatas menunjukkan bahwa nilai burung akan bergantian menjadi 1 atau 2, sementara nilai ikan akan bergantian menjadi 2 atau 1. Perulangan tidak akan berhenti kecuali ada intervensi eksternal (misal "menarik steker").
Detail
Perulangan takterhingga merupakan serangkaian instruksi dalam sebuah program komputer yang berulang tanpa henti, baik dikarenakan perulangan tersebut tidak memiliki kondisi penghentian,[4] memiliki satu kondisi yang tidak pernah terpenuhi, atau hal yang menyebabkan perulangan memulai kembali. Pada sistem operasi lama dengan tugas ganda kooperatif, perulangan tak terbatas biasanya menyebabkan seluruh sistem menjadi tidak responsif. Dengan model tugas ganda preemptive yang pada saat ini umum dipakai,[5] perulangan takterhingga biasanya menyebabkan program menghabiskan seluruh waktu pemrosesan yang tersedia, namun pada umumnya proses ini dapat diakhiri oleh pengguna. Perulangan busy waiting juga disebut sebagai perulangan takterhingga. Perulangan takterhingga adalah salah satu penyebab kemungkinan sebuah komputer mengalami macet, deraan, kebuntuan, dan pelanggaran akses.
Perulangan yang Dimaksudkan vs Perulangan yang Tidak Dimaksudkan
Perulangan adalah mengulangi serangkaian instruksi sampai kondisi tertentu terpenuhi.[6] Perulangan takterhingga terjadi ketika kondisi tersebut tidak akan pernah terpenuhi yang dikarenakan beberapa karakteristik inheren dari perulangan tersebut.
Perulangan yang Dimaksudkan
Perulangan yang dimaksudkan adalah perulangan yang terjadi di beberapa situasi yang mana perilaku ini diinginkan. Sebagai contoh, permainan pada konsol permainan berbasis cartridge, umumnya tidak memiliki kondisi berhenti dalam perulangan utamanya, sebab tidak ada sistem operasi tempat program keluar; perulangan akan berjalan terus hingga konsol dimatikan.
Komputer interaktif modern harus terus memantau masukan pengguna atau aktivitas perangkat, sehingga pada tingkat dasar terdapat perulangan idle takterhingga yang harus berlanjut hingga perangkat dimatikan atau dihidupkan kembali. Pada Komputer Panduan Apollo, misalnya, perulangan luar ini terdapat dalam program Exec,[7] dan ketika komputer tidak memiliki tugas lain yang harus dilakukan, perulangan akan menjalankan tugas palsu yang hanya mematikan lampu indikator "aktivitas komputer".
Komputer modern juga biasanya tidak menghentikan prosesor atau sirkuit penggerak papan induk saat mengalami crash. Sebaliknya, mereka kembali ke kondisi kesalahan dengan menampilkan pesan kepada operator (seperti layar biru kematian), dan memasuki perulangan tak terbatas yang menunggu tanggapan pengguna untuk melanjutkan, atau menghidupkan kembali perangkat.
Referensi
- ↑ Endless loop dictionary definition.
- ↑ What is infinite loop (endless loop).
- ↑ Denise Caruso. Overload of Hangers-On Creates Bumpy Ride for Internet Stocks. The New York Times. August 16, 1999.
- ↑ Codes and Modes: The Character of Documentary Culture. November 2014.
- ↑ juga dikenal sebagai non-preemptive-multitasking: Non-preemptive Multitasking.
- ↑ What is infinite loop (endless loop).
- ↑ David Hoag. The History of Apollo On-board Guidance, Navigation, and Control. Charles Stark Draper Laboratory. September 1976.
Sumber dan atribusi
Konten artikel ini diadaptasi dari Wikipedia bahasa Indonesia, revisi 29187997 (2026-05-02T15:36:25Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.