המערך. אלמנטים של המערך. סכום של אלמנטים מערך, מספר
תכנות הוא תהליך ארוך ויצירתי. זה קשה מספיק כדי ללמוד משהו בתחום זה אם אין לך שום יכולת להבין את העקרונות שבהם תוכניות ויישומים צריך להיבנות. היום נדבר על המערך, על מערך האלמנטים ועל הפעולות הפשוטות ביותר איתם.
הגדרה
לפני עבודה עם רכיב זה של הסביבהתכנות, אנחנו צריכים להבין מה אנחנו מתמודדים. מורים באוניברסיטאות יכולים לדחוף אותך בהגדרות עצומות ולדרוש ממך לדחוס אותם, אבל זה לא משנה, עבור מתכנת אמיתי חשוב להבין את המהות עצמה, ולא להיות מסוגל להסביר את זה לאחרים. מהו מערך? אלמנטים של המערך כולם יחד ומרכיבים את האובייקט. במילים אחרות, זהו סט, שולחן, שורה של ערכים שונים. יחד הם מהווים רשימה ממוספרת של אלמנטים. המערך נראה כך:
- M (i), כאשר M הוא המערך עצמו, שמו. אני הוא מספר האלמנט של המערך. יחד אלה שני מספרים ניתן לקרוא את אלמנט i- של המערך מ '.
בשפות תכנות שונותניתן להקצות ערכים לסוגים שונים. לדוגמה, בפסקל, המספור יכול להתרחש רק בספרות והמשתנה אני יכול להיות רק מספר שלם. ב- PHP, הכל שונה. יש לי את המפתח שבו אלמנט ניתן למצוא במערך, וזה לא משנה אם המפתח הוא כל מילה - מערך ("בר"). במקרה זה, האלמנטים של המערך יכול להיות מכל סוג שהוא.
מחזורים
מושג זה שימושי לנו כאשר שוקליםכמה פעולות עם מערכים. מחזורים הם ביטויים מותנים המאפשרים לך לחזור על אותה פעולה שוב ושוב עד שתנאי החזרה יתקיים. ישנם שני סוגים של מחזורים.
- "עדיין לא." במקרה זה, גוף המעגל יחזור על עצמו עד להשלמת התנאי הסופי. כלומר, הדלפק יהיה הראשון לשנות, ואז החישובים יתקיים, ורק אז הסיום יסיים.
- "ביי". עם אפשרות זו קצת שונה. ראשית, מצב הביצוע נבדק, ולאחר מכן תוכנית לולאה מתבצע, ורק אז הדלפק משתנה.
בעיקרון, שתי הגרסאות הן שוות, במקרה שלנו זה לא משנה איזה מהם להשתמש, אבל לכל אחד יש שיטה משלו.
תוספת
במקרים מסוימים, המתכנת צריךלברר מה הסכום של אלמנטים מערך. משימה זו אומרת שאנחנו צריכים להוסיף את כל האלמנטים של המערך. מחזורי לעזור לנו עם זה. בדוגמה זו, לא נתמקד בשפת תכנות ספציפית ורק שורה אחר שורה כדי לתאר את הקו המכיל.
- להכריז על המשתנים. אנחנו צריכים להכריז על מערך "M", הדלפק של מספר האלמנט של המערך i, משתנה המציין את מספר האלמנטים של המערך k, וכן את המשתנה "R", שיציג את תוצאת הפעולה.
- הזן את מספר האלמנטים של המערך "k" בכל דרך שהיא.
- הזן את האלמנטים של המערך. אתה יכול לארגן את זה באמצעות סדרה של תיבות שיח עם המשתמש או פשוט להקצות ערכים לכל בנפרד.
- הקצאה i = 1, R = 0.
- עכשיו הכי קשה. אנחנו צריכים לארגן מחזור. לשם כך, עליך לבחור תחילה את הסוג שלו. להלן דוגמה למחזור עבור אלמנטים סופרים. לדוגמה, השתמשנו שפת התכנות - פסקל.
לחזור
R = R + M [i];
i = i + 1;
עד i> k
מה אנחנו רואים? ראשית, הלולאה נפתחת עם הפקודה "חזור". לאחר מכן, לערך הקודם של המשתנה, כלומר סך כל האלמנטים של המערך, אנו מוסיפים את האלמנט הבא של המערך. אנו מגדילים את מונה (מספר המערך). הבא, עם הפקודה "עד", אנו בודקים אם הדלפק לולאה יצא המערך. אחרי הכל, אם יש לנו רק 5 אלמנטים (k = 5), אז הוספת M [6] לא הגיוני, זה יהיה ריק.
תנאי
לפני שתמשיך למשימה הבאה עם מערכים, נזכור אופרטורים מותנים. ברוב שפות התכנות, התחביר שלה נראה כך:
אם (מצב) אז (סדרה של פקודות) אחר (פקודות אם התנאי הוא שקר);
התיאור הכללי עשוי להישמע כך: "אם המצב הוא נכון, אז לעשות את הבלוק הראשון של פקודות, אחרת להפוך את השני לחסום." אופרטורים מותנים שימושיים כאשר משווים ערכים שונים וקובעים את "גורלם" הנוסף. יחד עם המחזורים, הם הופכים לכלי רב עוצמה לניתוח מערך הנתונים.
השוואה
מה עוד מאפשר לנו ליצור מערך? אלמנטים של המערך ניתן למיין, בדק כדי לראות אם הם מתאימים לתנאים מסוימים, ולהשוות בין אחד לשני. דוגמה מועדפת נוספת של מורים באוניברסיטה היא למצוא את המרכיב המקסימלי של המערך. לדוגמה, אנו משתמשים בשפת ++ C.
- בלי להיכנס לפרטים, יש צורך להכריז על אותו הדברמשתנים, כמו בדוגמה הקודמת, עם כמה יוצאים מן הכלל. עם סוג אחר של מחזור, תצטרך לרמות קצת. במקרה החדש, "i = 0". למה צריך להסביר את זה.
בעוד (i <= k)
{
i = i + 1; // או ניתן להחליפה ב- i = 1;
אם (R <= M [i])
{
R = M [i]
}
}
כפי שאתה יכול לראות, זה סוג של המחזור הראשון בדיקות, ורק לאחר מכן מתחיל לספור את הסכום. מה בדיוק קורה? ראשית, תוקף האי - השוויון i <= k נבדק, אם כן, אנו הולכים אל הרכיב הראשון במערך M [1] ומשווים אותו עם משתנה הבדיקה "R". אם "R" קטן מאלמנט המערך, הערך של אלמנט זה יוקצה לו. לכן, עד שאנחנו הולכים דרך המערך כולו, יהיה המספר הגדול ביותר.
PHP
כרגע זה אחד ביותרבקש שפות תכנות. זה מוזר, כי ברוב אפילו האוניברסיטות הנודעות ביותר נלמדים אינם שלו אלא את היסודות בנאלי ביותר המאסטר בעמדה לבין תלמיד כיתת ה '. מה זה כל כך שונה משפות אחרות נחשבות על ידינו?
PHP מאפשרת למתכנת לקמפלמגוון צדדי. אלמנטים של המערך בו ניתן בהחלט מכל סוג שהוא. אם באותו פסקל אנחנו צריכים לציין סוג יחיד (לדוגמה, מספרי), אז לא נכתוב שורה עם הטקסט שם, מבלי לשנות את סוג המערך ... אבל אם תשנה את הסוג, הנתונים המספריים בו יהפכו לטקסט בלבד, כך שאנחנו לא יכולים לבצע כל פעולות מתמטיות איתם ללא קוד נוסף וכאב ראש.
ב- PHP, אלמנט מערך הוא עצמאייחידה. המערך משמש אך ורק לנוחות של אחסון מידע וגישה אליו. והעיקר הוא, כי למי רגילים לעבוד עם מערכים על YAPs אחרים, אתה יכול לארגן בדיוק את אותו מרכיב דלפקים. ההתייחסות אלמנטים במערך ב- PHP היא קצת יותר מסובכת מאשר בשפות אחרות, אבל זה שווה את זה.
התוצאה
מה ניתן לומר במסקנה? מערכים הם נתונים רב ממדי חנויות שמאפשרות לך לפעול תוך כדי עבודה עם אותם עם כמויות גדולות של מידע. מאמר זה לא נחשב מערכים רב ממדיים, שכן נושא זה הוא לשיחה נפרדת. לבסוף עצה קטנה. כדי להבין טוב יותר את הנושא של מערכים, לדמיין סדרה של מספרים - הנה הראשון, הנה השני וכן הלאה. זהו המערך. אם אתה צריך כתובת אחד מהם, פשוט לציין את מספר התוכנית. תפיסה זו תהיה מאוד לפשט את החיים בבית הספר. זכור כי זה לא תמיד שווה להקשיב לנאומים abstruse של המורים, עדיף למצוא את הדרך שלך כדי להבין את הנושא.