{"id":12332,"date":"2024-01-21T13:15:21","date_gmt":"2024-01-21T13:15:21","guid":{"rendered":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/?p=12332"},"modified":"2024-01-22T01:26:07","modified_gmt":"2024-01-22T01:26:07","slug":"%e3%83%a9%e3%83%b3%e3%83%80%e3%83%a0%e3%81%aa%e6%95%b0%e5%80%a4%e3%81%ae%e7%94%bb%e5%83%8f%e3%82%92%e4%bd%9c%e3%82%8b","status":"publish","type":"post","link":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/?p=12332","title":{"rendered":"\u30e9\u30f3\u30c0\u30e0\u306a\u6570\u5024\u306e\u753b\u50cf\u3092\u4f5c\u308b"},"content":{"rendered":"<p>python \u3067\u30e9\u30f3\u30c0\u30e0\u306b\u6570\u5024\u306e\u753b\u50cf\u3092\u4f5c\u308a\u307e\u3059\u3002\u3068\u308a\u3042\u3048\u305a\u3001\u6570\u5024\u306e\u307f\u306e\u5834\u5408\u3067\u3059\u3002\u5019\u88dc\u3068\u306a\u308b\u6587\u5b57\u5217 &#8216;1&#8217; \u3084 &#8216;-&#8216; \u3084 &#8216;E&#8217; \u306a\u3069\u3092\u9069\u5f53\u306b\u62fe\u3063\u3066\u3064\u306a\u304e\u5408\u308f\u305b\u3066\u6587\u5b57\u5217\u3092\u4f5c\u308a\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001<\/p>\n<ul>\n&#8220;.77e53&#8243; \uff0c&#8221;E12&#8243;\uff0c&#8221;+3-&#8221;\n<\/ul>\n<p>\u306a\u3069\u3068\u306a\u308a\u307e\u3059\u3002\u5de6\u306f\u6d6e\u52d5\u5c0f\u6570\u70b9\uff0c\u771f\u3093\u4e2d\u306f\u6587\u5b57\u5f0f\uff0c\u53f3\u5074\u306f\u6570\u5f0f\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u3053\u3046\u3057\u305f\u6587\u5b57\u5217\u304c\u6570\u5f0f\u306b\u306a\u3063\u3066\u3044\u308b\u304b\u3069\u3046\u304b\u8abf\u3079\u3066\u3001\u6570\u5f0f\u3067\u3042\u308c\u3070\u753b\u50cf\u3092\u66f8\u304d\u51fa\u3057\u307e\u3059\u3002\u4eca\u56de\u306f\u6d6e\u52d5\u5c0f\u6570\u70b9\u3068\u6574\u6570\u306e\u307f\u66f8\u304d\u51fa\u3057\u307e\u3057\u305f\u3002<a href=\"https:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/?p=12253\">\u3044\u3064\u3082\u306e TeX \u306e\u74b0\u5883<\/a>\u306e\u4ed6\uff0csynaptic \u304b\u3089 dvipng \u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3092\u3057\u307e\u3057\u305f\u3002<\/p>\n<pre><code style=\"color: midnightblue; font-size: 12px; white-space: pre-wrap;\">%reset -f\r\n\r\nimport sys\r\n#from sympy import *\r\nimport sympy\r\nimport random\r\nfrom sympy import I, pi, E\r\n\r\ndef isExpression(tmpStr):\r\n    \r\n    isExpression = False\r\n    \r\n    errorArray = [\"&lt;class 'sympy.core.sympify.SympifyError'&gt;\", \"&lt;class 'TypeError'&gt;\",\\\r\n                  \"&lt;class 'IndexError'&gt;\"]\r\n    # &lt;class 'AttributeError'&gt;\r\n   \r\n    try:\r\n        expr = sympy.sympify(tmpStr, evaluate=False)\r\n    except Exception as ex:\r\n        expr = ex\r\n\r\n    exprClass = str(type(expr))\r\n    \r\n    #print('class : ', exprClass)\r\n    \r\n    varsSet = set()\r\n   \r\n    if exprClass in errorArray:\r\n        return isExpression, exprClass, expr, varsSet\r\n    else:\r\n        isExpression = True\r\n\r\n        try:\r\n            varsSet = expr.free_symbols\r\n        except Exception as ex:\r\n            varSet = set()\r\n            exprClass = str(type(ex))\r\n            \r\n        return isExpression, exprClass, expr, varsSet\r\n\r\n# &#20986;&#12390;&#12365;&#12381;&#12358;&#12394;&#12479;&#12452;&#12503;&#12434;&#26360;&#12365;&#20986;&#12375;&#12390;&#12415;&#12383;&#12290;&#12375;&#12400;&#12425;&#12367;&#24847;&#21619;&#12398;&#12394;&#12356;&#12467;&#12540;&#12489;&#12364;&#32154;&#12367;&#12290;typeArray&#12289;otherTypeArray &#12399;\r\n# &#12356;&#12414;&#12398;&#12392;&#12371;&#12429;&#21033;&#29992;&#12375;&#12390;&#12356;&#12394;&#12356;\r\ntypeArray = [\"&lt;class 'sympy.core.numbers.Integer'&gt;\", \"&lt;class 'sympy.core.numbers.Float'&gt;\",\\\r\n             \"&lt;class 'sympy.core.numbers.Zero'&gt;\", \"&lt;class 'sympy.core.numbers.One'&gt;\",\\\r\n             \"&lt;class 'sympy.core.numbers.NegativeOne'&gt;\", \"&lt;class 'sympy.core.numbers.Exp1'&gt;\"]\r\n\r\notherTypeArray = [\"&lt;class 'sympy.core.symbol.Symbol'&gt;\", \"&lt;class 'sympy.core.add.Add'&gt;\",\\\r\n                  \"&lt;class 'sympy.core.mul.Mul'&gt;\"]\r\n\r\n\r\n# &#30011;&#20687;&#12434;&#20986;&#21147;&#12377;&#12427;&#12479;&#12452;&#12503;\r\nacceptArray = [\"&lt;class 'sympy.core.numbers.Integer'&gt;\", \"&lt;class 'sympy.core.numbers.Float'&gt;\",\\\r\n               \"&lt;class 'sympy.core.numbers.Zero'&gt;\", \"&lt;class 'sympy.core.numbers.One'&gt;\",\\\r\n               \"&lt;class 'sympy.core.numbers.NegativeOne'&gt;\"]\r\n   \r\n    \r\nstr1Array = ['0','1','2','3','4','5','6','7','8','9','','+','-','.','e','E']\r\nstr2Array = ['*pi*']\r\nstr3Array = ['*','\/','^','(',')']\r\nstr4Array = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w',\\\r\n             'x','y','z']\r\n\r\nstrArray = str1Array\r\n\r\n\r\ndef makeString(strArray, maxLength):\r\n    \r\n    strArrayMaxIndex = len(strArray) - 1\r\n    \r\n    tmpStr = ''\r\n    strLength = random.randint(1, maxLength)\r\n    \r\n    for i in range(strLength):\r\n        tmpStr = tmpStr + strArray[random.randint(0, strArrayMaxIndex)]\r\n        \r\n    return tmpStr\r\n        \r\n    \r\n\r\ntotalNumber = 0    \r\n    \r\nfor i in range(40):\r\n    \r\n    isEx = False\r\n    \r\n    tmpStr = makeString(strArray, 8)\r\n    \r\n    #print('\\nNo. ' + str(i))\r\n    #print('original     : ' + '\"' + tmpStr + '\"')\r\n\r\n    isEx, exprClass, expr, varsSet = isExpression(tmpStr)\r\n    \r\n    #print('class        : ', exprClass)\r\n    \r\n    if exprClass in acceptArray:\r\n        print('\\nNo. ' + str(totalNumber))\r\n        print('original     : ' + '\"' + tmpStr + '\"')\r\n        print('tex          : ' + '\"' + sympy.latex(expr) + '\"')\r\n        print('isExpression : ' + str(isEx))\r\n        print('vars         : ', varsSet)\r\n        print('vars length  : ', len(varsSet))\r\n        print('class        : ', exprClass)\r\n        \r\n        sympy.preview(expr, viewer='file', filename='.\/texImage\/tmp' + str(totalNumber) + '.png', euler=False,\\\r\n              dvioptions=[\"-T\", \"tight\", \"-z\", \"0\", \"--truecolor\", \"-D 600\"])\r\n        \r\n        totalNumber = totalNumber + 1\r\n    \r\nprint('\\ntotalNumber : ' + str(totalNumber))\r\n<\/code><\/pre>\n<p>\u51fa\u529b\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u3059\u3002<\/p>\n<pre><code style=\"color: midnightblue; font-size: 12px; white-space: pre-wrap;\">No. 0\r\noriginal     : \"6\"\r\ntex          : \"6\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Integer'&gt;\r\n\r\nNo. 1\r\noriginal     : \"7\"\r\ntex          : \"7\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Integer'&gt;\r\n\r\nNo. 2\r\noriginal     : \"32.\"\r\ntex          : \"32.0\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Float'&gt;\r\n\r\nNo. 3\r\noriginal     : \"4\"\r\ntex          : \"4\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Integer'&gt;\r\n\r\nNo. 4\r\noriginal     : \"658\"\r\ntex          : \"658\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Integer'&gt;\r\n\r\nNo. 5\r\noriginal     : \"0\"\r\ntex          : \"0\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Zero'&gt;\r\n\r\nNo. 6\r\noriginal     : \".77e53\"\r\ntex          : \"7.7 \\cdot 10^{52}\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Float'&gt;\r\n\r\nNo. 7\r\noriginal     : \"24\"\r\ntex          : \"24\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Integer'&gt;\r\n\r\nNo. 8\r\noriginal     : \"4\"\r\ntex          : \"4\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Integer'&gt;\r\n\r\nNo. 9\r\noriginal     : \"1048.417\"\r\ntex          : \"1048.417\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Float'&gt;\r\n\r\nNo. 10\r\noriginal     : \".01212\"\r\ntex          : \"0.01212\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Float'&gt;\r\n\r\nNo. 11\r\noriginal     : \"-0e88\"\r\ntex          : \"0\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Zero'&gt;\r\n\r\nNo. 12\r\noriginal     : \"43\"\r\ntex          : \"43\"\r\nisExpression : True\r\nvars         :  set()\r\nvars length  :  0\r\nclass        :  &lt;class 'sympy.core.numbers.Integer'&gt;\r\n\r\ntotalNumber : 13<\/code><\/pre>\n<p>\u753b\u50cf\u304c\u66f8\u304d\u51fa\u3055\u308c\u307e\u3057\u305f\u3002<\/p>\n<p><a href=\"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/wp-content\/uploads\/2024\/01\/20240121a.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/wp-content\/uploads\/2024\/01\/20240121a.png\" alt=\"\" width=\"889\" height=\"547\" class=\"aligncenter size-full wp-image-12339\" srcset=\"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/wp-content\/uploads\/2024\/01\/20240121a.png 889w, http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/wp-content\/uploads\/2024\/01\/20240121a-300x185.png 300w, http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/wp-content\/uploads\/2024\/01\/20240121a-768x473.png 768w, http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/wp-content\/uploads\/2024\/01\/20240121a-600x369.png 600w\" sizes=\"auto, (max-width: 889px) 100vw, 889px\" \/><\/a><\/p>\n<pre><code style=\"color: midnightblue; font-size: 12px; white-space: pre-wrap;\"><\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>python \u3067\u30e9\u30f3\u30c0\u30e0\u306b\u6570\u5024\u306e\u753b\u50cf\u3092\u4f5c\u308a\u307e\u3059\u3002\u3068\u308a\u3042\u3048\u305a\u3001\u6570\u5024\u306e\u307f\u306e\u5834\u5408\u3067\u3059\u3002 &#8230; <a class=\"more-link\" href=\"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/?p=12332\">Read More &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-12332","post","type-post","status-publish","format-standard","hentry","category-column"],"_links":{"self":[{"href":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/12332","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=12332"}],"version-history":[{"count":9,"href":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/12332\/revisions"}],"predecessor-version":[{"id":12342,"href":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/12332\/revisions\/12342"}],"wp:attachment":[{"href":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=12332"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=12332"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/zairyo.susi.oita-u.ac.jp\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=12332"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}