Pengendalian Flag dalam Python

Flag - ialah pembolehubah khas, yang hanya boleh mengambil dua nilai: True atau False. Dengan menggunakan flag, kita boleh menyelesaikan masalah yang memeriksa ketiadaan sesuatu: contohnya, kita boleh memeriksa sama ada tiada elemen dengan nilai tertentu dalam senarai.

Mari selesaikan masalah berikut: diberi senarai nombor, perlu disemak sama ada semua elemen di dalamnya adalah positif. Untuk itu, kita tetapkan pembolehubah khas flag, yang akan benar sebelum gelung bermula. Dan jika menemui nombor negatif dalam gelung, tukar nilainya kepada False. Untuk mengetahui hasil pemeriksaan, paparkan pembolehubah flag selepas gelung ke konsol:

pythonlst = [1, 2, 3, 4, 5]
flag = True

for el in lst:
  if el < 0:
    flag = False
    
print(flag) # akan memaparkan True, kerana semua nombor adalah positif

Amalan yang baik ialah menamakan pembolehubah flag dengan nama yang mencerminkan syarat yang ditetapkan. Mari namakan semula flag kepada isAllPositive. Dan untuk lebih jelas, tukar satu nombor dalam senarai kepada negatif:

pythonlst = [1, 2, 3, -4, 5]
isAllPositive = True

for el in lst:
  if el < 0:
    isAllPositive = False
    
print(isAllPositive) # akan memaparkan False, kerana terdapat nombor negatif

Jika terdapat banyak nilai dalam senarai yang digelung dan perlu menghentikan gelung selepas mengesan nombor negatif pertama, maka gunakan arahan break:

pythonfor el in lst:
  if el < 0:
    isAllPositive = False
    break

Semasa mengendalikan flag, untuk mengetahui hasil pelaksanaan gelung, kita boleh memaparkan bukan nilai flag, tetapi mesej sewenang-wenangnya dengan menggunakan if tambahan.

Mari tulis semula contoh sebelumnya. Jika semua elemen adalah positif, maka paparkan '+++', jika tidak - '---':

pythonfor el in lst:
  if el < 0:
    isAllPositive = False
    break

if isAllPositive:
  print('+++')
else:
  print('---') # akan memaparkan '---'
Задание 1

Diberi satu senarai. Periksa sama ada semua elemennya adalah nombor positif.

Задание 2

Diberi satu integer. Periksa sama ada ia adalah nombor perdana, iaitu hanya boleh dibahagi dengan satu dan dengan dirinya sendiri.