Soal:
Buatlah rancangan program dalam bentuk pseudocode dan flowchart untuk memeriksa apakah keyword yang dimasukkan sudah benar sesuai kriteria sebagai berikut:
- Panjang keyword = 15 karakter
- Sebanyak 5 karakter pertama harus terdiri dari angka "0" hingga "9"
- Sebanyak 10 karakter lainnya harus terdiri dari huruf.
Jika keyword yang dimasukkan tidak sesuai kriteria maka akan ditampilkan pesan: "Keyword tidak sesuai"
Penyelesaian:
Rancangan program Check_Keyword
Algoritma deskriptif:
- Input Keyword
- Result = FALSE
- Jika panjang Keyword = 15 maka
- Indeks=1
- Jika Indeks <=5 maka
- Jika Keyword[Indeks] diantara "0" dan "9" maka
- Result = TRUE
- Indeks = Indeks + 1
- Jika Indeks <= 15 maka
- Jika UCASE(Keyword[Indeks]) diantara "A" dan "Z" maka
- Result = TRUE
- Indeks = Indeks + 1
- Jika Result = FALSE maka output "Keyword Salah", jika Result = TRUE maka output "Keyword Benar"
Pembahasan:
- Ketika program dijalankan maka program akan meminta input keyword.
- Program akan men-SET nilai Result = False.
- Program akan menghitung panjang Keyword dengan fungsi len( ). Jika panjang Keyword = 15 karakter maka akan dilakukan Check Keyword per karakter.
- Indeks diberi nilai 1
- Jika Indeks <= 5 maka
- Check Keyword[Indeks] artinya check karakter ke-indeks dari Keyword. Misal Indeks=1 maka karakter ke-1 dari Keyword, jika Indeks=2 maka karakter ke-2 dari Keyword, dst.
- Jika Keyword[Indeks] diantara "0" dan "9" artinya karakter Keyword berupa angka maka
- Nilai Result menjadi True
- dan nilai Indeks ditambah 1
- Jika Indeks <= 15 maka
- Check UCASE(Keyword[Indeks]), UCASE adalah fungsi yang digunakan untuk mengubah karakter atau string menjadi huruf besar.
- Jika UCASE(Keyword[Indeks]) diantara "A" dan "Z" artinya karakter Keyword berupa alphabet maka
- Nilai Result menjadi True
- dan nilai Indeks ditambah 1
- Setelah Check Keyword dijalankan, jika Result = False maka tampilkan "Keyword salah", namun jika Result = True maka tampilkan "Keyword Benar".
Program Python
penulisan program python untuk soal mendeteksi password adalah sebagai berikut:
#program deteksi password
#panjang password 15 karakter
#karakter 1-5 adalah angka
#karakter 6-15 adalah huruf
#variabel psw: string, i: integer, res: boolean
psw=input("Masukkan password: ")
res=True;
if (len(psw)!=15):
res=False
else:
for i in range(5):
if (psw[i]<'0' or psw[i]>'9'):
res=False
break
for i in range(5,15):
if (str.lower(psw[i])<'a' or str.lower(psw[i])>'z'):
res=False
break
if (res==False):
print('password salah')
else:
print('password benar')
Keterangan program:
pada program di atas:
- psw merupakan variabel string, untuk input variabel string tanpa menambahkan jenis variabelnya.
- fungsi len digunakan untuk mengukur panjang string atau jumlah karakter dalam string.
- string dapat merupakan variabel array dari character, sehingga saat mendeteksi tiap huruf digunakan penulisan variabel array, yaitu psw[i]
- fungsi str.lower digunakan untuk mengubah karakter psw[i] menjadi huruf kecil, sehingga mempermudah untuk mendeteksi apakah karakter tersebut adalah huruf atau bukan.
- break digunakan untuk keluar dari loop/ perulangan.
Hasil program:
0 comments:
Post a Comment