{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### 5-1-5 Integer" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixnum\n", "Bignum\n" ] }, { "data": { "text/plain": [ "Bignum" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p 100.class\n", "p 10000000000000000000000000000000000.class" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "60\tFixnum\n", "61\tFixnum\n", "62\tBignum\n", "63\tBignum\n", "64\tBignum\n", "65\tBignum\n", "66\tBignum\n", "67\tBignum\n", "68\tBignum\n", "69\tBignum\n", "70\tBignum\n" ] }, { "data": { "text/plain": [ "60" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "60.step(70, 1).each{ |i| puts \"%i\\t%s\"%[i, (2 ** i).class]}" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "true" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "1.odd?\n", "2.even?" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1, 3, 5, 7, 9]\n", "[0, 2, 4, 6, 8, 10]\n" ] }, { "data": { "text/plain": [ "[0, 2, 4, 6, 8, 10]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p (0..10).to_a.select(&:odd?)\n", "p (0..10).to_a.select(&:even?)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3\n", "3\n", "1\n" ] }, { "data": { "text/plain": [ "1" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p 2.next\n", "p 2.succ\n", "p 2.pred" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "ename": "ZeroDivisionError", "evalue": "divided by 0", "output_type": "error", "traceback": [ "\u001b[31mZeroDivisionError\u001b[0m: divided by 0", "\u001b[37m(pry):20:in `/'\u001b[0m", "\u001b[37m(pry):20:in `
'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `evaluate_ruby'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:323:in `handle_line'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:243:in `block (2 levels) in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `block in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/backend.rb:65:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/backend.rb:12:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:87:in `execute_request'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:47:in `dispatch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:37:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/command.rb:70:in `run_kernel'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/command.rb:34:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/bin/iruby:5:in `'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/bin/iruby:23:in `load'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/bin/iruby:23:in `
'\u001b[0m" ] } ], "source": [ "1 / 0" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\"30\"\n", "\"11110\"\n", "\"36\"\n", "\"1e\"\n" ] }, { "data": { "text/plain": [ "\"1e\"" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p 30.to_s\n", "p 30.to_s(2)\n", "p 30.to_s(8)\n", "p 30.to_s(16)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[\"A\", \"B\", \"C\", \"D\", \"E\", \"F\"]" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(65..70).map {|n| n.chr}" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "ename": "RangeError", "evalue": "256 out of char range", "output_type": "error", "traceback": [ "\u001b[31mRangeError\u001b[0m: 256 out of char range", "\u001b[37m(pry):26:in `chr'\u001b[0m", "\u001b[37m(pry):26:in `
'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `evaluate_ruby'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:323:in `handle_line'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:243:in `block (2 levels) in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `block in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/backend.rb:65:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/backend.rb:12:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:87:in `execute_request'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:47:in `dispatch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:37:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/command.rb:70:in `run_kernel'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/command.rb:34:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/bin/iruby:5:in `'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/bin/iruby:23:in `load'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/bin/iruby:23:in `
'\u001b[0m" ] } ], "source": [ "256.chr" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "12354" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "\"あ\".ord" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "\"あぁい\"" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "[12354, 12353, 12356].pack(\"U*\")" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[12354, 12356, 12358, 12360]" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "\"あいうえ\".unpack(\"U*\")" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "65" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "\"A\".ord" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "\"あ\"" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "12354.chr(\"UTF-8\")" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "123\n", "1456312066\n" ] }, { "data": { "text/plain": [ "1456312066" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p '123'.to_i\n", "p Time.now.to_i" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "234" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Integer('234')" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": false }, "outputs": [ { "ename": "TypeError", "evalue": "can't convert nil into Integer", "output_type": "error", "traceback": [ "\u001b[31mTypeError\u001b[0m: can't convert nil into Integer", "\u001b[37m(pry):43:in `Integer'\u001b[0m", "\u001b[37m(pry):43:in `
'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `evaluate_ruby'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:323:in `handle_line'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:243:in `block (2 levels) in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `block in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/backend.rb:65:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/backend.rb:12:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:87:in `execute_request'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:47:in `dispatch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:37:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/command.rb:70:in `run_kernel'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/command.rb:34:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/bin/iruby:5:in `'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/bin/iruby:23:in `load'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/bin/iruby:23:in `
'\u001b[0m" ] } ], "source": [ "Integer(nil)" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "123" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Integer '123'" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[1]" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Array(1)" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[1, 2]" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Array([1, 2])" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Array(nil)" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "collapsed": false }, "outputs": [ { "ename": "ArgumentError", "evalue": "invalid value for Integer(): \"abc\"", "output_type": "error", "traceback": [ "\u001b[31mArgumentError\u001b[0m: invalid value for Integer(): \"abc\"", "\u001b[37m(pry):52:in `Integer'\u001b[0m", "\u001b[37m(pry):52:in `
'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `evaluate_ruby'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:323:in `handle_line'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:243:in `block (2 levels) in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `block in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/backend.rb:65:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/backend.rb:12:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:87:in `execute_request'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:47:in `dispatch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:37:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/command.rb:70:in `run_kernel'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/command.rb:34:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/bin/iruby:5:in `'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/bin/iruby:23:in `load'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/bin/iruby:23:in `
'\u001b[0m" ] } ], "source": [ "Integer('abc')" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "collapsed": false }, "outputs": [ { "ename": "TypeError", "evalue": "can't convert Array into Integer", "output_type": "error", "traceback": [ "\u001b[31mTypeError\u001b[0m: can't convert Array into Integer", "\u001b[37m(pry):53:in `Integer'\u001b[0m", "\u001b[37m(pry):53:in `
'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:355:in `evaluate_ruby'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:323:in `handle_line'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:243:in `block (2 levels) in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:242:in `block in eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `catch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/pry-0.10.1/lib/pry/pry_instance.rb:241:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/backend.rb:65:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/backend.rb:12:in `eval'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:87:in `execute_request'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:47:in `dispatch'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/kernel.rb:37:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/command.rb:70:in `run_kernel'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/lib/iruby/command.rb:34:in `run'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/iruby-0.2.7/bin/iruby:5:in `'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/bin/iruby:23:in `load'\u001b[0m", "\u001b[37m/Users/mic/.rbenv/versions/2.2.2/bin/iruby:23:in `
'\u001b[0m" ] } ], "source": [ "Integer([1])" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1\n", "2\n", "3\n", "-----------------\n", "3\n", "2\n", "1\n" ] }, { "data": { "text/plain": [ "3" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "1.upto 3 do |num|\n", " puts num\n", "end\n", "\n", "puts '-----------------'\n", "\n", "3.downto 1 do |num|\n", " puts num\n", "end" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0\n", "1\n", "2\n" ] }, { "data": { "text/plain": [ "3" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "3.times do |num|\n", " puts num\n", "end" ] }, { "cell_type": "code", "execution_count": 48, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "Enumerator" ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "3.times.class" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 5-1-6 Float" ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.9999999999999999\n" ] }, { "data": { "text/plain": [ "0.9999999999999999" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sum = 0.0; 10.times{|i| sum += 0.1 }; p sum" ] }, { "cell_type": "code", "execution_count": 58, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Infinity\n", "-Infinity\n", "NaN\n" ] }, { "data": { "text/plain": [ "NaN" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p 1.0 / 0 \n", "p -1.0 / 0\n", "p 0.0 / 0 " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 5-1-7 Rational" ] }, { "cell_type": "code", "execution_count": 59, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(1/3)" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "r = Rational(1, 3)" ] }, { "cell_type": "code", "execution_count": 60, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3\n", "1\n" ] }, { "data": { "text/plain": [ "1" ] }, "execution_count": 60, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p r.denominator\n", "p r.numerator" ] }, { "cell_type": "code", "execution_count": 66, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(1/1)\n" ] }, { "data": { "text/plain": [ "(1/1)" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sum = 0; 10.times{|i| sum += 1/10r }; p sum" ] }, { "cell_type": "code", "execution_count": 67, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(3/10)" ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "3.quo(10)" ] }, { "cell_type": "code", "execution_count": 68, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(1456312849490761/1000000)" ] }, "execution_count": 68, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Time.now.to_r" ] }, { "cell_type": "code", "execution_count": 69, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/latex": [ "$2+3\\imath$" ], "text/plain": [ "(2+3i)" ] }, "execution_count": 69, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Complex(2, 3)" ] }, { "cell_type": "code", "execution_count": 70, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/latex": [ "$2+2\\imath$" ], "text/plain": [ "(2+2i)" ] }, "execution_count": 70, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Complex('2+2i')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Ruby 2.2.2", "language": "ruby", "name": "ruby" }, "language_info": { "file_extension": "rb", "mimetype": "application/x-ruby", "name": "ruby", "version": "2.2.2" } }, "nbformat": 4, "nbformat_minor": 0 }