15-3 ���禡�P�p���ؿ�

¤@­Ó M ÀÉ®×¥i¥H¥]§t¤@­Ó¥H¤Wªº¨ç¦¡¡A¨ä¤¤¦³¤@­Ó¥D¨ç¦¡¡]Primary Function¡^¡A¨ä¥L«h¬°¦¸¨ç¦¡¡]Subfunctions¡^¡A³o¨Ç¦¸¨ç¦¡¥u¯à³Q¦PÀɮפ¤ªº¨ç¦¡¡]¥i¯à¬O¥D¨ç¦¡©Î¦¸¨ç¦¡¡^©I¥s¡A¦ý¤£¥i³Q¤£¦PÀɮתº¨ä¥L¨ç¦¡©I¥s¡C¦b¤@­Ó M Àɮפ¤¡A¥D¨ç¦¡¥²»Ý¥X²{¦b³Ì¤W¤è¡A¨ä«á§Y¥i±µ¤W¥ô·N¼Æ¥Øªº¦¸¨ç¦¡¡A¦Ó¥B¦¸¨ç¦¡ªº¦¸§Ç¨ÃµL¥ô¦ó­­¨î¡C¨Ò¦p¡Gfunc5.m ¥]§t¤@­Ó¥D¨ç¦¡¤Î¤@­Ó¦¸¨ç¦¡¡A¦¸¨ç¦¡ªº¥\¯à¬O­pºâ­Ë¼Æ¦V¶q¡A¦¹ M Àɮתº¤º®e¥iÅã¥Ü¦p¤U¡G

>> type func5.m function out = func5(x) recip = reciproc(x); out = sum(recip); % Definition for subfunctions function output = reciproc(input) output = 1./input;

¦¹¨ç¦¡¥i©I¥s¦p¤U¡G

>> func5([1 2 3]) ans = 1.8333

¦¹¥~¡A±z¥i¥H¦b¤@¥Ø¿ý¤¤«Ø¥ß¤@­Ó¦WºÙ¬°¡uprivate¡vªº¨p¦³¤Æ¥Ø¿ý¡]Private Directory¡^¡A¨Ó¦s©ñ»P³o¥Ø¿ý¬ÛÃöªº¨ç¦¡¡C¨Ò¦p¡A°²³]±z¦³¤@­Ó¥Ø¿ý mydir¡A±z¥i¥H¦b mydir ¤§¤U«Ø¥ß¤@­Ó¦W¬° private ªº¥Ø¿ý¡A¨º»ò mydir ¤¤ªº M Àɮס]¥u­­¨ç¦¡¡^§Y¥i©I¥s private ¤§¤Uªº¥ô¦ó¨ç¦¡¡A¦Ó¤£¥²¦A©w¸q¨ä¥L·j´M¸ô®|¡C¦b¥Ø¿ý private ¤§¤Uªº¨ç¦¡¡A¥u¯à³Q¨ä¤÷¥Ø¿ýªº¨ç¦¡©Ò©I¥s¡A¦Ó¤£¯à³Q¨ä¥L¥Ø¿ýªº¨ç¦¡¨Ó©I¥s¡C

Hint
¥Ø¿ý private ªº¥\¯à¥u­­©ó¨ç¦¡¡A¦Ó¤£¯à¥Î©ó©³½Z¡C

·í±z±q M ÀɮשI¥s¤@­Ó¨ç¦¡®É¡AMATLAB ·j´M¦¹¨ç¦¡ªº¦¸§Ç¦p¤U¡G

  1. Àˬd¦¹¨ç¦¡¬O§_¬°¦¸¨ç¦¡
  2. Àˬd¦¹¨ç¦¡¬O§_¬°¨p¦³¤Æ¥Ø¿ýªº¨ç¦¡
  3. ±q¨t²Î©Ò³]©wªº·j´M¸ô®|§ä´M¦¹¨ç¦¡

¦b¦¹·j´M¹Lµ{¤¤¡AMATLAB ¥u­n§ä¨ì²Ä¤@­ÓÀɦW¬Û²Åªº¨ç¦¡¡A§Y·|¥ß§Y¨ú¥Î¡A¦Ó¤£¦AÄ~Äò·j´M¡C


MATLABµ{¦¡³]­p¡G¤Jªù½g