学年

教科

質問の種類

情報:IT 高校生

本当に分からないです😢 写真2枚目にある指数部分には3にバイアス値である15を足しての所って15.25の15から来てるんですか?教えてください 情報本当に意味分からないです

小数部分を含む実数を表すことを考える。 コンピュータにおいては小数部分を含む値を表記するときには,浮動小数点数 が用いられる。 16ビットの浮動小数点数では, 1ビット目を符号部, 2~6ビット目を指数部, 7~16ビット目を仮数部とした16桁の2進法の表記で実数を表す。 この手順を 10進法の15.25を例として説明すると,次のようになる。 ① 10進法で表された値を 2進法で表す。 1 1 10進法の15.25は 152進法で1111 (2), 0.25 は 法で0.01(2)あるので, 1111.01 (2) となる。 4 = であるから2進 22 ② 2進法で表した値を「1.○○ × 2°」の形にする。 10進法で 1525 は ① より 1111.01 (2) となり,これは, 1111.01(2)= x 2 + 1 × 2 + 1 × 2′' + 1 × 2° + 0 × 2 " ' + 1 × 2 - 2 = 1 1 x 2 + 1 × 2 ' ' + 1 × 2 2 + 1 × 2 -3 + 0 × 2 4 + 1 × 25 × 2° となるので, 1.11101 × 2° と表すことができる。 これは,例えば10進法で 1234.56 1.23456×10°であるのと同様であり,位を下げた桁数が2の指数 となる。 3 ②で表したものから, 符号部,指数部, 仮数部を決め, 16ビットの2進法 で表記する。 ここでは符号部は0 を正, 1を負とする。 指数部は②の2の指 数にバイアス値として10進法の15を加え,その和を5ビットの2進数に変 換したものとする。 仮数部は②の「1.○○」の小数点以下の部分を左詰めとし、 空白となる桁には0を入れるものとする。 なお, 桁が足りない場合は下位を切 り捨てる。 ② で 1.11101 × 2°となったので, 符号部については,正なので 0, 指数部 では3にバイアス値である 15を足して18とし, これを2進法にして, 10010 とする。 さらに, 仮数部には 1.11101 の小数点以下の部分のみを入力する。空 白となる桁に0を入れて「1110100000」 とする。 符号部, 指数部, 仮数部をこの順に並べる。 ①~③より, 10進法で15.25 は, 16ビットの浮動小数点数では 「O 100101110100000」 と表される。

解決済み 回答数: 1
情報:IT 高校生

(5)についてです。 return 1とはどういうことですか?この場合kazuは5なので関係ないですか?

表示するに をひとまとまり する。 (kazu を指す。 8], [11, 0から ・参照す 値配 H ものを てい Foxr- を返す関数である。 (1) Tokuten [50, 40, (2) saidai 0 (3) bango=0 (4) 10から (5) (6) (7) ..(D), 35, 70] ① まで1ずつ増やしながら繰り返す もしTokuten [1] (2) saidaiならば! saidai Tokuten[i] bango- (日) 表示する(最高点 1 ', saidai, "出席番号 (イ) (エ) () (Tokuten) + (Tokuten) 1 < 素数 (Tokuten) (7) bango (ケ) (1)> bango + 1 -1 (カ 444 saidai 配 Takuten 要素を比較する (関数) 次のプログラムの(1)~(3),(5)5が,(4)12が入力された場合に「答え は」に続いて表示されるも def funcl (kazu): x = kekka=0 for i in range (1, kazu + 1): kekka = kekka + i return kekka int(input('正の整数を入力)) 8 print('答えは', func1 (x)) (3) 234 def func3 (kazu): pai = 3.14 (2) 1 kekka = 1 for i in range (kazu, 0, -1) def func2(kazu): 2 3 4 5 6 7 kekka = kekka * 1 return kekka x = int(input('正の整数を入力 8 print('答えは', func2 (x)) (4) return pai * kazu * kazu 3 15 x = float(input('正の数を入力) 6 print('答えは', func3(x)) def func4(kazu): kekka = [] for i in range(1, kazu if kazu i == 0: kekka.append(i 6 return kekka 7 14 15 (5) def func5(kazu): if kazu == 0: return 1 return kazu * func5 (kazu-1) 6 x = int(input('正の整数を入力リ) 7 print('答えは', func5(x)) 8 x = int(input('正の整数を入 9 print('答えは', func4(x)) input()の戻り値は文字列であ ため,(3)では float() を使って 小数点型に,そのほかは int( ) 数型に変換している。

解決済み 回答数: 1
1/14