ããã¡ã¯ãMathematicaæŽ3幎ã®çè ã§ãã
åœèšäºã§ã¯è¶ åå¿è åãã«Mathematicaã®äœ¿ãæ¹ã解説ããŠããŸãã
ååã®èšäºã§ã¯Mathematicaã®åºæ¬æäœã«ã€ããŠè§£èª¬ããŸããã
ä»åã®èšäºã§ã¯ãForæ§æãã«ã€ããŠãããããã解説ããããšæããŸãã
åååæ§ãå ·äœçãªèª²é¡ã解決ããéçšã§Mathematicaãç¿åŸããŠãããŸãã
1, ã 1ãã100ãŸã§ã®æŽæ°ã®åãã®èšç®
æåã®èª²é¡ã¯ãååãšåãã1ãã100ãŸã§ã®æŽæ°ã®åãã§ãã
ããã€ãForæ§æã䜿çšããŠè§£ããŠãããããšæããŸãã
Foræ§æãšã¯ç¹°ãè¿ãæäœãè¡ãæ§æã§ãã
ç¿ãããæ £ãããšããããšã§ãäžå³ã®ããã«ã For[n = 1, n <= 5, n++, Print[n]] ããšã»ã«ã«å ¥åããŠShift + EnterãæŒããŠã¿ãŠäžããã1ãã5ãŸã§ã®æŽæ°ãåºåãããã°æåã§ãã

Foræ§æã§ã¯4ã€ã®åŒæ°ã䜿çšããŸããããããã®åœ¹å²ã¯äžå³ã®éãã§ãã
第ïŒåŒæ°ïŒnãäœããã¹ã¿ãŒããããæå®ãããã¯å°éçšèªã§åæåãšåŒã°ããŸãã
第ïŒåŒæ°ïŒå®è¡æ¡ä»¶ãããŒã«åã§æå®ãäžå³ã®ããã«æžãã°ãäœåç¹°ãè¿ãããæå®ã§ããŸãã
第ïŒåŒæ°ïŒnãã©ã®ããã«æŽæ°ããããæå®ããn++ãã¯ãn = n + 1ãããn += 1ããšåãã§ãnã+1ããããšããåŠçã§ãã
第ïŒåŒæ°ïŒåŠçãèšè¿°ãäžå³ã§ã¯ãnãåºåããããšããåŠçãããŠããŸãã
äžå³ã®ã³ãŒãã§ã¯ãnãåºåãããšããåŠçã5åç¹°ãè¿ããŠããŸãã
ã»ãšãã©ã®å Žåãäžå³ã®ãããªFor[n=1, n<=”ç¹°ãè¿ãåæ°”, n++, “åŠç”]ã®åœ¢ã§å¯ŸåŠã§ããŸãããã®åœ¢ãäžžæèšããŠãããŠäžããã
ã§ã¯ãã®Foræ§æã䜿çšããŠã 1ãã100ãŸã§ã®æŽæ°ã®åããèšç®ããŠã¿ãŸãããã
çãã¯äœéãããããšæããŸãããçè ã¯ä»¥äžã®ã³ãŒããèããŸããã

ïŒè¡ç®ã®ãk = 0;ãã§ãkãããïŒãã«åæåããŠããŸãã
ïŒè¡ç®ã§ãkãã«ãnããå ç®ããæäœãïŒïŒïŒåç¹°ãè¿ããŠããŸããïŒã¡ãªã¿ã«ãk = k +nãã¯ãk += nããšãæžããŸãïŒ
ããªãã§åæåããå¿ èŠããããã ããïŒã
ãšããçåããæã¡ããšæããŸããå®éãåæåãããªããšæ£ããçããåŸãããŸããã
åæåã®åœ¹å²ã¯äž»ã«ïŒã€ãããŸãã
ïŒã€ç®ã¯ãåã®å®£èšãã§ããMathematicaã§ã¯é¢æ°ã®åŒæ°ã«æ£ããåãæå®ããå¿ èŠããããŸãããkãæŽæ°åãã§ãããšå®£èšããããšã§ã颿°ã®åŒæ°ã«æå®ããéã®ãšã©ãŒãåé¿ã§ããŸããïŒä»åã®ã³ãŒãã§ã¯ã颿°ã䜿çšããŠããªãããé¢ä¿ãªãã§ããïŒ
ïŒã€ç®ã¯ãéå»ã®èšé²ã®åé€ãã§ããä»åã®å Žåãäžèšã³ãŒããïŒåèµ°ããããšãkãã«ã5050ããèšé²ãããŸãã1è¡ç®ã®ãk = 0ããæ¶ããŠããkããåæåãããã«ããïŒåã³ãŒããèµ°ãããŠã¿ãŠäžããããã®å Žåãk = 5050ãã®ç¶æ ããïŒããïŒïŒïŒãŸã§ã®æŽæ°ãå ç®ããããããçããã10100ããšãªã£ãŠããŸããŸããåæåã«ãã£ãŠéå»ã®èšé²ãåé€ããããšã§åžžã«æ£ããçããåŸãããŸãã
ãããããã©ã®ã¿ã€ãã³ã°ã§åæåãå¿ èŠã«ãªããã ããïŒã
ãšæã£ããããããŸãããããã«é¢ããŠã¯ããã°ã©ãã³ã°ã®çµéšãç©ãã°çè§£ã§ããã®ã§ãã²ãšãŸãåæåãšããæäœããããšããç¹ã ãã¯èŠããŠãããŠäžããã
2, ã 1ãã100ãŸã§ã®æŽæ°ã§2021ãå²ã£ãæã®æå€§ã®äœããã®èšç®
次ã®èª²é¡ã¯ã 1ãã100ãŸã§ã®æŽæ°ã§2021ãå²ã£ãæã®æå€§ã®äœããã§ãã
ãMathematica äœãããšã°ãŒã°ã«æ€çŽ¢ããããšãMod[âæŽæ°åâ, “æŽæ°å”]ã§äœããèšç®ã§ãããã§ãã
ãMathematica æå€§ããšã°ãŒã°ã«æ€çŽ¢ãããšãMax[“ãªã¹ãå”]ã§ãªã¹ãã®èŠçŽ ã§æå€§å€ãèšç®ã§ããããšãããããŸãã

ãããã£ãŠãForæ§æã䜿çšããŠ2021ã§å²ã£ãæã®äœãã®ãªã¹ããäœæããåŸã«ããMaxãã䜿çšããŠæå€§å€ãèšç®ããã°è¯ãããã§ãã
Foræ§æã§ãªã¹ããäœæããéã«ã¯ãAppendToããšãã颿°ã䜿çšããŸãããForããšãAppendToãã®çµã¿åããã§ãªã¹ããçæããæäœã¯éåžžã«å€çšããŸãã®ã§äœ¿ãæ¹ãäžžæèšããŠãããŠäžããã
ã²ãšãŸãçè ãäœæããäžå³ã³ãŒããèŠãŠäžããããªããšãªããAppendãã®äœ¿ãæ¹ãããããšæããŸãã

ãAppendToãã䜿çšããéã«éèŠãªã®ãåæåã§ããäžå³ã§ã¯1è¡ç®ã§ãlistããã空ã®ãªã¹ããã«åæåããŠããŸãã
ãAppendToãã®ç¬¬ïŒåŒæ°ã¯ããªã¹ãåãã§ãªããšãããŸããããã®ãããæåã®åæåã«ãã£ãŠå€æ°ãlistããããªã¹ãåãã§ãããšå®£èšããŠããŸãã
ãŸããAppendToãã¯ç¬¬ïŒåŒæ°ã®ãªã¹ãã®æåŸã«ç¬¬ïŒåŒæ°ã®èŠçŽ ã远å ããŠãã颿°ã§ãããã®éã第ïŒåŒæ°ã®ãªã¹ãã¯éå»ã®èšé²ãåŒãç¶ãã§ããŸããããéå»ã®èšé²ãåé€ããããã«ãæåã«ãªã¹ãã®äžèº«ã空ã«åæåããå¿ èŠããããŸãã
äžå³ã®ã³ãŒãã§ã¯ããn = 1ãããå§ããŠãn = 100ããŸã§ã2021ãnã§å²ã£ãäœããããlistãã«è¿œå ããŠããŸãã
ãããŠãåºæ¥äžãã£ãã2021ã1ãã100ãŸã§ã®æŽæ°ã§å²ã£ãäœãã®ãªã¹ããã®äžããæå€§ã®èŠçŽ ããMaxãã䜿çšããŠåãåºããŠããŸãã
3, ã 1ãã100ãŸã§ã®æŽæ°ã§2021ãå²ã£ãæã®äœãã®ïŒã®äœã®åãã®èšç®
å çšã®äœæããã 1ãã100ãŸã§ã®æŽæ°ã§2021ãå²ã£ãæã®äœãã®ãªã¹ããã䜿çšããŠããïŒã®äœã®åããèšç®ããŠã¿ãŸãããã
ïŒãSumãã䜿çšããã°ãForãã䜿çšããã«è§£ããŸããŸããããã£ããã§ãã®ã§ãForãã䜿çšããŠè§£ããŸããããïŒ
ãã€ãéã䜿çšãã颿°ãæ¢ããŠã¿ãŸãããã
çè ã¯ãMathematica ïŒã®äœããšã°ãŒã°ã«æ€çŽ¢ããŠãäžå³ã®ãããªãIntegerDigitsããšãã颿°ãèŠã€ããŸããã

ãIntegerDigitsãã¯æŽæ°åãåŒæ°ã«ããŠåæ¡ã®æ°åããªã¹ãåã§è¿ã颿°ã®ããã§ãã
ãããã£ãŠãã 1ãã100ãŸã§ã®æŽæ°ã§2021ãå²ã£ãæã®äœãã®ãªã¹ããã®å šãŠã®èŠçŽ ã«å¯ŸããŠããIntegerDigitsãã䜿çšããŠïŒã®äœãæ±ããŠå ç®ããŠããã°è¯ãããã§ãã
ã¡ãªã¿ã«ããForãã䜿çšããŠãªã¹ãã®å šèŠçŽ ã«å¯ŸããŠäœããã®åŠçãè¡ãæäœã¯é »åºã§ãã®ã§ã圢ãäžžæèšããŠãããŠäžããã
çè ã®èããã³ãŒãã¯ä»¥äžã®éãã§ãã

æåïŒè¡ã®äœãã®ãªã¹ããäœãã³ãŒãã¯å çšãšå šãåãã³ãŒãã§ãã®ã§èª¬æã¯å²æããŸãã
ïŒè¡ç®ã®ãForãã«ãã£ãŠãlistãã®å šèŠçŽ ã«å¯ŸããŠïŒã®äœãåãåºããŠãkãã«å ç®ããŠããŸãã
æ°ããåºãŠããã®ã¯ä»¥äžã®ïŒã€ã§ããã©ã¡ããè¶ é »åºã§ãã®ã§äœ¿ãæ¹ãæèšããŠãã ããã
ã»Length颿°ïŒãªã¹ããåŒæ°ã«ããŠãªã¹ãã®èŠçŽ ã®åæ°ãæŽæ°åã§è¿ã颿°ããForãã®äžã§ãn<=Length[list]ããšäœ¿çšãã圢ãè¶ é »åºã
ã»list[[m]]ïŒãlistãã®ãmãçªç®ã®èŠçŽ ãåãåºããPart颿°ã®çç¥åœ¢ãã-mãã®ããã«è² ã®æ°ãæå®ãããšåŸãããæ°ããŠãmãçªç®ã®èŠçŽ ãåãåºããè¶ é »åºã
ãLengthãã¯ãªã¹ãã®èŠçŽ æ°ãæ°ããŠããã颿°ã§ããäžèšã³ãŒãã®ããã«ãForãã®ç¬¬ïŒåŒæ°ã§ãn<=Length[list]ããšããããšã§ãlistãã®å šèŠçŽ ã«å¯ŸããŠäœããã®åŠçãè¡ã圢ãé »åºã§ãã
ãŸãããlist[[m]]ããšèšè¿°ããããšã§ãlistãã®ãmãçªç®ã®èŠçŽ ãåãåºãããšãã§ããŸãããPartã颿°ã®çç¥åœ¢ã§ããããããçç¥åœ¢ãçšæãããŠãããšããããšã¯è¶ é »åºãšããããšã§ãã
äžèšã³ãŒãã§ã¯ãIntegerDigits[list[[n]]]ãã«ãã£ãŠãlistãã®ãnãçªç®ã®èŠçŽ ïŒæŽæ°åïŒã®åäœããªã¹ãåã«å€æããŠããŸãããããŠã[[-1]]ãã«ãã£ãŠãªã¹ãã®åŸãããæ°ããŠ1çªç®ã®èŠçŽ ãã€ãŸãïŒã®äœã®æ°ãåãåºããŠããŸãã
ãããŠåãåºããïŒã®äœã®æ°ããkãã«å ç®ããŠçããæ±ããŠããŸãã
第ïŒåã®Foræ§æã®äœ¿ãæ¹ã¯ä»¥äžã«ãªããŸãã
ç¹°ãè¿ããŸãã以äžã®4ã€åœ¢ã¯å¿ ãèŠããŠãã ããã
ã»For[n=1, n<=”ç¹°ãè¿ãåæ°”, n++, “åŠç”]ã®åœ¢
ã»ãForããšãAppendãã§ãªã¹ããäœæãã圢
ã»ãForãã®äžã§ãn<=Length[list]ããšäœ¿çšãã圢
ã»ãlist[[m]]ãã§ãlistãã®ãmãçªç®ãåãåºã圢
第ïŒåã¯ãIfæãã«ã€ããŠè§£èª¬ããããšæããŸãã
ãForæ§æãã«å ããŠãIfæãã䜿ããããã«ãªãã°ãã»ãšãã©ã®åŠçãMathematicaã§å®è£ ã§ããŸãã
ããã§ã¯ãŸããäŒãããŸãããïŒ