משתמש:שומבלע: הבדלים בין גרסאות בדף

מתוך ויקיספר, אוסף הספרים והמדריכים החופשי
תוכן שנמחק תוכן שנוסף
שומבלע (שיחה | תרומות)
שומבלע (שיחה | תרומות)
שורה 102: שורה 102:


משתנים ללא תוכן (בניית פונקציות)
משתנים ללא תוכן (בניית פונקציות)
ניתן לבנות פונקציות מתמטיות עם שימוש בתו @

מבנה
<source lang="text">
<משתנה2><פעולות מתמטיות><משתנה1> (<משתנה2>,<משתנה1>)@=<שם הפונקציה>
</source>


נבנה פונקציה y=2+x
נבנה פונקציה y=2+x
<source lang="text">
<source lang="text">
>>y = @(x) 2+x;
>>y = @(x) 2+x;
>>y(2,)
>>y(2)
ans = 4
ans = 4
</source>
</source>
שורה 146: שורה 154:


</source>
</source>
כאשר קיים יותר ממשתנה אחד בפונקציה, צריך לפנות אליהם לפי סדר ההופעה משמאל לימין.
כאשר קיים יותר ממשתנה אחד בפונקציה, צריך לפנות אליהם לפי סדר ההופעה בהגדרה.
ניתן להשתמש במשתנים יותר מפעם אחת :
<source lang="text">
octave:32> y=@(a,b) (a+b)^2+ab
y =

@(a, b) (a + b) ^ 2 + ab

octave:33> y(1,4)
error: `ab' undefined near line 32 column 18
error: evaluating binary operator `+' near line 32, column 17
error: called from `?unknown?'

</source>

התוכנה לא מכירה את הביטוי ab ומתייחסת אלו בתור משתנה חדש

נשתמש בסימן הכפל:
<source lang="text">
octave:33> y=@(a,b) (a+b)^2+a*b
y =

@(a, b) (a + b) ^ 2 + a * b

octave:34> y(1,4)
ans = 29

</source>


נבדוק עם מספרים מרוכבים:
נבדוק עם מספרים מרוכבים:

גרסה מ־14:28, 15 בפברואר 2008

הדף שלי בויקיפדיה




אני יודע שזה תקוע כאן באמצע הדף , וזה נורא מכוער, אבל עד שאסיים את הספר :

תכנון עבודה לתכנות נומרי עם Matlab ו-Octave

שם הפרק דפי תרגול הערות
תכנות נומרי עם Matlab ו-Octave אין צורך 100%
הכנה אין צורך
שלום עולם! אין צורך עבודה עם קבצים
משתנים תרגול
קלט ופלט תרגול הרחבה על סוגי משתנים ב fprintf
פעולות חשבון תרגול פעולות חשבוניות , שימוש בסוגריים, שילוב עם אופרטורים לוגיים ובוליאנים, פונקציות נוספות.
אופרטורים תרגול
משפטי תנאי תרגול עריכת הקדמה, הוספת דוגמאות.
מחרוזות תרגול הרחבה על מספרים. הרחבה על בניית מחרוזות. פקודות למחרוזות
מערכים תרגול ריק
וקטורים תרגול הקדמה .הרחבה על פעולות. פונקציות נוספות.
מטריצות תרגול הרחבה על פעולות חישוב בין מטריצות, חוקי מטריצות. מתקדם : מטריצות תלת מימדיות.
לולאות תרגול דוגמאות
רשומות תרגול הקדמה
מערך תאים תרגול הקדמה
מטריצה דלילה תרגול הקדמה - מה זה בדיוק?! הסברים ופונקציות
פונקציות תרגול הרחבה. תתי פונקציות (מיקום)
גרפים תרגול תרגום אנגלית, meshgrid (מיקום)
נספחים תרגול אופרטורים, פונקציות ופקודות. אינדקס ל plot ו legend

הערות כלליות

  • הוספת דפי תרגול לכל הפרקים הרלוונטים
  • פרק שעוסק בפעולות עם קבצי m
  • דף תכניות מתקדמות / פונקציות.
  • נספח עם רשימת פקודות ופונקציות עיקריות, כולל הסבר קצר.
  • סדר בבלאגן: הפרק שעוסק בפעולות חשבון צריך להופיע לפני אופרטורים לוגיים.

ארגזי חול

משתנים ללא תוכן (בניית פונקציות) ניתן לבנות פונקציות מתמטיות עם שימוש בתו @

מבנה

<משתנה2><פעולות מתמטיות><משתנה1> (<משתנה2>,<משתנה1>)@=<שם הפונקציה>


נבנה פונקציה y=2+x

>>y = @(x) 2+x;
>>y(2)
ans = 4

נבדוק x=2

ans=
y(2)

אם רוצים לראות את הפונקציה שיצרנו :

>>y
y =

@(x) 2 + x

כעת נבדוק מיהו y

octave:20> whos y

*** local user variables:

  Prot Name        Size                     Bytes  Class
  ==== ====        ====                     =====  ===== 
   rwd y           1x1                          0  function_handle

Total is 1 element using 0 bytes


דוגמה נוספת:

octave:23> y=@(a,b) (a+b)^2
y =

@(a, b) (a + b) ^ 2
octave:26> y(1,2)
ans =  9

כאשר קיים יותר ממשתנה אחד בפונקציה, צריך לפנות אליהם לפי סדר ההופעה בהגדרה. ניתן להשתמש במשתנים יותר מפעם אחת :

octave:32> y=@(a,b) (a+b)^2+ab
y =

@(a, b) (a + b) ^ 2 + ab

octave:33> y(1,4)
error: `ab' undefined near line 32 column 18
error: evaluating binary operator `+' near line 32, column 17
error: called from `?unknown?'

התוכנה לא מכירה את הביטוי ab ומתייחסת אלו בתור משתנה חדש

נשתמש בסימן הכפל:

octave:33> y=@(a,b) (a+b)^2+a*b
y =

@(a, b) (a + b) ^ 2 + a * b

octave:34> y(1,4)
ans =  29

נבדוק עם מספרים מרוכבים:

octave:27> y(5+2i,8)
ans =  165 +  52i

ניתן ליצור פונקציות מורכבות לדוגמה: