לא ענו פה לשאלה שהוצגה בהתחלה - איך מפונקציה שמחזירה ערך בוליאני אני יכול לדעת מה סיבת הכשלון? כי אם הכישלון נובע מיוזר לא קיים אני מפסיק את התוכנית, ואם זה מסיסמא לא נכונה אני נותן לו עוד צ’אנסים. אבל ערך ההחזרה לא מלמד אותי את זה.
כיוון שאני חייב לפצל ולהבחין בין המקרים, במה שאני אגיש בסוף הפונקציה authenticate תחזיר אמת או שקר, אבל היא לא זאת שתדפיס את “המשתמש לא נמצא”. את זה הפוקנציה העוטפת תדפיס
OrelHandler
מתנצל, יצאתי רק מבולבל מכל התגובות פה. מישהו יכול לסכם בקצרה מה הולך כאן? עד עכשיו כל התרגילים עברו לי בצורה חלקה, אבל הניסוח של התרגיל הזה פשוט לא מובן.
aviadamar
הסיכום הוא שהפונקציה authenticate צריכה לבדוק האם ישנה התחברות מוצלחת
מחזירה אמת עם כן ושקר אם לא.
היא צריכה להיות מוכלת בתוך פונקציה כללית יותר אשר מנהלת את כל מערך הכניסה
למערכת הבנק ולא היא בעצמה מערכת הכניסה לבנק.
aviadamar
הפונקציה authenticate צריכה לבדוק אם יש התחברות מוצלחת לבנק או לא
לא על פי איזה פרמטר.
לבדוק האם זה על פי הסיסמה או השם משתמש זה כבר אחריות
של הקוד שלך לבדוק (בעוד פונקציה, או מחוץ לפונקציה, או בכל דרך שאתה רואה לנכון)
OrelHandler
האם אני יכול להניח שלא יעשה ניסיון התחברות של משתמש שני בזמן שהמשתמש ראשון עוד לא סיים את שלוש הניסיונות שלו?
aviadamar
כן. בגדול אני חושב שנכון שהפוקנציה תתמודד עם משתמש אחד בכל פעם.
אני אישית עשיתי עבור נסיון כניסה “אחד” כלומר עבור משתמש אחד, אם מצליח מעולה אם לא הוא נמחק וזהו.
בעתיד אם ארצה כביכול אוכל לעשות מערכת כניסות אינסופית שתמיד תאפשר לך להימחק ולהירשם
אבל היא גם תצריך אפשרות “לצאת” באופן כללי מהממשק. אבל לא נראה לי שלזה מכוונים פה.
ruty3017
אז בעצם כל הפלטים של הפונקציה authenticate שנתנו במחברת לא נכונות?
כי היא צריכה להחזיר או TRUE אם הצליח להתחבר וFALSE אם לא הצליח
בעצם הפלטים שיש פה זה של כל הקוד שאכתוב (עם עוד פונקציות), הבנתי נכון ?
Felixmn
מדויק ביותר, זו הכוונה של החידוד מעלה של איתמר
2 לייקים
ruty3017
אני לא מצליחה להבין איך המשתמש מכניס שם משתמש וסיסמא חדשה במידה וטעה.
באמצעות קריאה לפונקציה או בקבלת קלט של הסיסמא ושם המשתמש מהמשתמש?
ובגלל שהפונקציה authenticate מחזירה רק TRUE או FALSE אם הצליח להתחבר או לא
היא קצת הופכת לחסרת משמעות בקוד שלי… כאילו שמתי אותה בקוד אבל היא לא באמת נחוצה…
האם חייב בכל זאת להגיש אותה ? או שאני מפספסת משהו ?
ruty3017
בנוסף בעת מחיקת שם המשתמש מהקובץ סיסמאות.
לא למדנו איך מוצאים איפה מילה שאנחנו מחפשים נמצאת בקובץ.
האם להוציא את התוכן של הקובץ לרשימה (שבה כל תא הוא שם משתמש, סיסמא, שם משתמש, סיסמא) למשל ולקבל את האינדקס שבה המילה מופיעה זה שווה ערך למיקום של המילה בקובץ ?
Yam
אני אמקד אותך: את צריכה להכניס שם משתמש וסיסמה חדשים כל עוד הקלט לא היה נכון.
אילו מבנים שאת מכירה יודעים לקחת True/False ובהתאם לזה לבצע פעולה?
אם זה יכול לעזור לך למחוק את השורה אז כל תעלול כשר
2 לייקים
imimouni
חסכת לי את השאלה! מזל שאפשר לאפס
כבר התחלתי לחשוב איך לעזאזל אני אשמור כמה ניסיונות כל משתמש כבר עשה
zoharya
לפי מה שהבנתי מניסוח ההוראות בתרגיל, בקוד שכתבתי- אם הקלט לא היה נכון (אחרי שאימת את שם המשתמש), המערכת מבקשת להכניס רק סיסמא עוד פעמיים, ולא שוב את השם משתמש (כך שאי אפשר להחליף שם משתמש באמצע). האם זה בסדר או שאני צריכה לשנות את זה לכך שיכניס בכל ניסיון גם שם משתמש מחדש?
תודה!
itamaraviv
זה בסדר, זה לא העיקר בתרגיל ולא נתעקש על זה
3 לייקים
adi1
היי,
בחלק של מערכת הזדהות- לא הבנתי האם כאשר כתוב בתרגיל שהלקוח יזין שם משתמש וסיסמה, הדבר נעשה ע"י המשתמש ב input ורק לאחר מכן מתבצעת קריאה לפונקציה?
או האם הכוונה היא קריאה לפונקציה בלבד?
אם הכוונה ע"י קריאה לפונקצייה בלבד כיצד ניתן לשמור את שם המשתמש אשר נמצא בקריאה לפונקצייה על מנת לוודא שלא נעשה לשם משתמש מסויים 3 קריאות?
itamaraviv
קראי את ההודעות בשרשור ואם עדיין אין לך תשובה תכתבי שוב.
adi1
עברתי על כל השרשור ועל שרשורים אחרים בנושא לפני שכתבתי את השאלה ועדיין לא הצלחתי להבין.
אשמח להסבר נוסף.
itamaraviv
הכוונה היא לקלוט דרך input ואז להשתמש במידע הזה כדי לקרוא לפונקציה, לא חייבת להיות רק קריאה לפונקציה, אפשר שיהיה קוד נוסף שיאפשר את מה שמתואר בתרגיל
איתמר
לייק 1
orpazf
אם את פותחת קובץ במצב “w” כל מה שבתוכו נמחק אוטומטית. ייתכן שעשית זאת בטעות?
timnar312
אני חושבת שאת התגובה הזו צריך להדגיש .
היא מסבירה הכל.
עברתי על כל הפורום עד שקראתי פה שצריך לעשות input
)לשם כך נכנסתי לחפש תשובה כי לא היה לי ברור(.