1.0x143fを10進数に変換
16**3   16**2   16**1   16**0
4096    256     16      1
*1      *4      *3      *f
=4096   =1024   =48     =15
4096+1024+48+15=5183             答え 5183
2.0b10011011を10進数に変換
2**7   2**6   2**5   2**4   2**3   2**2   2**1   2**0
128    64     32     16     8      4      2      1
*1     *0     *0     *1     *1     *0     *1     *1
=128   =0     =0     =16    =8     =0     =2     =1
128+0+0+16+8+0+2+1=155           答え 155
3.0x146 + 0x67の計算を行った結果を10進数で示す
0x146
16**2   16**1   16**0
256     16      1
*1      *4      *6
=256    =64     =6
256+64+6=326
0x67
16**1   16**0
16      1
*6      *7
=96     =7
96+7=103
0x146 + 0x67 = 326 + 103
             = 429                答え 429
4.0x146 + 0x67の計算を行った結果を2進数で示す
   1   4   6
+)     6   7
______________
   1  10  13
    1  a(10)  d(13)
 0001  1010   1101                答え 110101101
5.プログラム
#!/usr/koeki/bin/ruby
# -*- coding: utf-8 -*-
name = []
x= 0
print"あなたの名前をローマ字で入力してください。\n"
name = gets.chomp!.to_s
while x < name.length
  printf("%s  %x \n",name[x],name[x].ord)
  x += 1
end
6.プログラムの説明
・配列のときと同じように[]を利用すると簡単に取り出せる
・初期値を0とした上で、whileの繰り返しの中でiの値を1ずつ変更していけば構
成する文字の文字コードを全て明らかにすることができる
・値を文字列に変換するために%s、16進数の文字コードを表示するために%xを使
う。
7.プログラムの実行結果
sime{YAHAGI Anna}% ./report7.rb                                     [~/program]
あなたの名前をローマ字で入力してください。
yahagianna
y  79 
a  61 
h  68 
a  61 
g  67 
i  69 
a  61 
n  6e 
n  6e 
a  61 
8.感想
問1から問4まではスムーズに終わったが、プログラムを作るのが難しかった。
でも、難しかったプログラムは先輩に教えてもらいながらやって、?理解できた。
9.参考文献
http://roy/~naoya/ruby/9.html