הוספת תלמיד חדש
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-PHP של Coddy. שיעור 34 מתוך 68.
אתגר
קלתקבלו שתי קלטים: אובייקט JSON שמייצג את פנקס הציונים הקיים של התלמידים, ופרטים של תלמיד חדש. פנקס הציונים משתמש בשמות התלמידים כמפתחות, ולכל תלמיד יש "id" ומערך "grades". הקלט השני מכיל את נתוני התלמיד החדש בפורמט: name,id (לדוגמה: Diana,104).
קראו את שני הקלטים, המירו את מחרוזת JSON למערך פנקס ציונים, נתחו את פרטי התלמיד החדש, הוסיפו את התלמיד החדש לפנקס הציונים עם מערך ציונים ריק, והדפיסו את פנקס הציונים המעודכן באמצעות print_r().
פורמט הקלט:
- שורה ראשונה: אובייקט JSON שמייצג את פנקס הציונים הקיים (לדוגמה:
{"Alice":{"id":101,"grades":[85,92,78]},"Bob":{"id":102,"grades":[90,88,95]}}) - שורה שנייה: פרטי התלמיד החדש בפורמט
name,id(לדוגמה:Diana,104)
פלט צפוי: מערך פנקס הציונים המעודכן, המוצג באמצעות print_r(), כשהתלמיד החדש נוסף עם מערך ציונים ריק
נסו בעצמכם
<?php
// קראו את קלט ה-JSON של יומן הציונים
$gradebookJson = fgets(STDIN);
$gradebook = (array)json_decode($gradebookJson, true);
// קראו את פרטי התלמיד החדש
$newStudentInfo = trim(fgets(STDIN));
// TODO: כתבו את הקוד שלכם למטה
// נתחו את פרטי התלמיד החדש והוסיפו אותו ליומן הציונים עם מערך ציונים ריק
// הציגו את יומן הציונים המעודכן
print_r($gradebook);
?>כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1פונקציות מתקדמות
פונקציות אנונימיותסגירות ו-'use'פונקציות חץפונקציות callbackשימוש ב-'call_user_func'פונקציות משתנותהעברה באמצעות הפניהפונקציות רקורסיביותסיכום: מגוון פונקציות4מערכים רב־ממדיים
יצירת מערך דו־ממדיגישה לאיברי מערך דו־ממדישינוי איברי מערך דו־ממדימעבר באמצעות לולאות מקוננותמערכים אסוציאטיביים דו־ממדייםסיכום: תרגיל רשת פשוטה2מניפולציות מתקדמות במערכים
הוספה באמצעות 'array_push'הסרה באמצעות 'array_pop'הוספה לתחילת המערך באמצעות 'array_unshift'הסרה מתחילת המערך באמצעות 'array_shift'מיזוג מערכים ממוספריםמיזוג מערכים אסוציאטיבייםחילוץ באמצעות 'array_slice'בדיקת ערכים באמצעות 'in_array'חיפוש מפתחות באמצעות 'array_search'סיכום: תרגיל רשימת השמעה5פנקס ציונים לתלמידים
הגדרת הפרויקט: מבנה הנתוניםהוספת תלמיד חדשהוספת ציון לתלמידחישוב הממוצע של התלמידמציאת התלמיד המצטייןהפקת תעודת ציונים3מיון מערכים
מיון מערכים עם אינדקסים בסדר עולהמיון מערכים עם אינדקסים בסדר יורדמיון מערכים אסוציאטיביים לפי ערךמיון מערכים אסוציאטיביים לפי מפתחמיון בסדר טבעימיון מותאם אישית באמצעות 'usort'סיכום: מיון טבלת מוביליםתרגלו בעצמכם: קומפיילר PHP אונליין