שלום.
אני בונה תוכנה לבקר Ardunio שברשותי. בשפת תכנות הנקראת Processing המטרה הסופית היא להריץ מטריצה של 8*8 בשני צבעים שונים -> 128 לדים סה"כ.
התוכנה היא בסיסית ביותר. בבסיסה מערך של מטריצות. (מערך תלת מימדי).
התוכנה מריצה את המטריצות אחת אחרי השנייה ומדפיסה למטריצת הלדים את הפלט.
0 - כבוי
1 - לד כחול
2 - לד ירוק
3 - כחול+ירוק.
התוכנה שמדפיסה את תוכן המטריצה כבר כתובה (4 לולאות מקוננות).
הבעייה שלי כעת היא אתחול המטריצה הבסיסית. אני לא מכיר דרך נוספת לאתחל ערכים של מטריצה חוץ מהכנסת ערך לתא ספציפי. (ואני בטוח שיש דרך אחרת, פשוט לא השתמשתי בה אף פעם).
אני צריך לאתחל את המטריצה בצורה "יפה" כלומר לצייר אוסף של אפסים ואחדים בקוד עצמו במקום לכתוב 64 שורות קוד שכל אחת מהן תייצג לד אחר.
איך ניתן לעשות דבר כזה ? (אני מקווה שאני מובן).
בעתיד, אחרי שהשיטה הבסיסית הזו תעבוד לי, אני אתכנת עוד תוכנה קטנה שתקלוט מחרוזת ותמיר אותה למערך של מטריצות כך שאם מריצים את המטריצות אחת אחרי השנייה מתקבל טקסט "נע" כמו שיש בנתב"ג למשלXD
בתגובה להודעה מספר 4 שנכתבה על ידי rlsf שמתחילה ב "מטריצה היא לא מערך תלת מימדי..."
אני יודע.
אם היית קורא שוב, היית מבין שכל המטרה שלי היא ליצור מערך של מטריצות.
המטרה הסופית היא לצייר אנימציה על מטריצת הלדים.
כל מטריצה במערך היא בעלת 8*8 תאים. ויש N מטריצות באנימציה.
ובגלל זה עשיתי מערך תלת מימדי שיאכסן את כל המטריצות. כך שהתא הראשון בו הוא N (מספר המטריצות)
בתגובה להודעה מספר 5 שנכתבה על ידי fcf שמתחילה ב "אני יודע.
אם היית קורא שוב,..."
הבעיה היא ש C לא "מבינה" שמערך דו מימדי יכול להכנס לתוך מערך תלת מימדי, מבחינתה שניהם מערכים רב מימדיים, אבל היא לא "רואה" שהאחד יכול להיות מוכל בתא בודד של השני.
אם יש לך סט מטריצות קבוע שאתה רוצה לאתחל אתה יכול לשמור אותו בסדרת משתנים בודדים, ולבצע את לולאת האתחול שלך מהם.
לחלופין אם אתה עובד ב C++ יש די הרבה ספריות שמאפשרות טיפול במטריצות, אתה יכול לנסות להשתמש בהן.