השוואת ערכים
חלק מהיחידה המעגלים הראשונים במסלול ה-Arduino של Coddy. שיעור 20 מתוך 22.
תנאי משווה בין שני ערכים. ל-C++ יש שש דרכים:
==שווה ל־!=לא שווה ל־<קטן מ־,>גדול מ־<=קטן או שווה ל־,>=גדול או שווה ל־
טעות נפוצה היא לכתוב = כשמתכוונים ל־==. = אחד מאחסן ערך; שניים משווים.
if (count == 5) { ... } // האם count שווה ל-5?
if (count = 5) { ... } // שומר את 5 ב-count!השורה השנייה מתקמפלת, והיא מלכודת: היא מכניסה 5 לתוך count, ומכיוון ש־5 אינו 0, הלוח מתייחס אליו כאל true. הסוגריים המסולסלים מופעלים בכל פעם, ו־count מתאפס ל־5 בכל סיבוב.
אתגר
קלתוכנית ההתחלה סופרת כלפי מעלה כל 300 ms ומדפיסה כל מספר. גרום ל־LED בפין 13 להידלק עבור מספר אחד בלבד:
- אם
countשווה ל־5, הדלק את ה־LED - אחרת, כבה אותו
ה־LED אמור להידלק כשהצג מראה 5, ולהישאר כבוי עבור כל מספר אחר. לחץ על Run, ואז על Check.
נסו בעצמכם
int count = 0;
void setup() {
pinMode(13, OUTPUT);
Serial.begin(9600);
}
void loop() {
count = count + 1;
Serial.println(count);
// ה-LED דולק כאשר count הוא 5, וכבוי אחרת
delay(300);
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה המעגלים הראשונים
תרגלו בעצמכם: Arduino אונליין