Tutorial Python untuk bukan pengatur cara/Membuat keputusan: Perbezaan antara semakan

Kandungan dihapus Kandungan ditambah
Powerabu (bincang | sumb.)
Tiada ringkasan suntingan
Powerabu (bincang | sumb.)
Tiada ringkasan suntingan
Baris 17:
Number? 1
The absolute value of 1 is 1
</pre>
 
Jadi, apa yang komputer lakukan apabila ia melihat code ini? Pertama sekali, ia menyuruh pengguna untuk nombor pada penyataan n = input("Number? ")
Kemudian ia membaca baris if n < 0: Jika n nilai dia kurang dari kosong maka Python akan menjalankan baris "The absolute value of",n,"is",-n.
Kalau nilai itu sebaliknya pulak maka sudah tentulah Python akan menjalankan baris "The absolute value of",n,"is",n.
 
Lebih secara rasmi, Python akan melihat sama ada ungkapa n < 0 adalah True or False (betul atau salah). Penyataan if ini diikuti oleh blok kenyataan yang akan
dijalankan apabila ungkapan adalah benar. Secara pilihan, selepas penyataan if ialah penyataan else.Penyataan else akan dijalankan apabila ungkapan adalah salah.
 
Sini ada beberapa ujian-ujian lain yang expression/ungkapan boleh miliki:-
 
{|
!Operator
!Fungsi
|-
|<tt><</tt>
|Kurang Daripada
|-
|<tt><=</tt>
|Kurang Daripada atau Sama Dengan
|-
|<tt>></tt>
|Lebih Daripada
|-
|<tt>>=</tt>
|Lebih Daripada atau Sama Dengan
|-
|<tt>==</tt>
|Bersamaan
|-
|<tt>!=</tt>
|Tidak Sama
|-
|<tt><></tt>
|Cara Lain Untuk Katakan Tidak Sama
|}
 
Ciri lain bagi penyataan if ialah penyataan elif. Ia merujuk kepada penyataan else if yang bermaksud false (salah) dan selepas itu bahagian elif ialah true(betul) di bahagiannya. Ini contohnya:-
 
<pre>
a = 0
while a < 10:
a = a + 1
if a > 5:
print a," > ",5
elif a <= 7:
print a," <= ",7
else:
print "Neither test was true"
</pre>
 
Yang ni hasil dia:-
 
<pre>
1 <= 7
2 <= 7
3 <= 7
4 <= 7
5 <= 7
6 > 5
7 > 5
8 > 5
9 > 5
10 > 5
</pre>
 
Peringatan bahawa elif a <= 7 adalah hanya dicuba apabila penyataan if gagal untuk menjadi true. elif membenarkan ujian atau cubaan berganda untuk dibuat dalam satu penyataan if.
 
 
== Contoh ==
 
High_low.py
 
<pre>
#Plays the guessing game higher or lower
# (originally written by Josh Cogliati, improved by Quique)
 
#This should actually be something that is semi random like the
# last digits of the time or something else, but that will have to
# wait till a later chapter. (Extra Credit, modify it to be random
# after the Modules chapter)
number = 78
guess = 0
 
while guess != number :
guess = input ("Guess a number: ")
 
if guess > number :
print "Too high"
 
elif guess < number :
print "Too low"
 
print "Just right"
</pre>
 
Sample run:
 
<pre>
Guess a number:100
Too high
Guess a number:50
Too low
Guess a number:75
Too low
Guess a number:87
Too high
Guess a number:81
Too high
Guess a number:78
Just right
</pre>
 
even.py
 
<pre>
#Asks for a number.
#Prints if it is even or odd
 
number = input("Tell me a number: ")
if number % 2 == 0:
print number,"is even."
elif number % 2 == 1:
print number,"is odd."
else:
print number,"is very strange."
</pre>
 
Sample runs.
 
<pre>
Tell me a number: 3
3 is odd.
 
Tell me a number: 2
2 is even.
 
Tell me a number: 3.14159
3.14159 is very strange.
</pre>
 
average1.py
 
</pre>
#keeps asking for numbers until 0 is entered.
#Prints the average value.
 
count = 0
sum = 0.0
number = 1 #set this to something that will not exit
# the while loop immediatly.
 
print "Enter 0 to exit the loop"
 
while number != 0:
number = input("Enter a number:")
count = count + 1
sum = sum + number
 
count = count - 1 #take off one for the last number
print "The average was:",sum/count
</pre>
 
Sample runs
 
<pre>
Enter 0 to exit the loop
Enter a number:3
Enter a number:5
Enter a number:0
The average was: 4.0
 
Enter 0 to exit the loop
Enter a number:1
Enter a number:4
Enter a number:3
Enter a number:0
The average was: 2.66666666667
</pre>
 
average2.py
 
<pre>
#keeps asking for numbers until count have been entered.
#Prints the average value.
 
sum = 0.0
 
print "This program will take several numbers than average them"
count = input("How many numbers would you like to sum:")
current_count = 0
 
while current_count < count:
current_count = current_count + 1
print "Number ",current_count
number = input("Enter a number:")
sum = sum + number
 
print "The average was:",sum/count
 
<pre>
Sample runs
 
This program will take several numbers than average them
How many numbers would you like to sum:2
Number 1
Enter a number:3
Number 2
Enter a number:5
The average was: 4.0
 
This program will take several numbers than average them
How many numbers would you like to sum:3
Number 1
Enter a number:1
Number 2
Enter a number:4
Number 3
Enter a number:3
The average was: 2.66666666667
</pre>