שינוי איברים
חלק מהיחידה יסודות במסלול ה-C++ של Coddy. שיעור 60 מתוך 74.
בנוסף לגישה לאיברים של מערך, אפשר גם לשנות אותם. כדי לשנות איבר מסוים במערך, אפשר להקצות לו ערך חדש באמצעות האינדקס שלו.
הנה דוגמה:
std::string my_array[] = {"apple", "banana", "cherry"};
my_array[1] = "orange";
std::cout << my_array[0] << ", " << my_array[1] << ", " << my_array[2] << std::endl;פלט:
apple, orange, cherrybanana הוחלפה ב־orange
אתגר
קלצרו תוכנית ש:
- מקבלת שלושה קלטים בסדר הזה:
n: מספר האיברים במערךindex: מיקום אינדקס (0 עד n-1)newElement: ערך חדש (מחרוזת)
- לאחר מכן מקבלת
nמחרוזות כדי לאכלס את המערך - משנה את המערך על ידי החלפת האיבר שבמיקום
indexבערךnewElement - לבסוף מדפיסה את כל איברי המערך ששונה, אחד בכל שורה
לדוגמה, עבור הקלט הזה:
3
1
hello
apple
banana
cherryהפלט הוא:
apple
hello
cherryהסבר: יש לנו 3 איברים. אנחנו מחליפים את האיבר באינדקס 1 (banana) ב-"hello".
נסו בעצמכם
#include <iostream>
#include <string>
int main() {
int n;
int index;
std::string newElement;
std::cin >> n;
std::cin >> index;
std::cin.ignore();
std::getline(std::cin, newElement);
std::string arr[n];
// השתמשו ב-n, ב-index, ב-arr וב-newElement כדי לפתור את הבעיה
// אפשר גם להכריז על משתנים נוספים לפי הצורך
for (int i = 0; i < n; i++) {
// מלאו את arr
// קראו ערך מסוג מחרוזת ואחסנו אותו ב-arr[i]
}
// שנו את arr
// הגדירו את האיבר במיקום 'index' ל-'newElement'
// הדפיסו את arr
// עברו על המערך והדפיסו כל איבר
return 0;
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוהגדלה/הקטנההגדלה/הקטנה לאחר הפעולהקיצורים אריתמטייםאופרטורי השוואההשוואת מחרוזותתרגלו בעצמכם: קומפיילר C++ אונליין