הבדלים בין גרסאות בדף "שיחה:88-151 שימושי מחשב תשעב סמסטר אביב/שאלות ותשובות"

מתוך Math-Wiki
קפיצה אל: ניווט, חיפוש
(החלפת הדף בתוכן "{{הוראות דף שיחה}} =ארכיון= '''[[88-151_שימושי_מחשב_במתמטיקה_תשעב_סמסטר_ב_שאלות_ותשובות_ארכיון| אר...")
שורה 6: שורה 6:
  
 
=שאלות=
 
=שאלות=
 
מה אמורים להגיש בשיעורי בית?
 
 
: את הקוד ואת תוצאת הביצוע. אם נדרש הסבר (למשל בשאלה האחרונה), אז גם את ההסבר.--[[משתמש:Grisha|Grisha]] 22:40, 22 במרץ 2012 (IST)
 
 
בשיעורי בית בתרגיל 3 כתוב "עשה את אותו חישוב אבל עם format long)
 
יש צורך לעשות את כל החישובים מחדש עם format long, או שמספיק הסבר מה זה עושה וכמה דוגמאות?
 
 
: כתוב שיש לעשות את זה על 3 סעיפים אחרונים בלבד. כן, צריך לעשות את כל שלושת הסעיפים ולא דוגמאות. --[[משתמש:Grisha|Grisha]] 11:31, 23 במרץ 2012 (IST)
 
 
== תרגיל 1 שאלה 4 ==
 
 
האם בהדפסת שורשי המשוואה אני צריך להדפיס גם את הכותרת הנלוות- "אלו שורשי המשוואה בעלת המקדמים הנתונים?" או משהו בסגנון?
 
או שאין צורך ועלי להדפיס רק את שורשי המשוואה ללא שום כותרת נלוות?
 
 
: עדיף שתהיה איזו כותרת שמסבירה מה עשית ומה קיבלת ולא אוסף המספרים ללא הסבר. --[[משתמש:Grisha|Grisha]] 11:31, 23 במרץ 2012 (IST)
 
 
מה הכוונה בתרגיל 4 לתוצאות "נומריות" בלבד? הרי יש אפשרות לקבל ערך אחר מהמשוואה הזו?
 
 
: שלא יהיה כתוב משהו בסגנון:
 
: <math>=x_1</math>
 
: <math>2.05</math>
 
: אלא רק הערך המספרי. --[[משתמש:Grisha|Grisha]] 13:27, 23 במרץ 2012 (IST)
 
 
== איך אני פותר משוואות במתלאב ==
 
 
נגיד AX=B או סתם פולינומים
 
: נלמד את זה בהמשך הקורס. כרגע יש לפתור ללא שימוש בפונקציות מובנות. --[[משתמש:Grisha|Grisha]] 13:28, 23 במרץ 2012 (IST)
 
 
== תרגיל 1 שאלה 1 סעיף 13 ==
 
 
<ltr>exp[ln...]</ltr>
 
 
האם הכוונה למספר <math>e</math> כפול הסוגריים או בחזקת הסוגריים?
 
 
: פקודת <math>(...)exp</math> מבצעת העלאת e בחזקה. --[[משתמש:Grisha|Grisha]] 17:03, 23 במרץ 2012 (IST)
 
 
== תרגיל 1 שאלה 2 ==
 
 
כשמבקשים להשתמש במשתנים במקום בערכים מספריים. ההאם הכוונה להשתמש במשתנים גם עבור <math>e</math>
 
<math>ln3</math> <math>\pi</math>?
 
 
: כתוב - ערכים מספריים. מה שאתה כותב זה כבר הפעלה של שתי פונקציות. --[[משתמש:Grisha|Grisha]] 17:05, 23 במרץ 2012 (IST)
 
 
== בהגשת הש"ב ==
 
 
צריך להדפיס קובץ סקריפט ואת הפלט בחלון הפקודות, או שאפשר פשוט להדפיס הכל בחלון הפקודות?
 
 
: גם קוד וגם פלט. --[[משתמש:Grisha|Grisha]] 22:33, 24 במרץ 2012 (IST)
 
::אבל אפשר להדפיס אותם בנפרד?
 
::: כן, רק שיהיה ברור לאיזו שאלה מתייחסת התשובה. --[[משתמש:Grisha|Grisha]] 08:22, 26 במרץ 2012 (IST)
 
 
== הגשת שיעורי בית ==
 
 
איך מגישים שיעורי בית האם אני מעתיק את הקוד לword ומדפיס?
 
: אפשר להדפיס מתוך matlab או דרך כל תוכנה אחרת. יש להגיש הן הקוד, הן התוצאות. --[[משתמש:Grisha|Grisha]] 14:36, 26 במרץ 2012 (IST)
 
 
== הגשת הקובץ ==
 
 
הפתרון יוצא ארוך מאד, 8-9 עמודים; אפשר בתרגילים הבאים לשלוח את הקובץ, במקום להדפיס?
 
: לא. אפשר לנסות לצמצם את אורך הפתרון (למחוק שורות ריקות וכו') ולהדפיס משני צידי הדף. --[[משתמש:Grisha|Grisha]] 07:15, 27 במרץ 2012 (IST)
 
 
== אני לא מצליח להפעיל את הvnc. ==
 
 
אחרי שאני מכניס את הסיסמה בvnc (שלב 8) מופיע השגיאה "read: connection reset by peer (10054)".
 
הצלחתי להיכנס לmatlab בעזרת putty לבד אבל פחות נוח לעבוד ככה.
 
 
: אם ביצעת את כל השלבים שהיו בהסבר ואתה לא מצליח להתחבר, אני ממליץ שתפנה לאנשי מעבדה. --[[משתמש:Grisha|Grisha]] 16:49, 28 במרץ 2012 (IST)
 
 
לי הייתה אותה בעייה.... אבל מתברר שזה היה תלוי בגרסה של vnc שהורדתי. תוריד/י את הגרסה לפני אחרונה שבקישור (VNC Free Edition Viewer for Windows)
 
 
זה לא עוזר זה אומר שהסיסמא עדיין לא נכונה.
 
ובנוסף איך מתחברים לmatlab דרך המחשבים באוניברסיטה?
 
: אם המחשבים במעבדה, אז להתחבר למחשב. להיכנס ל- Start -> Applications -> planet. לכתוב את השם ואת הסיסמא ולאחר פעולות אלה להקליד matlab.
 
: מכל מחשב אחר שאינו במעבדה, יש להתחבר לפי אותו האלגוריתם כמו להתחבר מהבית. בכל בעיה עם סיסמא או חיבור מרחוק אנא תפנה לאנשי המעבדה. --[[משתמש:Grisha|Grisha]] 22:55, 28 במרץ 2012 (IST)
 
 
== תרגיל 2 שאלה 5 ==
 
 
הכוונה שצריך למצוא את המרחק המקסימלי מ-xi ל-yi או בין xi ל-yj כלשהו?
 
ועוד משהו-בתרגיל 1, סעיף ד'ו-ה', צריך להסתכל על x כ-x אחרי שעשינו עליו את סעיף ג', או x המקורי?
 
 
: שאלה 1 - אחרי שנעשה מה שכתוב בסעיף ג'.
 
: שאלה 5 - יש למצוא את המרחק המירבי בין נקודות: <math>(x_i,y_i)</math> ו- <math>(x_j,y_j)</math>. כל נקודה היא נקודה על המישור.
 
: --[[משתמש:Grisha|Grisha]] 11:19, 28 במרץ 2012 (IST)
 
 
== הסבר על mod ו rem ==
 
 
היי, אשמח לקבל הסבר מפורט על שתי הפונקציות האלה וההבדלים בניהם, במיוחד במספרים שליליים.
 
: זאת בדיוק השאלה שעלייך לענות ולתת דוגמאות. כל הפירוט נמצא ב- help של Matlab. --[[משתמש:Grisha|Grisha]] 16:47, 28 במרץ 2012 (IST)
 
 
איפה ישנה אפשרות לראות את המצגות שמועברות בתירגול?
 
: עבור קבוצות תרגול 03, 04, 08 - [http://u.math.biu.ac.il/~osharog/88151/ כאן]. --[[משתמש:Grisha|Grisha]] 18:05, 28 במרץ 2012 (IST)
 
 
האם בתרגיל 1 שאלה 5 מספיק להביר במילים ולתת דוגמא אישית לכל אחת מהפקודות?
 
: כן, זה בדיוק מה שצריך לעשות. --[[משתמש:Grisha|Grisha]] 18:05, 28 במרץ 2012 (IST)
 
 
ובשאלה 2 לא בדיוק הבנתי את הכוונה פשוט להגיד את פנים הסוגררים במשתנים להפעיל עליהם את הפונקוציות?
 
: להחליף את כל הערכים המספריים במשתנים. --[[משתמש:Grisha|Grisha]] 18:05, 28 במרץ 2012 (IST)
 
 
ומה הכוונה בשאלה 4 בבקשה?
 
: למצוא שורשים של פולינום ריבועי לפי הכללים שמפורטים בשאלה. --[[משתמש:Grisha|Grisha]] 18:05, 28 במרץ 2012 (IST)
 
 
== תרגיל ==
 
 
 
איך ואיפה שומרים את התרגיל? תודה
 
: זה לא משנה. ההגשה צריכה להיות על הנייר. יש להגיש גם את הקוד וגם את התשובות. --[[משתמש:Grisha|Grisha]] 21:00, 28 במרץ 2012 (IST)
 
 
אם הבנתי נכון אני אכתוב על הנייר את כל התשובות לתרגיל? מה ההבדל בין קוד לתשובות?
 
: קוד - זה פקודות שאתה כותב. תשובות - זה תוצאה של הפקודות. לא כותבים על הנייר, אלא מריצים את זה ב- Matlab. כלומר, יש להדפיס את הפקודות ואת התוצאות שהתקבלו ולא לכתוב אותם ידנית. --[[משתמש:Grisha|Grisha]] 22:51, 28 במרץ 2012 (IST)
 
 
== תרגיל 2, שאלה 1 ==
 
 
בשאלה 1 סעיפים א' וב', רשום יש "לקבל", האם הכוונה להכניס את התוצאה לתוך וקטור אחר?
 
: כן. --[[משתמש:Grisha|Grisha]] 13:13, 30 במרץ 2012 (IDT)
 
מן הסתם בתחילת התכנית אני אמור לכתוב x= לוקטור שכתוב שם.. בסעיפים ג' ו ד' רשום יש לאפס איברים מסויימים, ואז הוקטור "מתקלקל". האם זה בסדר, שהרי התוצאה תשפיע על סעיף ד'. או שאחרי סעיף ג', צריך שוב להכניס לוקטור x את הוקטור המקורי? ואז לעשות את סעיף ד'?
 
 
: אם לא כתוב לקבל וקטור חדש, יש לעשות את כל הפעולות על הוקטור המקורי. אפילו אם יש מספר פעולות "מקלקלות" את המקור. --[[משתמש:Grisha|Grisha]] 13:13, 30 במרץ 2012 (IDT)
 
 
== שאלה 2 ==
 
 
קבל מטריצה c חדשה הכוונה לכתוב השמה לתוך C, או שזה צריך להיות קלט מהמשתמש עם INPUT?
 
: לא הבנתי את השאלה. --[[משתמש:Grisha|Grisha]] 13:39, 30 במרץ 2012 (IDT)
 
 
בסעיפים 3 ו 4, מה זה איברים מינימאליים ומקסימליים,? בסתם מטריצה יש רק איבר מינימאלי ומקסימאלי אחד..
 
האם הכוונה שאם יש אותו כמה פעמים אז להדפיס את כולם? לכן במטריצה C התשובה תהיה 2 מינימליים (0 ו 0) ו2 מקסימליים ( 8 ו 8) וזה גם הפלט?
 
: התחילת התרגיל כתוב שכל הפעולות שאתם מתכנתים אמורים לעבוד עם כל מטריצה שהיא (גם גודל וגם תוכן). הנתריצה הנתונה היא להמחשה בלבד. לא כתוב להדפיס את כל האיברים המינימליים, כתוב - כמה כאלה יש. כלומר יש להדפיס רק 2 ולא 0, 0. --[[משתמש:Grisha|Grisha]] 13:39, 30 במרץ 2012 (IDT)
 
כן זה יעבוד על כל מטריצה , אבל לצורך התכנית הקוד שלי אמור להדפיס 2 (בלי ערך האיברים עצמם כמובן)?
 
 
דבר אחרון, בכל מקום לכל אורך התרגיל, שרשום יש לקבל זה פשוט השמה או עם INPUT?
 
צריך בכלל להשתמש ב INPUT בתרגיל?
 
: לא, לא צריך להשתמש ב- input. קבל מטריצה חדשה אומר שצריך לבצע איזושהי פעולה על המטריצה הקודמת ולשמור את התוצאה במטריצה החדשה. לדוגמא - C2 = C1.^3. --[[משתמש:Grisha|Grisha]] 13:40, 30 במרץ 2012 (IDT)
 
 
== בשאלה 6 ב אני אמרו כאילו ליצור ==
 
 
תוכנה שתחשב לי בכמה איברים יש את המספר 3? ואיך אני אמור להסביר את התוצאות ב6 א? אני לא לומד הסתברות(תיכוניסט)
 
: לא צריך לדעת הסתברות כדי להסביר את התוצאה. תריץ את התוכנה מספר פעמים ותחשוב על התוצאה. --[[משתמש:Grisha|Grisha]] 13:42, 30 במרץ 2012 (IDT)
 
 
== בהמשך לשאלה 1 ==
 
 
כתבת שהמטריצה היא להמחשה בלבד.. ושהקוד צריך לעבוד על כל מטריצה - זה בסדר. אבל בכל זאת האם אני צריך להכניס את המטריצה לתכנית שלי?
 
כלומר לכתוב c= למטריצה שלך, ו"לעבוד" עליה? כך שיודפסו פלטים למטריצה הזו?
 
או שצריך לכתוב סתם קוד ללא התייחסות למטריצה הנתונה?
 
עוד דבר, האם צריך לפתוח קובץ ובו לרשום את הקוד (כלומר לפתוח FIle->new-> m file) או שצריך לכתוב הכל במסך ה"ראשי"? (ואז יודפסו גם פלטים , זה בסדר?)
 
 
: תכתוב איפה שזה נוח לך. אם הפלט יודפס אחרי התוכנה, יש לכתוב משהו (למשל בעזרת disp) שנוכל להבין לאיזה סעיף מתייחס הפלט. כן, צריך לעבוד עם המטריצות הנתונות, אך יש לבדוק את העבודה על המטריצות בגודל אחר עם תוכן שונה. --[[משתמש:Grisha|Grisha]] 14:57, 30 במרץ 2012 (IDT)
 
 
== משהו לא ברור לי ב שאלה 2 סעיף2 ==
 
 
אמרת שהמטריצה C להמחשה, אבל כתוב להחליף את המספר 4 ב 200.
 
צריך להחליף בכל מקום שיש 4, או פשוט לגשת לאינדקס במטריצה הספציפית C?
 
כלומר אפשר פשוט לכתוב:
 
a = c;
 
a(3,2) = 200
 
?
 
או שהכוונה למשהו אחר?
 
כי אם מדובר על מטריצה כללית לא בטוח שיש 4 במקום הזה
 
 
: לא! אסור לפנות לאינדקס מסוים במטריצה הנתונה. אני חוזר ואומר (וזה גם כתוב בתרגיל עצמו) - קוד שאתם כותבים אמור לעבוד על מטריצה C '''כלשהי'''. למדנו איך משתמשים ב- logical indexing וגם בפקודת find. --[[משתמש:Grisha|Grisha]] 15:17, 30 במרץ 2012 (IDT)
 
 
== שאלה 1 סעיפים 11 - 14 ==
 
 
בסעיף 11 רשום להפוך את המטריצה לוקטור שורה ואז למחוק מהוקטור שורה איברים. לפי מה שהבנתי צריך "לדרוס" את המטריצה C?
 
ואז בסעיף 12 רשום שוב להפוך את C לוקטור שורה, אבל כבר עשיתי את זה בסעיף 11, ודרסתי את C.
 
אחרי זה בסעיפים 13 ו 14 רשום לעשות עוד דברים על המטריצה C, אבל היא כבר לא מטריצה , היא וקטור שורה!
 
ההעלאה בחזקה בסעיף 14 תחזיר וקטור שורה עם אפסים.. ( כי בסעיף 12 מחקתי את האיברים השונים מ 0)
 
זה בסדר כל זה?
 
אפשר במקום אולי לא לדרוס את המטריצה C, אלא בסעיף 11 להפוך את C לוקטור שורה אבל את התוצאה להכניס למשתנה אחר? או שחייבים לדרוס את C עצמה?
 
: זה בדיוק מה שצריך לעשות. או לרשום את הווקטור המתקבל למשתנה אחר, או להדפיס אותה על המסך ללא שמירה בשום מקום. --[[משתמש:Grisha|Grisha]] 17:32, 30 במרץ 2012 (IDT)
 
 
== שאלה 3 ב' מספרים אקראיים ==
 
 
צריך לעשות מטריצת מספרים אקראיים בין 1 ל -1.
 
איך אפשר לעשות? למדנו rand אבל הוא נותן מספרים אקראיים רק בין 0 ל 1
 
: לא לכל דבר יש פונקציה מובנית ב- matlab. --[[משתמש:Grisha|Grisha]] 17:29, 30 במרץ 2012 (IDT)
 
 
== בשאלה 2 13 אני צריך למצוא את האיברים שגדולים מ114 ==
 
 
ולשים אותם בוקטור?
 
: וגם לבדוק מהו גודל של הווקטור. --[[משתמש:Grisha|Grisha]] 20:10, 30 במרץ 2012 (IDT)
 
 
== שמתי לב כי מטלאב מעגל נגיד 0.913=0.9127... ==
 
 
האם עליי להתחשב במספרים אלו ב6 ב? או לא?
 
: אני לא מכיר תופעה כזאת. אתה יכול לשלוח לי דוגמא בה מטלב מעגל מספרים על דעת עצמו? --[[משתמש:Grisha|Grisha]] 00:35, 1 באפריל 2012 (IDT)
 
מטלאב כאילו שומר את הערך המספרי אבל מציג לי אותו אחרי העיגול למשל את המספר הזה 0.162182308193243 הוא כותב לי 0.1622
 
: ראה את התרגול הראשון וגם משמעות הפקודה format. --[[משתמש:Grisha|Grisha]] 14:25, 1 באפריל 2012 (IDT)
 
 
== שאלה 5 ועוד משהו ==
 
 
רק שאני אבין: בשאלה 5 נתונה מטריצה בגודל N*2 כאשר כל שורה מייצגת נקודה? כאשר בעמודה הראשונה ערכי ה X, וערך ה Y בעמודה השנייה?
 
צריך לחשב עם הנוסחה:d= שורש של( (x1-x2)בריבוע + (y1-y2)בריבוע) ) ?
 
 
: כן. --[[משתמש:Grisha|Grisha]] 22:58, 1 באפריל 2012 (IDT)
 
 
או שיש לזה פונקציה מובנית שצריך להשתמש בה?
 
 
: לא. --[[משתמש:Grisha|Grisha]] 22:58, 1 באפריל 2012 (IDT)
 
 
עוד משהו קטן על שאלה 3 סעיף ב: המטריצה הסופית לאחר השרשור יוצאת גדולה, ולכן המטלב "מחלק" לי את זה ומציג חלק מהמטריצה עמודות מסויימות ואז מתחת מציג עוד עמודות. לכן אני מעדיף לא להדפיס את התוצאה הסופית. אלא רק כותב את הקוד ושם בסוף נקודה פסיק;
 
עוד דבר בלי קשר: האם חייבים שיצא פלט לאחר כל תרגיל או שמספיק לכתוב את שורות הקוד? פשוט זה לוקח הרבה מקום בהדפסה..
 
 
: אל תדפיס מטריצות גדולות. תעשה עריכה לפני ההדפסה - תמחק שורות ריקות מיותרות, תסדר כך שזה יתפוס פחות מקום. אנחנו כן רוצים לראות את התוצאות. --[[משתמש:Grisha|Grisha]] 22:58, 1 באפריל 2012 (IDT)
 
 
וגם: האם ניתן להניח שאכן תתקבל מטריצה כזו (N*2) עם הנקודות. ולא תתקבל נגיד, מטריצה גדולה יותר N*3 עם נקודות של 3 קוארדינטות. כי אחרת הפונקציה שלי לא תעבוד, היא בנוייה לעבוד עם מטריצה N*2 ולא יותר. ו- מה קורה כאשר מתקבלת מטריצה עם נקודה אחת בלבד (ואז אי אפשר לחשב מרחק כי אין שתי נקודות), האם ניתן להניח גם שלא תתקבל כזו?
 
 
== שאלה 5 לכתוב פונקציה? ==
 
 
כתוב לכתוב "תכנית כללית" מה זה אומר?
 
אפשר לעשות פונקציה שתקבל כארגומנט את רשימת הנקודות וכפלט תחזיר את המרחק הגדול ביותר?
 
או שצריך ליצור BLANK M FILE ובתוכו לקבל את הנקודות כקלט מהמשתמש?
 
 
: איך שזה נוח לך. העיקר שהתוכנה יודעת לעבוד עם קלטים שונים ללא שינוי קוד. מימוש יכול להיות הן פונקציה הן script. --[[משתמש:Grisha|Grisha]] 23:00, 1 באפריל 2012 (IDT)
 
 
== מותר להשתמש בWHILE ובTRY ב7? ==
 
 
לא הבנתי?
 
: כן, מותר. לא רואה צורך להתשמש ב- try. --[[משתמש:Grisha|Grisha]] 16:15, 2 באפריל 2012 (IDT)
 
 
== שאלה 6 לא ברורה ==
 
 
איך להסביר את התוצאות? הכוונה להסביר למה נבחרו המספרים האקראיים האלו דווקא?
 
זה קשור להתפלגויות וכל מיני כאלו? זה כתוב במצגת?
 
בא' אני אמור פשוט לספור כמה איברים במטריצה בין 0 ל 0.3?
 
 
: לא צריך להסביר למה נבחרו דווקא איברים האלה ולא האחרים. צריך לדעת מה עושה פקודה rand - היא מחזירה איברים אקראיים בין 0 ל- 1, כך שלכל מספר יש אותו הסיכוי להיבחר.
 
: זה קשור ל"התפלגויות וכל מיני כאלו", אבל לא צריך לדעת את ההסתברות כדי להסביר את התוצאה (לא מבקשים הוכחות מתמטיות).
 
: כדי לבדוק נכונות של התוכנה, אני ממליץ להריץ אותה קודם על מטריצות קטנות, כך שאפשר לבדוק את התוצאות ידנית. --[[משתמש:Grisha|Grisha]] 22:16, 2 באפריל 2012 (IDT)
 
 
== שאלה 2 סעיף 13 ==
 
 
כל מספר בנפרד בוקטור שמקבלים צריך להיות גדול מ 114? צריך לקבל וקטור שורה או עמודה? אם ככה אז מן הסתם במקרה הזה הגודל של הוקטור יצא 0 כי אין שום מספר ב C שגדול מ 114..
 
: כל איבר צריך להיות גדול מ- 114. לא משנה שורה או עמודה. התוכנה אמורה לעבוד על '''כל''' וקטור/מטריצה, לאו דווקא זה שנתון בשאלה. יש לבדוק את נכונות הביצוע. --[[משתמש:Grisha|Grisha]] 06:47, 3 באפריל 2012 (IDT)
 
 
== תרגיל 5 ==
 
 
מותר להשתמש בmax
 
: כן. --[[משתמש:Grisha|Grisha]] 13:44, 3 באפריל 2012 (IDT)
 
 
== תרגיל 7 ==
 
 
מותר להשתמש ב inf?
 
: מותר, למרות שאין צורך. --[[משתמש:Grisha|Grisha]] 13:16, 4 באפריל 2012 (IDT)
 
 
== עזרה עם Rand ==
 
 
לא ברור לי עדיין איך הפונקציה עובדת.. לא הבנתי מה זה הההתפלגות האחידה הזו. אפשר איזשהו הסבר/הכוונה? ואולי גם רמז למה אנחנו נדרשים לעשות?
 
: עזרה על פונקציה אפשר למצוא ב- help של מטלב, [http://eecourses.technion.ac.il/matlab/Lectures/Introduction%20to%20Matlab.pdf בספר הזה], במצגות התרגול ועוד. פונקצית rand מחזירה מספרים בין 0 ל-1, כך שלכל מספר יש אותו סיכוי להיבחר. כדי להבין איך עובדים הדברים צריך להתחיל ממטריצות קטנות, להריץ כמה פעמים ולהסתכל על התוצאות. תנסה "לשחק" קצת עם הפקודות עד שלא תפנים איך הן עובדות ואז תעבור לשאלה עצמה. --[[משתמש:Grisha|Grisha]] 22:28, 4 באפריל 2012 (IDT)
 
 
== תרגיל 2 ==
 
 
מותר להשתמש בwhile?
 
: בשאלות 5-7 - כן. בשאלות 1-4 - לא. --[[משתמש:Grisha|Grisha]] 21:49, 5 באפריל 2012 (IDT)
 
 
== שאלה 6 ב ==
 
 
 
איך אני מוצא כמה פעמים מופיע ספרה 3? לא זכור לי שלמנדו איך ניגשים לספרות של מספר..
 
ושאתה אומר 4 ספרות הראשונות אתה מתכוון לספרות שמימין לנקודה העשרונית כן?
 
אשמח לקצת הכוונה! חג שמח!
 
: נכון, לא למדנו פקודה כזאת (אני גם לא בטוח אם קיימת כזאת). אבל אם הכלים שקיבלתם אתם כן יכולים לגשת לכל ספרה במספר. כן, מדובר בספרות עשרוניות בלבד. חג שמח! --[[משתמש:Grisha|Grisha]] 15:57, 6 באפריל 2012 (IDT)
 
 
== תרגיל 2 שאלה 5 ==
 
 
אם אני עושה את התוכנה כתוכנה שמקבלת מטריצת 2*N, מותר לי להניח שהקלט תקין, או לעשות IF כדי לוודא זאת? עריכה - כנ"ל גם לגבי כל שאר השאלות (כולל 1-4 בהם מוזכר לא להשתמש בIF)
 
: בתרגיל זה אפשר להניח כי הקלט תקין. ברור שאפשר להכליל את שאלה 5 לטפל בנקודות במרחב <math>\R^n</math>. אפשר לפתור את השאלה באופן כללי, אך הפתרון  עבור מרחב דו-מימדי הינו מספיק . --[[משתמש:Grisha|Grisha]] 01:35, 8 באפריל 2012 (IDT)
 
 
ועבור השאלות האחרות  אפשר גם להניח את זה?
 
: בתרגיל בית זה אפשר להניח כי הקלט תקין. --[[משתמש:Grisha|Grisha]] 20:34, 8 באפריל 2012 (IDT)
 
 
== תרגיל 2 שאלה 6 ==
 
 
עשיתי קוד שמוצא כמה מספרים [כן, ולא את כמות הספרות] יש בהם 3 לפי הדרישות, ויצא לי 4100, למרות שלפי שיקולי קומבינטוריקה צריך לצאת בסביבות 3400 [גם הרצתי ב C++ וזה אכן נע בסביבות 3430].
 
אני סבור שאין לי בעיה בקוד [אציג אותו אם ידרש], האם סטייה כזו של 700 זה הגיוני? [הרצתי הרבה פעמים וזה נע בסביבות 4100]
 
 
: איני יודע על מה אתה מדבר, לא רואה איך אוכל לעזור לך עד שלא אראה את הקוד. התוצאה לא אמורה להשתנות כתלות בשפה. --[[משתמש:Grisha|Grisha]] 22:28, 8 באפריל 2012 (IDT)
 
 
הנה הקוד בו השתמשתי:   
 
 
[יתכן ופונ' ה rand של matlab ממומשת על הפנים]
 
: זה לא ייתכן. אני ממליץ קודם כל לבדוק טוב את הקוד שלך שורה לאחר שורה, להתייעץ עם אחרים ורק אחרי זה לחפש טעויות בתוכנה עצמה.  --[[משתמש:Grisha|Grisha]] 23:04, 8 באפריל 2012 (IDT)
 
 
 
<div dir=ltr align=left>
 
A=rand(100,100);
 
 
c=0;
 
 
for i = 1:numel(A)
 
 
if numel(strfind(num2str(A(i)),'3')) ~= 0
 
 
c=c+1;
 
 
end
 
 
end
 
</div>
 
 
: לא למדנו על פונקציות על מחרוזות ואני רוצה לראות פתרון מתמטי. כתוב בתרגיל הבית שאסור להשתמש בפונקציות שלא נלמדו בכיתה. שנית, תבדוק מה זה precision של פקודת num2str. --[[משתמש:Grisha|Grisha]] 23:02, 8 באפריל 2012 (IDT)
 
 
תודה, הבנתי. אכן מימשתי עם mod, והכפלה ב 10 ובאמת התוצאה נעה בסביבות 3430 כצפוי :)
 
: הייתי אומר שצפוי מספר קצת שונה. --[[משתמש:Grisha|Grisha]] 23:28, 8 באפריל 2012 (IDT)
 
 
כשכתוב '4 ספרות ראשונות' זה כולל את ה 0 בתחילת המספר, או לא? [הנחתי שלא]
 
: הנחה נכונה. --[[משתמש:Grisha|Grisha]] 23:35, 8 באפריל 2012 (IDT)
 
 
נראה לי שאחוז המספרים עם שלוש צריך להיות: 0.3439=4^1-0.9. [ה 9 זה לא ההבדל, נכון?]
 
 
עוד שאלה: האם בשאלות 1 ו 2 אני צריך לשנות את המטריצות הנתונות לפי מה שכתוב, או שאני צריך להקצות מטריצה חדשה עם הערך המבוקש? לדוגמא כתוב: "החלף בין השורה הראשונה לשנייה במטריצה C" - האם אני צריך להחליף באמת את השורות של C, או להעתיק אותה ואז להחליף את השורות?
 
: אם כתוב - "קבל מטריצה חדשה", אז יש ליצור מטריצה חדשה. אם לא - אז אין דרישה כזאת. --[[משתמש:Grisha|Grisha]] 22:28, 8 באפריל 2012 (IDT)
 
 
 
אז לפי זה, בסוף תרגיל 2, C צריכה להיות וקטור אפסים?
 
: לא. אם תעשה את זה לא תוכל לפתור את שני הסעיפים האחרונים שממשיכים לדבר על מטריצה C. --[[משתמש:Grisha|Grisha]] 23:02, 8 באפריל 2012 (IDT)
 
 
== תרגיל 2 שאלה 5 ==
 
 
כחלק מהתכנית מותר להשתמש בפונקציית size?
 
: למה זה יכול להיות אסור? --[[משתמש:Grisha|Grisha]] 16:01, 9 באפריל 2012 (IDT)
 
סליחה היה לי בלבול בשאלה.
 
רציתי לשאול האם מותר להעביר כל שורה למספר מרוכב ואז להשתמש בabs?
 
: השאלה שלי דווקא נשארת - למה זה יכול להיות אסור? --[[משתמש:Grisha|Grisha]] 17:17, 9 באפריל 2012 (IDT)
 
 
== שאלה 6 תרגיל 2 ==
 
 
ב א' צריך ממש לכתוב קוד שבודק את כמות המספרים או שמספיק שאני פשוט אסביר כמה הם אמורים לצאת?
 
ו בב' אני יכולה לצאת מנקודת הנחה שהמטריצה היא 100 * 100 או שכמו בשאר התרגיל אני צריכה להתייחס לסוג של מטריצה אנונימית בכל גודל שהוא?
 
: בא' יש לכתוב את הקוד ולהסביר את התוצאה. בב' - יש לכתוב כך שיעבוד על כל מטריצה שהיא. --[[משתמש:Grisha|Grisha]] 08:40, 10 באפריל 2012 (IDT)
 
 
== שאלה 1ה ==
 
 
אם הבנתי את השאלה, זה תמיד יצא 0, עבור כל מטריצה שנכניס...
 
(יותר הגיוני לכתוב את הסעיף הזה לפני 1ד)
 
 
נכון?
 
 
: כל פעולה חייבת להתבצע כאילו היא מופעלת על וקטור שרירותי. בשאלה זו אפשר לעשות כל אחד מהסעיפים ג'-ה' כך שהוקטור המקורי לא ישתנה. --[[משתמש:Grisha|Grisha]] 00:14, 11 באפריל 2012 (IDT)
 
 
== MIN(MIN)) ==
 
 
וגם sum(sum)  - מותר להשתמש בהם בשיעורי הבית? (למרות עניין  היעילות?(
 
: מותר. אבל אם יודעים שאפשר לעשות משהו טוב יותר, אז למה להשתמש בשיטות פחות יעילות? --[[משתמש:Grisha|Grisha]] 00:15, 11 באפריל 2012 (IDT)
 
 
::אולי משימוש בsum אפשר להימנע, אבל יש דרך להימנע מmin שלא כוללת לולאות ותנאים?
 
 
== שאלה 6 ב ==
 
 
האם המספר שצריך לצאת (= מספר המספרים שמופיע לפחות פעם אחת 3 בארבע ספרות ראשונות) הוא קבוע?
 
כלומר כל פעם שיריצו את התכנית שלי זה המספר שצריך להתקבל?
 
כי אני מריץ פעמים שונות ומקבל מספרים שונים, למרות זאת - כל המספרים שאני מקבל הם באזור ה 3400-3500.
 
וגם, האם הפתרון שצריך לבצע הוא ע"י אלגוריתם לפירוק מספר (עם MOD וחלוקה ב 10)?
 
 
:המספר לא אמור לצאת קבוע, אבל הוא כן אמור לצאת בטווח בין 3400-3500. אז אתה בכיוון הנכון, השאלה שצריך להסביר למיטב הבנתי היא למה?
 
 
: כיוון שהמטריצה ההתחלתית היא מטריצה אקראית, המספר לא אמור לצאת אותו הדבר. --[[משתמש:Grisha|Grisha]] 13:08, 12 באפריל 2012 (IDT)
 
 
== אפשר להגיש את השיעורים בשלישי? ==
 
 
בתרגיל עצמו? אם אי אפשר, לאיפה נגיש מחר?
 
: אפשר בתרגול עצמו או מחר בתא של מתרגל שלך. --[[משתמש:Grisha|Grisha]] 23:56, 14 באפריל 2012 (IDT)
 
 
== חיסור מספר ממטריצה ==
 
 
אם A היא מטריצה וכותבים A-3, מטלב תעשה את פעולת החיסור על כל איבר בנפרד, כאילו כתוב <math>A-3*ones(size(A))</math>. לא למדנו בתרגול שאם המימדים לא מתאימים אז תהיה שגיאה? איך זה מסתדר?
 
: למה אתה חושב שיש כאן אי התאמה של גדלים? כן למדנו בתרגול שאם נחסיר ממטריצה A את מטריצה B, כאשר מימדי המטריתות שונים, נקבל טעות. --[[משתמש:Grisha|Grisha]] 13:36, 15 באפריל 2012 (IDT)
 
 
== "להפוך לווקטור שורה" ==
 
 
הכוונה ל-<math>c(1:end)</math>?
 
: איזה פעולה הופכת וקטור שורה לוקטור עמודה ולהיפך? --[[משתמש:Grisha|Grisha]] 13:37, 15 באפריל 2012 (IDT)
 
 
== בקשר ללסכום איברי מטריצה ==
 
 
יש דרך אחרת חוץ מsum?
 
 
תודה
 
 
: מה רע בדרך זו? --[[משתמש:Grisha|Grisha]] 17:31, 15 באפריל 2012 (IDT)
 
 
== אפשר הסבר על הפקודה הבאה ==
 
 
b=a(:,4:-1:1)
 
מה זה אומר?
 
זה לקוח מדף 13 במצגת של התרגול ה-2
 
 
: משמעות - להפוך את המטריצה, כך העמודה השמאלית הפכה להיות העמודה הימנית וכו'.
 
: לקחת את כל העמודה (זה תפקיד של : הראשונים) ותקח את העמודות לפי הסדר 4, 3, 2 ולבסוף 1. --[[משתמש:Grisha|Grisha]] 17:35, 15 באפריל 2012 (IDT)
 
 
הכוונה שהעמודות מתחלפות בצורה פנימית לדוגמא אם היו 6 עמודות אז המתחלפות (6-1) (2-5) (3-4)
 
?
 
 
: זאת אכן תהיה התוצאה. משמעות של פקודה:
 
:<math>a(:,3)</math> - תקח את כל העמודה השלישית;
 
:<math>a(:,3:5)</math> - תקח את העמודות 3, 4, 5;
 
:<math>a(:,end:-2:1)</math> - תקח את כל העמודות האי זוגיות בסדר ההפוך. --[[משתמש:Grisha|Grisha]] 20:04, 15 באפריל 2012 (IDT)
 

גרסה מ־13:31, 16 באפריל 2012

חזרה לדף הקורס


גלול לתחתית העמוד


הוספת שאלה חדשה

הוסף שאלה חדשה (רשום כותרת לשאלה, רשום את תוכן השאלה ולחץ על שמירה למטה מימין לסיום).

-עזרה על עיצוב הטקסט וכתיב מתמטי תוכלו למצוא כאן

אם אתם רוצים לשאול שאלה עליכם ליצור חשבון משתמש באתר.

ארכיון

ארכיון 1 - תרגילים 1-2.

שאלות