You are on page 1of 14

Asas Sains Komputer

PENGAJARAN 7

MASA CADANGAN: 60 MINIT

Pengajaran 7 mengembangkan pengetahuan asas murid tentang atur


cara Python dengan memperkenalkan operator.

BIDANG PEMBELAJARAN
3.0 KOD ARAHAN

Standard Kandungan:
3.1 Persekitaran Kod Arahan

Standard Pembelajaran:
Murid boleh
3.1.3 Menghasilkan segmen kod menggunakan
(ii) operator perbandingan.
(iii) operator logk.

Perbendaharaan Kata:
1. Operator logik
2. Operator perbandingan

Bahan:
1. Slaid PowerPoint Pengajaran 7
2. Lampiran
3. Lembaran Kerja 1 – 3
3. Penilaian Kendiri
Guru menyediakan bahan untuk pengajaran 7.

Murid bekerja dalam kumpulan kecil (3 orang ahli) BBM


dan melengkapkan Lembaran Kerja 1.  Lembaran Kerja 1 (m/s 7)

Aktiviti 1:

1. Murid ditunjukkan kod segmen yang telah dipelajari.


Guru menerangkan setiap komponen dalam pernyataan.

i i. pemboleh ubah
ii ii. “assign”
iii. operator “tambah”

iii

(Kandungan yang sama terdapat dalam slaid no. 3)

2. Guru menerangkan cara untuk menamakan pemboleh ubah.


 Nama untuk pemboleh ubah ialah case-sensitive.
 Ia hanya boleh merangkumi huruf, nombor dan garis bawah
(underscore).
 Tidak boleh bermula dengan nombor.
 Tidak boleh sama dengan kata kunci Python:

(Kandungan yang sama terdapat dalam slaid no. 4)

2
3. Guru menerangkan cara penamaan pemboleh ubah yang baik.
Amalan baik penamaan pemboleh ubah:
• Guna nama yang menjelaskan pemboleh ubah anda. Ini akan
memudahkan atur cara anda difahami.
• Apabila nama pemboleh ubah mempunyai lebih daripada satu
perkataan, guna “_” untuk mengasingkan perkataannya.
• Contoh: luas_segiempat_tepat=panjang*lebar
(Kandungan yang sama terdapat dalam slaid no. 5)

4. Murid bekerja dalam kumpulan kecil BBM


(maksimum 3 orang) untuk melengkapkan  Lembaran Kerja 2 (m/s 9)
Lembaran Kerja 2.

5. Guru menyemak jawapan murid dan memerhatikan jika murid memerlukan


bimbingan tambahan.

Aktiviti 1:
1. Guru menerangkan konsep operator.

“Operator” merupakan simbol yang memberitahu penterjemah Python


untuk melakukan sesuatu operasi Matematik atau operasi logik.

Contohnya:

(Kandungan yang sama terdapat dalam slaid no. 7)

2. Guru memperkenalkan operator matematik yang sering digunakan.

(Kandungan yang sama terdapat dalam slaid no. 8)

3
3. Guru memperkenalkan:
Apakah jawapan Jangkakan kegunaan operator
Operator untuk kod segmen ini.
berikut? (Jawapan untuk rujukan guru)
Modulus 5%2 (Modulus memberi baki kepada
suatu operasi pembahagian)
Floor division 8//3 floor division memberi hasil
bahagi nombor bulat (quotient)
sesuatu operasi pembahagian
eksponen 2**3 Operator eksponen x**y
bermaksud x kuasa y.

(Kandungan yang sama terdapat dalam slaid no. 9 – 17)

Activity 2:
1. Guru menerangkan Operator Perbandingan berdasarkan Jadual 2.
< Kurang daripada Contoh:
<= Kurang atau sama Apabila kita masukkan kod segmen yang
dengan melibatkan Operator Perbandingan seperti:
> Lebih daripada 5>4
>= Lebih atau sama Ini bukan satu penyataan, tetapi satu soalan
dengan untuk Python: “Adakah 5 lebih besar
!= Tidak sama daripada 4?”
== adalah sama
Python akan memulangkan jawapan sama
ada “benar” atau “palsu” (boolean).
Jadual 2
(Kandungan yang sama terdapat dalam slaid no. 18)

2. Guru menerangkan Operator Logik berdasarkan Jadual 3.


Contoh:
Operator Penerangan Jika a = Benar
dan b = Palsu
and Output adalah “benar” jika kedua- a AND b akan
dua operan adalah benar memulangkan “Palsu”
or Output adalah “benar” jika salah a OR b akan
satu operan adalah benar memulangkan “Benar”
not Menyongsangkan logik operan NOT a akan
memulangkan “Palsu”
Jadual 3
(Kandungan yang sama terdapat dalam slaid no. 19)

4
3. Guru menerangkan keutamaan operator yang BBM
berbeza dalam Python (Lampiran).  Lampiran (m/s 6)

 Python membuat operasi mengikut keutamaan yang telah ditetapkan


(operator precedence)
 Konsep ini sama dengan operasi Matematik di mana operasi darab dan
bahagi dilakukan dahulu sebelum operasi tambah dan tolak. BODMAS:
“Bracket”, “Order”, “Divide”, “Multiply”, “Add”, “Substract”
 Operator yang lebih tinggi susunannya dalam Lampiran diberikan
keutamaan dahulu.
 Contoh:
Kurungan ditempatkan lebih tinggi daripada eksponen
Maka, Python akan menjalankan operasi dalam kurungan (parenthesis)
dahulu, diikuti dengan eksponen.
(Kandungan yang sama terdapat dalam slaid no. 20 – 21)

Aktiviti 1: BBM
Murid bekerja dalam kumpulan kecil. (4 orang ahli)  Lembaran Kerja 3 (m/s 11)
dan melengkapkan Lembaran Kerja 3. 

Murid melengkapkan Penilaian Kendiri untuk


menunjukkan tahap penguasaan objektif BBM
pembelajaran.  Penilaian Kendiri (m/s 13)

Murid akan menulis kod segmen yang melibatkan penggunaan pelbagai jenis
data, pemboleh ubah dan operator dalam struktur kawalan jujukan.
(Kandungan yang sama terdapat dalam slaid no. 24)

5
Lampiran
Keutamaan operator Python
Operator Penjelasan
() Parenthesis (grouping)
f(args…), x[i:i], x[i], x.attr Function call, slicing, subscript, dot
** Exponentiation
~,+,- Complement, unary plus and unary minus
*,/,%,// Multiply, divide, modulo and whole (floor) division
+, - Addition and subtraction
>>, << Right and left bitwise shift
& Bitwise and
^ Bitwise exclusive or (XOR)
| Bitwise OR
<=, <, >, >= Relational operators
<>, ==, != Equality operators
=, %=, /=, //=, -=, +=, *=, **= Assignment operators
is, is not Identity operators
in, not in Membership operators
not Logical operators: Boolean NOT
and Boolean AND
or Boolean OR
lambda Lambda expression

6
LEMBARAN KERJA 1
Berikan penjelasan ringkas dan contoh bagi setiap jenis data yang berikut:
Jenis Data Digunakan untuk Contoh kod

Integer (int)

boolean

Double / float
(double / float)

Character (char)

String (str)

7
LEMBARAN KERJA 1 – jawapan
Berikan penjelasan ringkas dan contoh bagi setiap jenis data yang berikut:
Jenis Data Digunakan untuk Contoh kod

Membuat penetapan
Integer (int) sesuatu nilai pemboleh nomb1=int(6)
ubah kepada integer

Sebagai pernyataan >>> 8 != 7


boolean
bersyarat. >>> True

nomb2=float(37.96)
(untuk Python)
Membuat penetapan
Double / float
sesuatu nilai pemboleh double nomb2=37.96;
(double / float)
ubah kepada nilai float (untuk pengaturcaraan
C++ yang membenarkan
penggunaan “double”)

char simbol1=’@’;
Digunakan untuk mewakili (untuk pengaturcarran
Character (char)
aksara. C++ yang menyokong
penggunaan “char”)

Digunakan untuk
menetapkan sesuatu Mesej1=str(“Saya makan
String (str)
pemboleh ubah sebagai nasi.”)
string.

8
LEMBARAN KERJA 2
1. Cadangkan nama untuk pemboleh ubah yang berikut.
Pemboleh ubah Nama Jenis data dalam Python
Harga secawan kopi harga_kopi float

Jumlah kotak susu

Jenis kopis dijual

Sewa kedai

Masa kedai buka

2. Terangkan ralat-ralat untuk nama pemboleh ubah yang berikut dalam Python:
Kod segment Ralat

3. Sesuatu data yang akan berubah dinamakan _______ .


a. graf
b. input
c. pemboleh ubah

4. Nilai PI selalu sama dengan 3.142. PI ialah sejenis _______ .


a. pemalar
b. data yang boleh ditukar
c. ukuran yang akan berubah

9
LEMBARAN KERJA 2 – jawapan
1. Cadangkan nama untuk pemboleh ubah yang berikut.
Pemboleh ubah Nama Jenis data dalam Python
Harga secawan kopi harga_kopi float

Jumlah kotak susu kotak_susu integer

Jenis kopis dijual jenis_kopi string

Sewa kedai sewa float

Masa kedai buka masa_urusan float

2. Terangkan ralat-ralat untuk nama pemboleh ubah yang berikut dalam Python:
Kod segment Ralat
Penggunaan simbol “-”
(dash) adalah tidak
dibenarkan

Ejaan “lebar” dalam baris


pertama tidak selaras
dengan baris ketiga
(“lebah”).

“class” merupakan kata


kunci Python. Kata kunci
Python tidak boleh
digunakan sebagai nama
pemboleh ubah.
Nama pemboleh ubah tidak
boleh bermula dengan
nombor. “lebah2” boleh
digunakan tetapi “2lebah”
tidak boleh digunakan.

3. Sesuatu data yang akan berubah dinamakan _______ .


a. graf
b. input
c. pemboleh ubah

4. Nilai PI selalu sama dengan 3.142. PI ialah sejenis _______ .


a. pemalar
b. data yang boleh ditukar
c. ukuran yang akan berubah

10
LEMBARAN KERJA 3
Jelaskan jenis data hasil setiap kod segmen di bawah tanpa menggunakan Python.
print(10.0+15) print(3*2+1)
print(3+5/2) print(2**3/4+6)
print(15%7) print(40*4/20*5)
print(42//10) print(int(8.5)/4)
print(4**2) print(int(8.5/4))
print(3*2**3) print(not 0)
print((3>2) or (4<7)) print(4>4.1 and 3 != 5)
x=7>5 x=8
y=2<3 y=8.1
print(x and y) z=x==y
q=2>=6
print(z or q)

Jawapan anda:

11
LEMBARAN KERJA 3 – jawapan
Jelaskan jenis data hasil setiap kod segmen di bawah tanpa menggunakan Python.
print (10.0+15) = 25.0 print (3*2+1) = 7
(nombor float)
print (3+5/2) = 5.5 print (2**3/4+6) = 8
(nombor float) (operasi eksponen dijalankan dahulu
sebelum membuat operasi tambah)
print (15%7) = 1 print(40*4/20*5) = 40.0
(disebabkan operasi bahagi, jawapan
adalah dalam bentuk float)
print (42//10) = 4 print (int(8.5)/4) = 2.0
(arahan “int” menjadikan 8.5 kepada
integer (8), kemudian pembahagian, 8/4
menjadikan hasil nombor jenis float.)
print (4**2) = 16 print (int(8.5/4)) = 2
(integer berada di luar operasi (8.5/4).
Operasi (8.5/4) akan memberikan hasil
dalam bentuk float. Namun, int
menukarkan float kepada integer. Oleh
itu, jawapan akhir ialah nombor integer,
iaitu 2.)
print (3*2**3) = 24 print(not 0) = Benar
(operasi eksponen dijalankan dahulu (0 adalah Palsu dalam Python. “not 0”
sebelum membuat operasi darab) maksudnya “bukan Palsu”, jadi jawapan
adalah “Benar”)
print((3>2) or (4<7)) = Benar print(4>4.1 and 3 != 5) = Palsu
3>2 = Benar 4>4.1 = Palsu
4<7 = Benar 3 != 5 = Benar (3 bukan 5)
“Benar” atau “Benar” memulangkan Jadi, “Palsu” dan “Benar” memulangkan
“Benar” “Palsu”
x=7>5  Benar x=8
y=2<3  Benar y=8.1
print(x and y) = Benar z=x==y
“Benar” dan “Benar” memulangkan q=2>=6
“Benar” print(z or q)

12
Penilaian Kendiri
Ramalkan jawapan untuk kod segmen di bawah tanpa menggunakan Python. Jika
kod tersebut mengandungi ralat, tuliskan “ralat” sebagai jawapan dan bulatkan ralat
tersebut.

Kod Segmen Jawapan


N=5
1
print(N*5)

N = 10
2
Print(N*5)

z = 2.0
3
print(z*2)
z = 3.2
4 y = 0.8
print(y+z)
tapak = 6
tinggi = 6
5
LuasSegiTiga = (1/3)*tapak*tinggi
print(LuasSegiTiga)
sisi=5
6 perimeter=sisi*4
print(Perimeter)
class = 5
7 murid=30
print(class * murid)
dal = 3.2
8 del = 0.8
print(dal+del)
N = 5.0
9
print(N*2)

N=2
10
print(N*5.0)

13
Penilaian Kendiri – Jawapan
Ramalkan jawapan untuk kod segmen di bawah tanpa menggunakan Python. Jika
kod tersebut mengandungi ralat, tuliskan “ralat” sebagai jawapan dan bulatkan ralat
tersebut.

Kod Segmen Jawapan


N=5
1 25
print(N*5)

N = 10 Ralat. Sepatutnya “print” dan bukan


2
Print(N*5) “Print”

z = 2.0
3 4.0
print(z*2)
z = 3.2
4 y = 0.8 4.0
print(y+z)
tapak = 6
tinggi = 6
5 12.0
LuasSegiTiga = (1/3)*tapak*tinggi
print(LuasSegiTiga)
sisi=5
Ralat. Sepatutnya “perimeter” dan bukan
6 perimeter=sisi*4
“Perimeter”
print(Perimeter)
class = 5 Ralat. Perkataan “class” merupakan
7 murid=30 keyword dalam Python dan tidak boleh
print(class * murid) digunakan sebagai pemboleh ubah
dal = 3.2 Ralat. Perkataan “del” merupakan
8 del = 0.8 keyword dalam Python dan tidak boleh
print(dal+del) digunakan sebagai pemboleh ubah
N = 5.0
9 10.0
print(N*2)

N=2
10 10.0
print(N*5.0)

You might also like