
ChatGPT ã¯ããããã®ç¨®é¡ã®ããã°ã©ãã³ã°è¨èªã®ã³ã¼ããåºåã§ãã¾ãããç´æ¥å®è¡ã§ããã®ã¯ç¾ç¶ Python ã®ã¿ã¨ãªã£ã¦ãã¾ããRuby ãªã©ä»ã®è¨èªãå®è¡ãããã¨ã¯ã§ããªããã¨èãã¦ãã¾ããã
1ã¤ã®ã¢ã¤ãã¢ã¨ãã¦æãã¤ããã®ã¯ ChatGPT ã«çæããã³ã¼ãã Ruby on Browser ã«æ¸¡ã URL ãçæãã¦ãããããããã¯ãªãã¯ããã ãã§å®è¡ã§ããããã«ããã¨ããæ¹æ³ã§ãããããªãä»ã®è¨èªã§ã URL çµç±ã§å®è¡ã§ããå¦çç³»ãªãå¿ç¨ã§ãããã§ãã(ç¾ç¶ã¯ ChatGPT 4 ã§ã®ã¿å®è¡å¯è½ãªæ¨¡æ§)
䏿ºå
ã¾ã Ruby on Browser ã« URL çµç±ã§ã³ã¼ããæ¸¡ãæ¹æ³ãç¨æããå¿
è¦ãããã¾ãããã¨ãã¨ã¯ã¨ãªã¼ãã©ã¡ã¼ã¿ q= ã§æ¸¡ããã®ã§ãããæåæ°ãçãããããã« lz-string ã¨ãã Javascript ã®ã©ã¤ãã©ãªã使ã£ã¦ãããã®ã¨ã³ã³ã¼ãã£ã³ã°ã Python æ¨æºã§ã¯æä¾ããã¦ããªããããã©ã¡ã¼ã¿æååãçæã§ããªãããã§ãããã®ããã«ã·ã³ãã«ãª URL ã¨ã³ã³ã¼ãã£ã³ã§ã³ã¼ããæ¸¡ããã¨ãã§ãã q2= ãæ°è¦ã«ç¨æãããã¨ã«ãã¾ããã
ããã§æºåã¯å®äºã§ãã
ããã³ãã
è²ã 調æ´ã㦠ChatGPT ã«æ¸¡ãããã³ããã¯ãããªæãã«ãªãã¾ãããâ¯â¯â¯ã®ç®æãçæãã¦æ¬²ããã¹ã¯ãªãã種é¡ã«å¤æ´ãã¦ä½¿ãã¾ãã
â¯â¯â¯ Rubyã¹ã¯ãªããã使ãã¦ãã ããã ãã®Rubyã¹ã¯ãªãããrubyonbrowserä¸ã§å®è¡ããããã§ãã - URL 㯠https://rubyonbrowser.ongaeshi.me/ - å¾ãã«ã¯ã¨ãªæåå ?q2= - ã³ã¼ãããã¹ãã URLã¨ã³ã³ã¼ãã£ã³ã°ããæååã q2 ã®ãã©ã¡ã¼ã¿ã«è¨å® ã³ã¼ãã¨çæããURLã¸ã®ãªã³ã¯ã®é ã«ä¸åã§åºåãã¦ãã ããã
å®è¡ä¾1: æååã大æåã«å¤æãã
ããªã
æååã大æåã«å¤æããRubyã¹ã¯ãªããã使ãã¦ãã ããã ãã®Rubyã¹ã¯ãªãããrubyonbrowserä¸ã§å®è¡ããããã§ãã
- URL 㯠https://rubyonbrowser.ongaeshi.me/
- å¾ãã«ã¯ã¨ãªæåå ?q2=
- ã³ã¼ãããã¹ãã URLã¨ã³ã³ã¼ãã£ã³ã°ããæååã q2 ã®ãã©ã¡ã¼ã¿ã«è¨å®
ã³ã¼ãã¨çæããURLã¸ã®ãªã³ã¯ã®é ã«ä¸åã§åºåãã¦ãã ããã
ChatGPT
以ä¸ã«ãæååã大æåã«å¤æããRubyã¹ã¯ãªããã¨ããããå®è¡ããããã®rubyonbrowserã¸ã®ãªã³ã¯ãæä¾ãã¾ãã
puts gets.chomp.upcase
çæããURL: https://rubyonbrowser.ongaeshi.me/?q2=puts+gets.chomp.upcase
ææ³
å®éã®å®è¡ã¯ã¢ãã¤ã«ä¸ããè¡ã£ã¦ããããªã³ã¯ãçæãããã¨ã§ç¹ã«ã¢ãã¤ã«ããã ã¨ç¢ºèªãããããªãã¾ããRuby on Browser ã§å®è¡ãããã¨ã§ãã³ã¼ããã¡ãã£ã¨ä¿®æ£ã§ããã®ãå¬ããã§ããã
å®è¡ä¾2: Hash#dig ã®ãµã³ãã«ã³ã¼ããåºåããã
ããªã
Hash#dig ã®ä½¿ãæ¹ãåå¿è ããã°ã©ãã«èª¬æããRubyã¹ã¯ãªããã使ãã¦ãã ããã ãã®Rubyã¹ã¯ãªãããrubyonbrowserä¸ã§å®è¡ããããã§ãã
- URL 㯠https://rubyonbrowser.ongaeshi.me/
- å¾ãã«ã¯ã¨ãªæåå ?q2=
- ã³ã¼ãããã¹ãã URLã¨ã³ã³ã¼ãã£ã³ã°ããæååã q2 ã®ãã©ã¡ã¼ã¿ã«è¨å®
ã³ã¼ãã¨çæããURLã¸ã®ãªã³ã¯ã®é ã«ä¸åã§åºåãã¦ãã ããã
ChatGPT
Rubyã®Hash#digã¡ã½ããã¯ããã¹ããããããã·ã¥ããå®å
¨ã«å¤ãåå¾ããããã«ä½¿ç¨ããã¾ããä¾ãã°ãããããã·ã¥ãè¤æ°ã®é層ãæã£ã¦ããå ´åãdigã¡ã½ããã使ã£ã¦ç¹å®ã®ãã¼ã®çµè·¯ã«æ²¿ã£ã¦å¤ãåå¾ã§ãã¾ããããæå®ãããã¼ã®ãããããåå¨ããªãå ´åãnilãè¿ããã¾ãã
åå¿è
ã®æ¹ã«åãã説æç¨ã®Rubyã¹ã¯ãªããã以ä¸ã«ç¤ºãã¾ãããã®ã¹ã¯ãªããã§ã¯ãç°¡åãªããã·ã¥ã使ããdigã¡ã½ããã使ç¨ãã¦å¤ãåå¾ãã¾ãã
# ãã¹ããããããã·ã¥ã®ä¾ user_data = { name: "Alice", contact: { email: "[email protected]", phone: { home: "123-456-7890", mobile: "987-654-3210" } } } # 'dig' ã¡ã½ããã使ç¨ãã¦ãã¢ãã¤ã«é»è©±çªå·ãåå¾ mobile_phone = user_data.dig(:contact, :phone, :mobile) # çµæãåºå puts "Mobile phone number: #{mobile_phone}"
ãã®ã¹ã¯ãªãããRubyOnBrowserã§å®è¡ããããã®URLã¯ä»¥ä¸ã®éãã§ãã
ææ³
å®è¡ãã㨠"987-654-3210" ãè¿ã£ã¦ãã¾ããã弿°ã (:contact, :phone, :home) ã«å¤æ´ãã㨠"123-456-7890" ã«ãªãã¾ãããéä¸ã®ãã©ã¡ã¼ã¿åãééã£ã¦ãã¦ãä¾å¤ã«ãªãã nil ã§è¿ã£ã¦ããã®ã便å©ãªã®ã ã¨çè§£ã§ãã¾ããããµã³ãã«ãã¼ã¿ãå«ãã¦ã³ã¼ãã使ãã¦ãããã®ããããããã§ãã
å®è¡ä¾3: æªç¥ã®ã¢ã«ã´ãªãºã ãæãã¦ããã
ããªã
ã¬ã¼ãã³ã·ã¥ã¿ã¤ã³è·é¢ãæ±ããRubyã¹ã¯ãªããã使ãã¦ãã ããã ãã®Rubyã¹ã¯ãªãããrubyonbrowserä¸ã§å®è¡ããããã§ãã
- URL 㯠https://rubyonbrowser.ongaeshi.me/
- å¾ãã«ã¯ã¨ãªæåå ?q2=
- ã³ã¼ãããã¹ãã URLã¨ã³ã³ã¼ãã£ã³ã°ããæååã q2 ã®ãã©ã¡ã¼ã¿ã«è¨å®
ã³ã¼ãã¨çæããURLã¸ã®ãªã³ã¯ã®é ã«ä¸åã§åºåãã¦ãã ããã
ChatGPT
ã¬ã¼ãã³ã·ã¥ã¿ã¤ã³è·é¢ãè¨ç®ããããã®Rubyã¹ã¯ãªããã¨ããã®ã¹ã¯ãªãããRuby on Browserã§å®è¡ããããã®URLãçæãã¾ããã
Rubyã¹ã¯ãªããã¯ä»¥ä¸ã®éãã§ãã
def levenshtein_distance(s, t) m = s.length n = t.length return m if n == 0 return n if m == 0 d = Array.new(m+1) {Array.new(n+1)} (0..m).each {|i| d[i][0] = i} (0..n).each {|j| d[0][j] = j} (1..n).each do |j| (1..m).each do |i| cost = (s[i-1] == t[j-1]) ? 0 : 1 d[i][j] = [d[i-1][j]+1, d[i][j-1]+1, d[i-1][j-1] + cost].min end end d[m][n] end # 使ç¨ä¾ puts levenshtein_distance("kitten", "sitting")
ãã®ã¹ã¯ãªãããRuby on Browserã§å®è¡ããããã®URLã¯ä»¥ä¸ã®ãªã³ã¯ããã¢ã¯ã»ã¹ã§ãã¾ãï¼Ruby on Browserã§ã¹ã¯ãªãããå®è¡ãã.
ææ³
git ã®ã³ãã³ãã®ã¹ãã«ãã¹ããã£ãã¨ãã«è¿ãã³ãã³ããæç¤ºãã¦ãããã¢ã«ã´ãªãºã ã確ããããªååã ã£ãã¨ããè¨æ¶ã ãã§èãã¦ã¿ã¾ããããã«ã·ãã¼ã·ã§ã³ãæãã§ãã試ããæãæ£ããåãã¦ããããªæãã§ãããå®éã«ä½¿ãããã¨ãã¯ããããã¼ã¹ã«æåãçè§£ããã¨ãããå§ãããããããã§ãã(ããã¦èª¿ã¹ãã git ã§ã¯ãããããå°ãè¤éãªãã¡ã©ã¦ã»ã¬ã¼ãã³ã·ã¥ã¿ã¤ã³è·é¢ ã使ã£ã¦ãããã)
å®è¡ä¾4: ã²ã¼ã ãä½ã£ã¦ããã
ããªã
ã·ã³ãã«ãªã²ã¼ã ãã§ããRubyã¹ã¯ãªããã使ãã¦ãã ããã ãã®Rubyã¹ã¯ãªãããrubyonbrowserä¸ã§å®è¡ããããã§ãã
- URL 㯠https://rubyonbrowser.ongaeshi.me/
- å¾ãã«ã¯ã¨ãªæåå ?q2=
- ã³ã¼ãããã¹ãã URLã¨ã³ã³ã¼ãã£ã³ã°ããæååã q ã®ãã©ã¡ã¼ã¿ã«è¨å®
ChatGPT
ãããã¾ãããã·ã³ãã«ãªRubyã¹ã¯ãªããã使ãã¦ããããrubyonbrowserä¸ã§å®è¡ããããã®URLãçæãã¾ããã²ã¼ã ã®å 容ã«ã¤ãã¦ãã©ã®ãããªãã®ã叿ããã¾ããï¼ä¾ãã°ããæ°å½ã¦ã²ã¼ã ããããããããã²ã¼ã ããªã©ãåºæ¬çãªãã®ã§ããã°å®è£ å¯è½ã§ãã
ããªã
æ°å½ã¦ã²ã¼ã
ChatGPT
æ°å½ã¦ã²ã¼ã ã®Rubyã¹ã¯ãªããã使ãã¾ãããã®ã²ã¼ã ã§ã¯ãã³ã³ãã¥ã¼ã¿ã1ãã100ã®éã§ã©ã³ãã ã«æ°ãé¸ã³ãã¦ã¼ã¶ã¼ããã®æ°ãå½ã¦ãã¾ã§æ¨æ¸¬ãç¶ãã¾ããã¦ã¼ã¶ã¼ãæ°ãå ¥åããã¨ãã³ã³ãã¥ã¼ã¿ã¯ãã®æ°ãæ£è§£ããé«ããä½ãããæãã¾ããæ£è§£ãå½ã¦ãã¨ã²ã¼ã ãçµäºãã¾ãã
æ°å½ã¦ã²ã¼ã ã®Rubyã¹ã¯ãªãããURLã¨ã³ã³ã¼ãã£ã³ã°ãã¾ããã以ä¸ã®URLã使ç¨ãã¦rubyonbrowserã§ã²ã¼ã ãå®è¡ã§ãã¾ãã
https://rubyonbrowser.ongaeshi.me/?q2=
ãªã³ã¯ãã¯ãªãã¯ããã¨ãã²ã¼ã ãéå§ããã¾ããæ¥½ããã§ãã ããï¼
ããªã
gets ã使ããªãã®ã§ã³ã³ãã¥ã¼ã¿ãèªåã§å ¥åãããããªæ¹å¼ã«ã§ãã¾ããï¼
ChatGPT
äºè§£ãã¾ãããgetsã使ç¨ããªãã§ãã³ã³ãã¥ã¼ã¿ãèªåã§æ°ãæ¨æ¸¬ããæ¹å¼ã«å¤æ´ãã¾ãããã®å ´åãã³ã³ãã¥ã¼ã¿ã¯ä¸å®ã®ã«ã¼ã«ã«åºã¥ãã¦æ°ãæ¨æ¸¬ããããã«å¿ãã¦æ¬¡ã®æ¨æ¸¬ãè¡ãã¾ãã
ã³ã³ãã¥ã¼ã¿ãèªåã§æ°ãæ¨æ¸¬ããæ¹å¼ã®æ°å½ã¦ã²ã¼ã ã®Rubyã¹ã¯ãªãããURLã¨ã³ã³ã¼ãã£ã³ã°ãã¾ããã以ä¸ã®URLã使ç¨ãã¦rubyonbrowserã§ã²ã¼ã ãå®è¡ã§ãã¾ãã
https://rubyonbrowser.ongaeshi.me/?q2=
ãªã³ã¯ãã¯ãªãã¯ããã¨ãã²ã¼ã ãéå§ããã¾ããæ¥½ããã§ãã ããï¼
ææ³
æå¾ã¯ç°¡åãªã²ã¼ã ãä½ã£ã¦ãããã¾ãããçããå´ã® AI é¨åããã¡ããè¦æ±ããã°ä½ã£ã¦ãããã®ã¯ãããã§ããã
ã¾ã¨ã
ããã³ããå´ã« URL ãå«ãã¦çæããã¦ããã¨å¾ãããã£ãããã°ãå確èªããã¨ãããä»åã®ããã«ããã°ã«è²¼ãä»ããã¨ãã«ããã«ç¢ºèªã§ããã®ã§çµæ§ä¾¿å©ã§ãããã®å ´ã§ã³ã¼ãã夿´ãã¦ç¢ºèªã§ããã®ãããã§ããæ¯éã¿ãªãããè²ã 㪠Ruby ã³ã¼ããçæããã¦å®è¡ãã¦ã¿ã¦ãã ããã