בי מאסטר (Bmaster)מאגר שאלות בגרותשאלות נפוצותמדריכיםארכיון בגרויות
תפריט

חומרי לימוד

מאגר שאלות בגרותשאלות נפוצותמדריכיםארכיון בגרויות
חזרה למאגר2024 קיץ מועד א

עדכון מערך סיסמאות

שאלה קודמתשאלה הבאה
שאלה 2יסודות2024 קיץ מועד א

עדכון מערך סיסמאות

"מערך סיסמאות" במערכת ממוחשבת של בנק מסוים הוא מערך מטיפוס שלם בגודל 10 שבו הבנק שומר את עשר הסיסמאות האחרונות של הלקוח (כדי לוודא שהלקוח לא יבחר אותן שוב). הסיסמאות נשמרות לפי הסדר מן החדשה ביותר לישנה ביותר. הסיסמה החדשה ביותר (העדכנית) נמצאת בתא 0 והסיסמה הישנה ביותר נמצאת בתא האחרון במערך. כאשר מתקבלת סיסמה חדשה, הסיסמה הישנה ביותר (הסיסמה שבתא האחרון במערך) נמחקת מן המערך, שאר הסיסמאות זזות ימינה כל אחת לתא שלידה, והסיסמה החדשה מופיעה בתא הראשון (אינדקס 0).

משימות

rootמשימה rootcode

כתבו פעולה בוליאנית חיצונית ששמה getPass בשפת Java או GetPass בשפת C#, המקבלת מערך סיסמאות מלא – arr, וסיסמה – password, מטיפוס שלם. אם הסיסמה שהתקבלה היא חדשה (כלומר אינה זהה לשום סיסמה שמופיעה במערך), הפעולה תוסיף אותה למערך arr בתא 0 (לאחר הזזת שאר הסיסמאות תא אחד ימינה) ותחזיר true. אחרת, מערך הסיסמאות יישאר ללא שינוי ויוחזר false.

דוגמה: עבור המערך arr שלפניכם ו־300 = password, המערך יישאר ללא שינוי והפעולה תחזיר false

0123456789
arr12231342453001111017779001951234

הסבר: הסיסמה 300 כבר מופיעה במערך arr, באינדקס 3.

דוגמה נוספת: עבור אותו המערך ו־8888 = password, הפעולה תחזיר true, והמערך ייראה כך בתום הפעולה:

0123456789
arr88881223134245300111101777900195

הסבר: הסיסמה 8888 אינה אחת הסיסמאות שכבר מופיעות במערך.

שאלה 2יסודות2024 קיץ מועד א

עדכון מערך סיסמאות

"מערך סיסמאות" במערכת ממוחשבת של בנק מסוים הוא מערך מטיפוס שלם בגודל 10 שבו הבנק שומר את עשר הסיסמאות האחרונות של הלקוח (כדי לוודא שהלקוח לא יבחר אותן שוב). הסיסמאות נשמרות לפי הסדר מן החדשה ביותר לישנה ביותר. הסיסמה החדשה ביותר (העדכנית) נמצאת בתא 0 והסיסמה הישנה ביותר נמצאת בתא האחרון במערך. כאשר מתקבלת סיסמה חדשה, הסיסמה הישנה ביותר (הסיסמה שבתא האחרון במערך) נמחקת מן המערך, שאר הסיסמאות זזות ימינה כל אחת לתא שלידה, והסיסמה החדשה מופיעה בתא הראשון (אינדקס 0).

משימות

rootמשימה rootcode

כתבו פעולה בוליאנית חיצונית ששמה getPass בשפת Java או GetPass בשפת C#, המקבלת מערך סיסמאות מלא – arr, וסיסמה – password, מטיפוס שלם. אם הסיסמה שהתקבלה היא חדשה (כלומר אינה זהה לשום סיסמה שמופיעה במערך), הפעולה תוסיף אותה למערך arr בתא 0 (לאחר הזזת שאר הסיסמאות תא אחד ימינה) ותחזיר true. אחרת, מערך הסיסמאות יישאר ללא שינוי ויוחזר false.

דוגמה: עבור המערך arr שלפניכם ו־300 = password, המערך יישאר ללא שינוי והפעולה תחזיר false

0123456789
arr12231342453001111017779001951234

הסבר: הסיסמה 300 כבר מופיעה במערך arr, באינדקס 3.

דוגמה נוספת: עבור אותו המערך ו־8888 = password, הפעולה תחזיר true, והמערך ייראה כך בתום הפעולה:

0123456789
arr88881223134245300111101777900195

הסבר: הסיסמה 8888 אינה אחת הסיסמאות שכבר מופיעות במערך.