SlideShare a Scribd company logo
0314-logoOlimpiade.py #bayuyudhasaputra
Halaman 1
Programming Exercise 03.14
Membuat Logo Olimpiade
03.14.01. Masalah
03.14. (Turtle : Menggambar logo olimpiade)
Tuliskan program yang menawarkan pengguna untuk menginput jari-jari lingkaran. Kemudian,
program membuat logo Olimpiade yang terdiri dari 5 lingkaran berwarna biru, hitam, merah, kuning
dan hijau seperti yang ditunjukkan oleh gambar 03.14.01. Jari-jari setiap lingkaran ini sama. Panjang
jari-jari lingkaran-lingkaran ini sesuai dengan nilai diinput oleh pengguna.
Contoh Program:
Gambar 03.14.01. Contoh Logo Olimpiade
03.14.02. Kode Python
Program Python lengkap untuk menggambar logo olimpiade pada layar turtle adalah
sebagai berikut:
1 import turtle # import modul turtle
2
3 # 1. Input jari2 lingkaran
4 jari2 = eval(input("Input panjang jari-jari logo Olimpiade : "))
5 turtle.pensize(jari2 / 10)
6
7 # 2. Buat lingkaran pertama
8 x = -(23 / 10) * jari2
9 y = (1 / 2) * jari2
0314-logoOlimpiade.py #bayuyudhasaputra
Halaman 2
10 turtle.penup()
11 turtle.goto(x,y)
12 turtle.pendown()
13 turtle.color("blue")
14 turtle.circle(jari2)
15
16 # 3. Buat lingkaran kedua
17 x = 0 * jari2
18 y = (1 / 2) * jari2
19 turtle.penup()
20 turtle.goto(x,y)
21 turtle.pendown()
22 turtle.color("black")
23 turtle.circle(jari2)
24
25 # 4. Buat lingkaran ketiga
26 x = (23 / 10) * jari2
27 y = (1 / 2) * jari2
28 turtle.penup()
29 turtle.goto(x,y)
30 turtle.pendown()
31 turtle.color("red")
32 turtle.circle(jari2)
33
34 # 5. Buat lingkaran keempat
35 x = -(12 / 10) * jari2
36 y = -(1 / 2) * jari2
37 turtle.penup()
38 turtle.goto(x,y)
39 turtle.pendown()
40 turtle.color("yellow")
41 turtle.circle(jari2)
42
43 # 6. Buat lingkaran kelima
44 x = (12 / 10) * jari2
45 y = -(1 / 2) * jari2
46 turtle.penup()
47 turtle.goto(x,y)
48 turtle.pendown()
49 turtle.color("green")
50 turtle.circle(jari2)
0314-logoOlimpiade.py #bayuyudhasaputra
Halaman 3
51
52 turtle.hideturtle()
53
54 turtle.done()
Langkah-langkah kerja program Python lengkap untuk menggambar logo olimpiade
pada layar turtle adalah:
1 import turtle # import modul turtle
Kode pada baris ke-1 digunakan untuk mengimpor modul Turtle. Modul ini diimpor agar
method-method modul Turtle bisa digunakan.
Langkah ke-1 : Menerima input panjang jari-jari lingkaran.
1 # 1. Input jari2 lingkaran
2 jari2 = eval(input("Input panjang jari-jari logo Olimpiade : "))
3 turtle.pensize(jari2 / 10)
Pada baris ke-2, program meminta pengguna untuk menginput panjang jari-jari lingkaran
menggunakan fungsi input(). Kemudian, nilai input ini dikonversi menjadi nilai numerik
menggunakan fungsi eval(). Nilai input ini disimpan dalam variabel dengan nama jari2.
Untuk memudahkan penjelasan, misal, pengguna menginput nilai jari2 = 50. Kode pada baris
ke-3 digunakan untuk mengatur ketebalan pena Turtle. Pada kasus ini karena nilai jari2 = 50,
maka tebal pena Turtle adalah 50 / 10 = 5.
Langkah ke-2 : membuat lingkaran pertama.
7 # 2. Buat lingkaran pertama
8 x = -(23 / 10) * jari2
9 y = (1 / 2) * jari2
10 turtle.penup()
11 turtle.goto(x,y)
12 turtle.pendown()
13 turtle.color("blue")
14 turtle.circle(jari2)
Pada baris ke-8 hingga 14, program membuat lingkaran pertama berwarna biru seperti yang
ditunjukkan oleh gambar 03.14.02. Perintah pada baris ke-8 digunakan untuk mendefinisikan
nilai absis dari posisi titik pusat lingkaran pertama. Nilai ini dirumuskan – (23 / 10) * jari2
dan disimpan dalam variabel dengan nama x. Misal, nilai jari2 = 50 maka nilai dalam
0314-logoOlimpiade.py #bayuyudhasaputra
Halaman 4
variabel x = - (23 / 10) * 50 = -114.99999999999999. Perintah pada baris ke-9 digunakan
untuk mendefinisikan nilai ordinat dari posisi titik pusat lingkaran pertama. Nilai ini
dirumuskan (1 / 2) * jari2 dan disimpan dalam variabel dengan nama y. Misal, nilai jari2 = 50
maka nilai dalam variabel y = (1 / 2) * 50 = 25.0. Sehingga pada baris ke-11, pena Turtle
dipindahkan ke titik (-114.99999999999999, 25.0). Perintah pada baris ke-10 digunakan
untuk “mengangkat” pena Turtle. Agar pena tidak “menulis” ketika dipindahkan. Kemudian
pada baris ke-12, pena Turtle “diturunkan” kembali. Agar pena bisa “menulis” kembali.
Perintah pada baris ke-13 digunakan untuk mengatur warna garis pena Turtle menjadi warna
biru. Kemudian, lingkaran digambar dengan jari-jari sesuai dengan nilai dalam variabel jari2
(pada baris ke-14). Dalam kasus ini, jari-jari lingkaran yang digambar adalah 50.
Gambar 03.14.02. Lingkaran Pertama
Langkah ke-3 : membuat lingkaran kedua.
16 # 3. Buat lingkaran kedua
17 x = 0 * jari2
18 y = (1 / 2) * jari2
19 turtle.penup()
20 turtle.goto(x,y)
21 turtle.pendown()
22 turtle.color("black")
23 turtle.circle(jari2)
Pada baris ke-17 hingga 23, program membuat lingkaran pertama berwarna hitam seperti
yang ditunjukkan oleh gambar 03.14.03. Perintah pada baris ke-17 digunakan untuk
mendefinisikan nilai absis dari posisi titik pusat lingkaran kedua. Nilai ini adalah 0 dan
0314-logoOlimpiade.py #bayuyudhasaputra
Halaman 5
disimpan dalam variabel dengan nama x. Misal, nilai jari2 = 50 maka nilai dalam variabel x =
0. Perintah pada baris ke-18 digunakan untuk mendefinisikan nilai ordinat dari posisi titik
pusat lingkaran pertama. Nilai ini dirumuskan (1 / 2) * jari2 dan disimpan dalam variabel
dengan nama y. Misal, nilai jari2 = 50 maka nilai dalam variabel y = (1 / 2) * 50 = 25.0.
Sehingga pada baris ke-20, pena Turtle dipindahkan ke titik (0, 25.0). Perintah pada baris ke-
19 digunakan untuk “mengangkat” pena Turtle. Agar pena tidak “menulis” ketika
dipindahkan. Kemudian pada baris ke-21, pena Turtle “diturunkan” kembali. Agar pena bisa
“menulis” kembali. Perintah pada baris ke-22 digunakan untuk mengatur warna garis pena
Turtle menjadi warna hitam. Kemudian, lingkaran digambar dengan jari-jari sesuai dengan
nilai dalam variabel jari2 (pada baris ke-23). Dalam kasus ini, jari-jari lingkaran yang
digambar adalah 50.
Gambar 03.14.03. Lingkaran Kedua
Langkah ke-4 : membuat lingkaran ketiga.
25 # 4. Buat lingkaran ketiga
26 x = (23 / 10) * jari2
27 y = (1 / 2) * jari2
28 turtle.penup()
29 turtle.goto(x,y)
30 turtle.pendown()
31 turtle.color("red")
32 turtle.circle(jari2)
Pada baris ke-26 hingga 32, program membuat lingkaran ketiga berwarna merah seperti yang
ditunjukkan oleh gambar 03.14.04. Perintah pada baris ke-26 digunakan untuk
0314-logoOlimpiade.py #bayuyudhasaputra
Halaman 6
mendefinisikan nilai absis dari posisi titik pusat lingkaran ketiga. Nilai ini dirumuskan (23 /
10) * jari2 dan disimpan dalam variabel dengan nama x. Misal, nilai jari2 = 50 maka nilai
dalam variabel x = (23 / 10) * 50 = 114.99999999999999. Perintah pada baris ke-27
digunakan untuk mendefinisikan nilai ordinat dari posisi titik pusat lingkaran ketiga. Nilai ini
dirumuskan (1 / 2) * jari2 dan disimpan dalam variabel dengan nama y. Misal, nilai jari2 = 50
maka nilai dalam variabel y = (1 / 2) * 50 = 25.0. Sehingga pada baris ke-29, pena Turtle
dipindahkan ke titik (114.99999999999999, 25.0). Perintah pada baris ke-28 digunakan untuk
“mengangkat” pena Turtle. Agar pena tidak “menulis” ketika dipindahkan. Kemudian pada
baris ke-30, pena Turtle “diturunkan” kembali. Agar pena bisa “menulis” kembali. Perintah
pada baris ke-31 digunakan untuk mengatur warna garis pena Turtle menjadi warna merah.
Kemudian, lingkaran digambar dengan jari-jari sesuai dengan nilai dalam variabel jari2 (pada
baris ke-32). Dalam kasus ini, jari-jari lingkaran yang digambar adalah 50.
Gambar 03.14.04. Lingkaran Ketiga
Langkah ke-5 : membuat lingkaran keempat.
34 # 5. Buat lingkaran keempat
35 x = -(12 / 10) * jari2
36 y = -(1 / 2) * jari2
37 turtle.penup()
38 turtle.goto(x,y)
39 turtle.pendown()
0314-logoOlimpiade.py #bayuyudhasaputra
Halaman 7
40 turtle.color("yellow")
41 turtle.circle(jari2)
Pada baris ke-35 hingga 41, program membuat lingkaran keempat berwarna kuning seperti
yang ditunjukkan oleh gambar 03.14.05. Perintah pada baris ke-35 digunakan untuk
mendefinisikan nilai absis dari posisi titik pusat lingkaran keempat. Nilai ini dirumuskan -
(12 / 10) * jari2 dan disimpan dalam variabel dengan nama x. Misal, nilai jari2 = 50 maka
nilai dalam variabel x = - (12 / 10) * 50 = -60.0. Perintah pada baris ke-27 digunakan untuk
mendefinisikan nilai ordinat dari posisi titik pusat lingkaran keempat. Nilai ini dirumuskan -
(1 / 2) * jari2 dan disimpan dalam variabel dengan nama y. Misal, nilai jari2 = 50 maka nilai
dalam variabel y = - (1 / 2) * 50 = -25.0. Sehingga pada baris ke-38, pena Turtle dipindahkan
ke titik (0, -25.0). Perintah pada baris ke-37 digunakan untuk “mengangkat” pena Turtle.
Agar pena tidak “menulis” ketika dipindahkan. Kemudian pada baris ke-39, pena Turtle
“diturunkan” kembali. Agar pena bisa “menulis” kembali. Perintah pada baris ke-40
digunakan untuk mengatur warna garis pena Turtle menjadi warna kuning. Kemudian,
lingkaran digambar dengan jari-jari sesuai dengan nilai dalam variabel jari2 (pada baris ke-
41). Dalam kasus ini, jari-jari lingkaran yang digambar adalah 50.
Gambar 03.14.05. Lingkaran Keempat
0314-logoOlimpiade.py #bayuyudhasaputra
Halaman 8
Langkah ke-6 : membuat lingkaran kelima.
43 # 6. Buat lingkaran kelima
44 x = (12 / 10) * jari2
45 y = -(1 / 2) * jari2
46 turtle.penup()
47 turtle.goto(x,y)
48 turtle.pendown()
49 turtle.color("green")
50 turtle.circle(jari2)
Pada baris ke-44 hingga 50, program membuat lingkaran kelima berwarna hijau seperti yang
ditunjukkan oleh gambar 03.14.06. Perintah pada baris ke-44 digunakan untuk
mendefinisikan nilai absis dari posisi titik pusat lingkaran kelima. Nilai ini dirumuskan (12 /
10) * jari2 dan disimpan dalam variabel dengan nama x. Misal, nilai jari2 = 50 maka nilai
dalam variabel x = (12 / 10) * 50 = 60.0. Perintah pada baris ke-45 digunakan untuk
mendefinisikan nilai ordinat dari posisi titik pusat lingkaran kelima. Nilai ini dirumuskan - (1
/ 2) * jari2 dan disimpan dalam variabel dengan nama y. Misal, nilai jari2 = 50 maka nilai
dalam variabel y = - (1 / 2) * 50 = -25.0. Sehingga pada baris ke-47, pena Turtle dipindahkan
ke titik (0, -25.0). Perintah pada baris ke-46 digunakan untuk “mengangkat” pena Turtle.
Agar pena tidak “menulis” ketika dipindahkan. Kemudian pada baris ke-48, pena Turtle
“diturunkan” kembali. Agar pena bisa “menulis” kembali. Perintah pada baris ke-49
digunakan untuk mengatur warna garis pena Turtle menjadi warna kuning. Kemudian,
lingkaran digambar dengan jari-jari sesuai dengan nilai dalam variabel jari2 (pada baris ke-
50). Dalam kasus ini, jari-jari lingkaran yang digambar adalah 50.
0314-logoOlimpiade.py #bayuyudhasaputra
Halaman 9
Gambar 03.14.06. Lingkaran Kelima
52 turtle.hideturtle()
Perintah pada baris ke-52 ini digunakan untuk menyembunyikan pena Turtle.
Seandainya, baris kode ini tidak dituliskan maka pena Turtle berupa tanda panah masih
ditampilkan.
54 turtle.done()
Kode pada baris ke-54 digunakan untuk menghentikan layar Turtle agar tidak menutup
ketika program selesai dijalankan. Pada sistem operasi Windows, program akan tertutup jika
baris kode ini tidak dituliskan. Sementara pada sistem operasi berbasis Linux, program tidak
akan tertutup walaupun baris kode ini tidak dituliskan.
0314-logoOlimpiade.py #bayuyudhasaputra
Halaman 10
03.14.03. Daftar Pustaka
Liang. 2013. Introduction to Programming with Python. London: Pearson Education yang bisa
diakses pada tautan berikut:
https://www.amazon.com/Introduction-Programming-Using-Python-
Daniel/dp/0132747189
Baris kode ini bisa diakses pada tautan berikut:
https://github.com/bayuYudhaSaputra/Python/blob/main/Python_Liang/0314-
logoOlimpiade.py

More Related Content

PDF
02.23. Gambar Empat Lingkaran Menggunakan Python
PDF
02.26. Menggambar Lingkaran Dan Menampilkan Luas Menggunakan Bahasa Pemrogram...
PDF
03.01. Luas Segilima Menggunakan Bahasa Pemrograman Python
PDF
03.13. Membuat Tanda STOP Menggunakan Bahasa Pemrograman Python.pdf
PDF
Asistensi Logika Pemrograman TM UGM 2025.pdf
PDF
03.12.Menggambar Bintang Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.11. Pembalikan Digit Bilangan Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.10. Tampilkan 8 Abjad Yunani Menggunakan Bahasa Pemrograman Python.pdf
02.23. Gambar Empat Lingkaran Menggunakan Python
02.26. Menggambar Lingkaran Dan Menampilkan Luas Menggunakan Bahasa Pemrogram...
03.01. Luas Segilima Menggunakan Bahasa Pemrograman Python
03.13. Membuat Tanda STOP Menggunakan Bahasa Pemrograman Python.pdf
Asistensi Logika Pemrograman TM UGM 2025.pdf
03.12.Menggambar Bintang Menggunakan Bahasa Pemrograman Python.pdf
03.11. Pembalikan Digit Bilangan Menggunakan Bahasa Pemrograman Python.pdf
03.10. Tampilkan 8 Abjad Yunani Menggunakan Bahasa Pemrograman Python.pdf

More from Bayu Yudha Saputra (20)

PDF
03.09. Pembayaran Gaji Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.08. Pecahan Mata Uang USD Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.07.Menampilkan Huruf Kapital secara Random Menggunakan Bahasa Pemrograman ...
PDF
03.06. Konversi Kode ASCII Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.05. Luas Segi-n Beraturan Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.04. Luas Segilima Beraturan Menggunakan Bahasa Pemrograman Python
PDF
03.03.Estimasi Luas Daerah Menggunakan Bahasa Pemrograman Python
PDF
03.02. Great Circle Distance Menggunakan Bahasa Pemrograman Python
PDF
02.22. proyeksi Jumlah Penduduk Menggunakan Bahasa Pemrograman Python
PDF
02.21. Hitung Bunga Majemuk Menggunakan Bahasa Pemrograman Python.pdf
PDF
02.20.Hitung Nominal Bunga Bulanan Menggunakan Python
PDF
02.19. Hitung Nilai Investasi Menggunakan Python.pdf
PDF
02.17. Menentukan Body Mass Index Menggunakan Bahasa Pemrograman Python
PDF
02.16. Hitung Percepatan Menggunakan Python
PDF
02.15. LuasSegienam Menggunakan Bahasa Pemrograman Python
PDF
02.14. Luas Segitiga Menggunakan Bahasa Pemrograman Python
PDF
02.13. Ekstrak Bilangan Ribuan Mengguanakan Bahasa Pemrograman Python
PDF
02.11. Hitung Nilai Awal Tabungan Menggunakan Python
PDF
02.10. Hitung Panjang Minimal Runway Menggunakan Python
PDF
02.09. Menentukan Wind-chill Temperature Menggunakan Bahasa Pemrograman Python
03.09. Pembayaran Gaji Menggunakan Bahasa Pemrograman Python.pdf
03.08. Pecahan Mata Uang USD Menggunakan Bahasa Pemrograman Python.pdf
03.07.Menampilkan Huruf Kapital secara Random Menggunakan Bahasa Pemrograman ...
03.06. Konversi Kode ASCII Menggunakan Bahasa Pemrograman Python.pdf
03.05. Luas Segi-n Beraturan Menggunakan Bahasa Pemrograman Python.pdf
03.04. Luas Segilima Beraturan Menggunakan Bahasa Pemrograman Python
03.03.Estimasi Luas Daerah Menggunakan Bahasa Pemrograman Python
03.02. Great Circle Distance Menggunakan Bahasa Pemrograman Python
02.22. proyeksi Jumlah Penduduk Menggunakan Bahasa Pemrograman Python
02.21. Hitung Bunga Majemuk Menggunakan Bahasa Pemrograman Python.pdf
02.20.Hitung Nominal Bunga Bulanan Menggunakan Python
02.19. Hitung Nilai Investasi Menggunakan Python.pdf
02.17. Menentukan Body Mass Index Menggunakan Bahasa Pemrograman Python
02.16. Hitung Percepatan Menggunakan Python
02.15. LuasSegienam Menggunakan Bahasa Pemrograman Python
02.14. Luas Segitiga Menggunakan Bahasa Pemrograman Python
02.13. Ekstrak Bilangan Ribuan Mengguanakan Bahasa Pemrograman Python
02.11. Hitung Nilai Awal Tabungan Menggunakan Python
02.10. Hitung Panjang Minimal Runway Menggunakan Python
02.09. Menentukan Wind-chill Temperature Menggunakan Bahasa Pemrograman Python
Ad

Recently uploaded (20)

PPTX
Rancangan Aktualisasi Latsar CPNS Kementerian Agama 2025.pptx
PPTX
!!!!Bahan Tayang Kompetensi Manajerial-AKUNTABILITAS KINERJA-DR Asep Iwa.pptx
PPTX
Modul 3 Prinsip-Pembelajaran-Mendalam.pptx
DOCX
Modul Ajar Deep Learning Prakarya Kerajinan Kelas 12 SMA Terbaru 2025
DOCX
Modul Ajar Pembelajaran Mendalam PJOK Kelas X Terbaru 2025
PDF
Laporan On The Job TRaining PM KS Siti Hikmah.pdf
PPTX
PPT REVISED - SEMINAR PEMBELAJARAN MENDALAM .pptx
PPTX
! Keterampilan Digital dalam orgnasisasi.pptx
PPTX
Pedoman & Kewajiban Penggunaan Produksi Dalam Negeri _Pelatihan "Ketentuan T...
PPTX
PROGRAM KOKURIKULER KELAS 9 TEMA 1_20250811_075823_0000.pptx
PPTX
Patuh_Terhadap_Norma_PPKn_Kelas_7 oke.pptx
DOC
RPP Deep Learning _ MGMP Wilayah 1 (1).doc
PPTX
Saint Maximilian Kolbe, Polish friar, priest, missionary and martyr (indonesi...
PDF
LK Modul 3 - Menentukan Pengalaman Belajar Herpina Indah Permata Sari (2).pdf
PPT
Kamera foto dan editing foto pengenalan fotografi
PPTX
Presentasi Al-Quran Hadits Kelompok XI.1
PPTX
Pembelajaran-Mendalam-RTL-dan-Umpan-Baliknya.pptx
PPTX
Sejarah-Kelahiran-Pancasila kelas 8.pptx
PDF
PPT Yudisium Ceremony Agusus 2025 - new. pdf
PPTX
SISTEM POLITIK DAN PEMERINTAHAN INDONESIA.pptx
Rancangan Aktualisasi Latsar CPNS Kementerian Agama 2025.pptx
!!!!Bahan Tayang Kompetensi Manajerial-AKUNTABILITAS KINERJA-DR Asep Iwa.pptx
Modul 3 Prinsip-Pembelajaran-Mendalam.pptx
Modul Ajar Deep Learning Prakarya Kerajinan Kelas 12 SMA Terbaru 2025
Modul Ajar Pembelajaran Mendalam PJOK Kelas X Terbaru 2025
Laporan On The Job TRaining PM KS Siti Hikmah.pdf
PPT REVISED - SEMINAR PEMBELAJARAN MENDALAM .pptx
! Keterampilan Digital dalam orgnasisasi.pptx
Pedoman & Kewajiban Penggunaan Produksi Dalam Negeri _Pelatihan "Ketentuan T...
PROGRAM KOKURIKULER KELAS 9 TEMA 1_20250811_075823_0000.pptx
Patuh_Terhadap_Norma_PPKn_Kelas_7 oke.pptx
RPP Deep Learning _ MGMP Wilayah 1 (1).doc
Saint Maximilian Kolbe, Polish friar, priest, missionary and martyr (indonesi...
LK Modul 3 - Menentukan Pengalaman Belajar Herpina Indah Permata Sari (2).pdf
Kamera foto dan editing foto pengenalan fotografi
Presentasi Al-Quran Hadits Kelompok XI.1
Pembelajaran-Mendalam-RTL-dan-Umpan-Baliknya.pptx
Sejarah-Kelahiran-Pancasila kelas 8.pptx
PPT Yudisium Ceremony Agusus 2025 - new. pdf
SISTEM POLITIK DAN PEMERINTAHAN INDONESIA.pptx
Ad

03.14. Membuat Logo Olimpiade Menggunakan Bahasa Pemrograman Python.pdf

  • 1. 0314-logoOlimpiade.py #bayuyudhasaputra Halaman 1 Programming Exercise 03.14 Membuat Logo Olimpiade 03.14.01. Masalah 03.14. (Turtle : Menggambar logo olimpiade) Tuliskan program yang menawarkan pengguna untuk menginput jari-jari lingkaran. Kemudian, program membuat logo Olimpiade yang terdiri dari 5 lingkaran berwarna biru, hitam, merah, kuning dan hijau seperti yang ditunjukkan oleh gambar 03.14.01. Jari-jari setiap lingkaran ini sama. Panjang jari-jari lingkaran-lingkaran ini sesuai dengan nilai diinput oleh pengguna. Contoh Program: Gambar 03.14.01. Contoh Logo Olimpiade 03.14.02. Kode Python Program Python lengkap untuk menggambar logo olimpiade pada layar turtle adalah sebagai berikut: 1 import turtle # import modul turtle 2 3 # 1. Input jari2 lingkaran 4 jari2 = eval(input("Input panjang jari-jari logo Olimpiade : ")) 5 turtle.pensize(jari2 / 10) 6 7 # 2. Buat lingkaran pertama 8 x = -(23 / 10) * jari2 9 y = (1 / 2) * jari2
  • 2. 0314-logoOlimpiade.py #bayuyudhasaputra Halaman 2 10 turtle.penup() 11 turtle.goto(x,y) 12 turtle.pendown() 13 turtle.color("blue") 14 turtle.circle(jari2) 15 16 # 3. Buat lingkaran kedua 17 x = 0 * jari2 18 y = (1 / 2) * jari2 19 turtle.penup() 20 turtle.goto(x,y) 21 turtle.pendown() 22 turtle.color("black") 23 turtle.circle(jari2) 24 25 # 4. Buat lingkaran ketiga 26 x = (23 / 10) * jari2 27 y = (1 / 2) * jari2 28 turtle.penup() 29 turtle.goto(x,y) 30 turtle.pendown() 31 turtle.color("red") 32 turtle.circle(jari2) 33 34 # 5. Buat lingkaran keempat 35 x = -(12 / 10) * jari2 36 y = -(1 / 2) * jari2 37 turtle.penup() 38 turtle.goto(x,y) 39 turtle.pendown() 40 turtle.color("yellow") 41 turtle.circle(jari2) 42 43 # 6. Buat lingkaran kelima 44 x = (12 / 10) * jari2 45 y = -(1 / 2) * jari2 46 turtle.penup() 47 turtle.goto(x,y) 48 turtle.pendown() 49 turtle.color("green") 50 turtle.circle(jari2)
  • 3. 0314-logoOlimpiade.py #bayuyudhasaputra Halaman 3 51 52 turtle.hideturtle() 53 54 turtle.done() Langkah-langkah kerja program Python lengkap untuk menggambar logo olimpiade pada layar turtle adalah: 1 import turtle # import modul turtle Kode pada baris ke-1 digunakan untuk mengimpor modul Turtle. Modul ini diimpor agar method-method modul Turtle bisa digunakan. Langkah ke-1 : Menerima input panjang jari-jari lingkaran. 1 # 1. Input jari2 lingkaran 2 jari2 = eval(input("Input panjang jari-jari logo Olimpiade : ")) 3 turtle.pensize(jari2 / 10) Pada baris ke-2, program meminta pengguna untuk menginput panjang jari-jari lingkaran menggunakan fungsi input(). Kemudian, nilai input ini dikonversi menjadi nilai numerik menggunakan fungsi eval(). Nilai input ini disimpan dalam variabel dengan nama jari2. Untuk memudahkan penjelasan, misal, pengguna menginput nilai jari2 = 50. Kode pada baris ke-3 digunakan untuk mengatur ketebalan pena Turtle. Pada kasus ini karena nilai jari2 = 50, maka tebal pena Turtle adalah 50 / 10 = 5. Langkah ke-2 : membuat lingkaran pertama. 7 # 2. Buat lingkaran pertama 8 x = -(23 / 10) * jari2 9 y = (1 / 2) * jari2 10 turtle.penup() 11 turtle.goto(x,y) 12 turtle.pendown() 13 turtle.color("blue") 14 turtle.circle(jari2) Pada baris ke-8 hingga 14, program membuat lingkaran pertama berwarna biru seperti yang ditunjukkan oleh gambar 03.14.02. Perintah pada baris ke-8 digunakan untuk mendefinisikan nilai absis dari posisi titik pusat lingkaran pertama. Nilai ini dirumuskan – (23 / 10) * jari2 dan disimpan dalam variabel dengan nama x. Misal, nilai jari2 = 50 maka nilai dalam
  • 4. 0314-logoOlimpiade.py #bayuyudhasaputra Halaman 4 variabel x = - (23 / 10) * 50 = -114.99999999999999. Perintah pada baris ke-9 digunakan untuk mendefinisikan nilai ordinat dari posisi titik pusat lingkaran pertama. Nilai ini dirumuskan (1 / 2) * jari2 dan disimpan dalam variabel dengan nama y. Misal, nilai jari2 = 50 maka nilai dalam variabel y = (1 / 2) * 50 = 25.0. Sehingga pada baris ke-11, pena Turtle dipindahkan ke titik (-114.99999999999999, 25.0). Perintah pada baris ke-10 digunakan untuk “mengangkat” pena Turtle. Agar pena tidak “menulis” ketika dipindahkan. Kemudian pada baris ke-12, pena Turtle “diturunkan” kembali. Agar pena bisa “menulis” kembali. Perintah pada baris ke-13 digunakan untuk mengatur warna garis pena Turtle menjadi warna biru. Kemudian, lingkaran digambar dengan jari-jari sesuai dengan nilai dalam variabel jari2 (pada baris ke-14). Dalam kasus ini, jari-jari lingkaran yang digambar adalah 50. Gambar 03.14.02. Lingkaran Pertama Langkah ke-3 : membuat lingkaran kedua. 16 # 3. Buat lingkaran kedua 17 x = 0 * jari2 18 y = (1 / 2) * jari2 19 turtle.penup() 20 turtle.goto(x,y) 21 turtle.pendown() 22 turtle.color("black") 23 turtle.circle(jari2) Pada baris ke-17 hingga 23, program membuat lingkaran pertama berwarna hitam seperti yang ditunjukkan oleh gambar 03.14.03. Perintah pada baris ke-17 digunakan untuk mendefinisikan nilai absis dari posisi titik pusat lingkaran kedua. Nilai ini adalah 0 dan
  • 5. 0314-logoOlimpiade.py #bayuyudhasaputra Halaman 5 disimpan dalam variabel dengan nama x. Misal, nilai jari2 = 50 maka nilai dalam variabel x = 0. Perintah pada baris ke-18 digunakan untuk mendefinisikan nilai ordinat dari posisi titik pusat lingkaran pertama. Nilai ini dirumuskan (1 / 2) * jari2 dan disimpan dalam variabel dengan nama y. Misal, nilai jari2 = 50 maka nilai dalam variabel y = (1 / 2) * 50 = 25.0. Sehingga pada baris ke-20, pena Turtle dipindahkan ke titik (0, 25.0). Perintah pada baris ke- 19 digunakan untuk “mengangkat” pena Turtle. Agar pena tidak “menulis” ketika dipindahkan. Kemudian pada baris ke-21, pena Turtle “diturunkan” kembali. Agar pena bisa “menulis” kembali. Perintah pada baris ke-22 digunakan untuk mengatur warna garis pena Turtle menjadi warna hitam. Kemudian, lingkaran digambar dengan jari-jari sesuai dengan nilai dalam variabel jari2 (pada baris ke-23). Dalam kasus ini, jari-jari lingkaran yang digambar adalah 50. Gambar 03.14.03. Lingkaran Kedua Langkah ke-4 : membuat lingkaran ketiga. 25 # 4. Buat lingkaran ketiga 26 x = (23 / 10) * jari2 27 y = (1 / 2) * jari2 28 turtle.penup() 29 turtle.goto(x,y) 30 turtle.pendown() 31 turtle.color("red") 32 turtle.circle(jari2) Pada baris ke-26 hingga 32, program membuat lingkaran ketiga berwarna merah seperti yang ditunjukkan oleh gambar 03.14.04. Perintah pada baris ke-26 digunakan untuk
  • 6. 0314-logoOlimpiade.py #bayuyudhasaputra Halaman 6 mendefinisikan nilai absis dari posisi titik pusat lingkaran ketiga. Nilai ini dirumuskan (23 / 10) * jari2 dan disimpan dalam variabel dengan nama x. Misal, nilai jari2 = 50 maka nilai dalam variabel x = (23 / 10) * 50 = 114.99999999999999. Perintah pada baris ke-27 digunakan untuk mendefinisikan nilai ordinat dari posisi titik pusat lingkaran ketiga. Nilai ini dirumuskan (1 / 2) * jari2 dan disimpan dalam variabel dengan nama y. Misal, nilai jari2 = 50 maka nilai dalam variabel y = (1 / 2) * 50 = 25.0. Sehingga pada baris ke-29, pena Turtle dipindahkan ke titik (114.99999999999999, 25.0). Perintah pada baris ke-28 digunakan untuk “mengangkat” pena Turtle. Agar pena tidak “menulis” ketika dipindahkan. Kemudian pada baris ke-30, pena Turtle “diturunkan” kembali. Agar pena bisa “menulis” kembali. Perintah pada baris ke-31 digunakan untuk mengatur warna garis pena Turtle menjadi warna merah. Kemudian, lingkaran digambar dengan jari-jari sesuai dengan nilai dalam variabel jari2 (pada baris ke-32). Dalam kasus ini, jari-jari lingkaran yang digambar adalah 50. Gambar 03.14.04. Lingkaran Ketiga Langkah ke-5 : membuat lingkaran keempat. 34 # 5. Buat lingkaran keempat 35 x = -(12 / 10) * jari2 36 y = -(1 / 2) * jari2 37 turtle.penup() 38 turtle.goto(x,y) 39 turtle.pendown()
  • 7. 0314-logoOlimpiade.py #bayuyudhasaputra Halaman 7 40 turtle.color("yellow") 41 turtle.circle(jari2) Pada baris ke-35 hingga 41, program membuat lingkaran keempat berwarna kuning seperti yang ditunjukkan oleh gambar 03.14.05. Perintah pada baris ke-35 digunakan untuk mendefinisikan nilai absis dari posisi titik pusat lingkaran keempat. Nilai ini dirumuskan - (12 / 10) * jari2 dan disimpan dalam variabel dengan nama x. Misal, nilai jari2 = 50 maka nilai dalam variabel x = - (12 / 10) * 50 = -60.0. Perintah pada baris ke-27 digunakan untuk mendefinisikan nilai ordinat dari posisi titik pusat lingkaran keempat. Nilai ini dirumuskan - (1 / 2) * jari2 dan disimpan dalam variabel dengan nama y. Misal, nilai jari2 = 50 maka nilai dalam variabel y = - (1 / 2) * 50 = -25.0. Sehingga pada baris ke-38, pena Turtle dipindahkan ke titik (0, -25.0). Perintah pada baris ke-37 digunakan untuk “mengangkat” pena Turtle. Agar pena tidak “menulis” ketika dipindahkan. Kemudian pada baris ke-39, pena Turtle “diturunkan” kembali. Agar pena bisa “menulis” kembali. Perintah pada baris ke-40 digunakan untuk mengatur warna garis pena Turtle menjadi warna kuning. Kemudian, lingkaran digambar dengan jari-jari sesuai dengan nilai dalam variabel jari2 (pada baris ke- 41). Dalam kasus ini, jari-jari lingkaran yang digambar adalah 50. Gambar 03.14.05. Lingkaran Keempat
  • 8. 0314-logoOlimpiade.py #bayuyudhasaputra Halaman 8 Langkah ke-6 : membuat lingkaran kelima. 43 # 6. Buat lingkaran kelima 44 x = (12 / 10) * jari2 45 y = -(1 / 2) * jari2 46 turtle.penup() 47 turtle.goto(x,y) 48 turtle.pendown() 49 turtle.color("green") 50 turtle.circle(jari2) Pada baris ke-44 hingga 50, program membuat lingkaran kelima berwarna hijau seperti yang ditunjukkan oleh gambar 03.14.06. Perintah pada baris ke-44 digunakan untuk mendefinisikan nilai absis dari posisi titik pusat lingkaran kelima. Nilai ini dirumuskan (12 / 10) * jari2 dan disimpan dalam variabel dengan nama x. Misal, nilai jari2 = 50 maka nilai dalam variabel x = (12 / 10) * 50 = 60.0. Perintah pada baris ke-45 digunakan untuk mendefinisikan nilai ordinat dari posisi titik pusat lingkaran kelima. Nilai ini dirumuskan - (1 / 2) * jari2 dan disimpan dalam variabel dengan nama y. Misal, nilai jari2 = 50 maka nilai dalam variabel y = - (1 / 2) * 50 = -25.0. Sehingga pada baris ke-47, pena Turtle dipindahkan ke titik (0, -25.0). Perintah pada baris ke-46 digunakan untuk “mengangkat” pena Turtle. Agar pena tidak “menulis” ketika dipindahkan. Kemudian pada baris ke-48, pena Turtle “diturunkan” kembali. Agar pena bisa “menulis” kembali. Perintah pada baris ke-49 digunakan untuk mengatur warna garis pena Turtle menjadi warna kuning. Kemudian, lingkaran digambar dengan jari-jari sesuai dengan nilai dalam variabel jari2 (pada baris ke- 50). Dalam kasus ini, jari-jari lingkaran yang digambar adalah 50.
  • 9. 0314-logoOlimpiade.py #bayuyudhasaputra Halaman 9 Gambar 03.14.06. Lingkaran Kelima 52 turtle.hideturtle() Perintah pada baris ke-52 ini digunakan untuk menyembunyikan pena Turtle. Seandainya, baris kode ini tidak dituliskan maka pena Turtle berupa tanda panah masih ditampilkan. 54 turtle.done() Kode pada baris ke-54 digunakan untuk menghentikan layar Turtle agar tidak menutup ketika program selesai dijalankan. Pada sistem operasi Windows, program akan tertutup jika baris kode ini tidak dituliskan. Sementara pada sistem operasi berbasis Linux, program tidak akan tertutup walaupun baris kode ini tidak dituliskan.
  • 10. 0314-logoOlimpiade.py #bayuyudhasaputra Halaman 10 03.14.03. Daftar Pustaka Liang. 2013. Introduction to Programming with Python. London: Pearson Education yang bisa diakses pada tautan berikut: https://www.amazon.com/Introduction-Programming-Using-Python- Daniel/dp/0132747189 Baris kode ini bisa diakses pada tautan berikut: https://github.com/bayuYudhaSaputra/Python/blob/main/Python_Liang/0314- logoOlimpiade.py