-
Notifications
You must be signed in to change notification settings - Fork 0
/
f02.py
56 lines (49 loc) · 2.06 KB
/
f02.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
'''
MODUL F02-REGISTER
Spesifikasi: Admin dapat mendaftarkan pengguna baru
I.S. : input nama, username, password
F.S. : pengguna terdaftar sebagai user (jika username belum pernah terpakai)
atau tidak terdaftar sebagai user (jika username sudah terpakai)
Desainer dan coder : 16521172
'''
# KAMUS LOKAL
# FUNGSI DAN PROSEDUR
# common.iterLength(iterable: string or array) -> integer
# VARIABEL
# nama, username, password : string
# i : int
# ALGORITMA
# import modul yang diperlukan
import f_common as common
def validasiRegis(strings):
# Spesifikasi : validasi input string yang terbatas alphabet, numerik, underscore, dan strip
# KAMUS LOKAL
# nama, username, password : string
# i : int
# ALGORITMA
length = common.iterLength(strings)
for i in range(length):
x = ord(strings[i])
if not ((x >= ord('a') and x <= ord('z')) or (x >= ord('A') and x<= ord('Z')) or (x>=ord('0') and x<=ord('9')) or x == ord('_') or x == ord('-')):
return False
return True
# realisasi fungsi
def register (user):
# input nama, username, dan password
nama = input("Masukkan nama: ")
username = input("Masukkan username: ")
password = input("Masukkan password: ")
# cek apakah username terpakai
if nama != '' and username!= '' and password!='' and validasiRegis(username):
for i in range(common.iterLength(user)):
if username == user[i][1]:
# username sudah terpakai
print("Username " + username + " sudah terpakai, silakan menggunakan username lain.")
break
elif i == (common.iterLength(user)-1):
# username belum terpakai
print("Username " + username + " telah berhasil register ke dalam " + '"%s"' % "Binomo" + ".")
user += [[str(common.iterLength(user)),username,nama,password,'User','0']] # menambahkan data user baru ke array user
else:
print("Masukan tidak valid.")
return user