חזרה: מעבר איטרטיבי על נתונים
חלק מהיחידה יסודות במסלול ה-PHP של Coddy. שיעור 53 מתוך 71.
אתגר
קלקרא שלוש שורות קלט:
- רשימה של מספרים שלמים המופרדים בפסיקים (למשל,
12,5,8,20,3,15,7) - ערך סף מינימלי
- ערך סף מרבי
עבד את המערך כדי למצוא את סכום כל המספרים שנמצאים בטווח (כולל הערך המינימלי והמרבי). תחילה בדוק אם מספר הוא בדיוק פי שניים מערך הסף המרבי, ואם כן, עצור מיד באמצעות break. אחרת, השתמש ב-continue כדי לדלג על מספרים שמחוץ לטווח.
השורה הראשונה נקראת באמצעות explode, ולכן $numbers מכיל מחרוזות, בעוד $min ו-$max הם מספרים שלמים. המר כל איבר באמצעות intval() (או המרה מסוג (int)) לפני שתשווה אותו לערכי הסף או תוסיף אותו לסכום.
הדפס שתי שורות:
- סכום המספרים התקינים שנמצאים בטווח
- מספר המספרים שנוספו לסכום
דוגמה 1:
אם הקלט הוא 5,12,8,20,15,3,10, 5 ו-15, הפלט צריך להיות:
50
5(5 + 12 + 8 + 15 + 10 = 50, חמישה מספרים נמצאים בטווח 5-15)
דוגמה 2:
אם הקלט הוא 2,8,12,20,6,14, 5 ו-10, הפלט צריך להיות:
8
1(העיבוד נעצר ב-20 כי הוא פי שניים מהערך המרבי 10; רק 8 נוסף לפני נקודה זו, ולכן הסכום הוא 8 והספירה היא 1)
דוגמה 3:
אם הקלט הוא 1,2,3,4,5, 10 ו-20, הפלט צריך להיות:
0
0(אין מספרים שנמצאים בטווח 10-20)
נסו בעצמכם
<?php
// קראו את הקלט
$numbers = explode(',', trim(fgets(STDIN)));
$min = intval(trim(fgets(STDIN)));
$max = intval(trim(fgets(STDIN)));
// אתחלו את המשתנים
$sum = 0;
$count = 0;
// TODO: כתבו כאן את הקוד שלכם
// עברו בלולאה על מערך המספרים
// השתמשו ב-'continue' כדי לדלג על מספרים מחוץ לטווח (מ-min עד max, כולל)
// השתמשו ב-'break' אם תיתקלו במספר שערכו בדיוק פי שניים מהגבול העליון
// עקבו אחר הסכום ומספרם של המספרים התקינים
// הציגו את התוצאות
echo $sum . "\n";
echo $count;
?>כל השיעורים ביחידה יסודות
4אופרטורי השוואה ולוגיקה
אופרטורי השוואהשוויון וזהותאופרטורים לוגיים — חלק 1אופרטורים לוגיים — חלק 2סיכום — לוגיקה פשוטה2משתנים וסוגי נתונים
מספריםמחרוזות ומירכאותערכים בוליאנייםכללי מתן שמותסיכום – אתחול משתניםמשתנים ריקיםשרשור מחרוזותקבלת קלט מהמשתמשהמרה לסוגים שונים8לולאות
לולאת forלולאת whileלולאת foreachמעבר בלולאה על מפתחות וערכיםהוראת breakהוראת continueחזרה: מעבר איטרטיבי על נתונים3אופרטורים בסיסיים
אופרטורים אריתמטייםאופרטור מודולואופרטור חזקההשמה משולבתהגדלה והקטנהקדימות אופרטוריםסיכום — חישובים פשוטיםאופרטורים למחרוזותתרגלו בעצמכם: קומפיילר PHP אונליין