第13回演習課題の解説 1 第13回演習課題(1) 1. 任意の数nをキーボードから入力して、その数nの 階乗n!の桁数を求めるプログラムを作成せよ。そし て、横軸:n、縦軸:n!の桁数のグラフを書け(nは1 から100とする)。ただし、桁数は近似で良い。 2 第13回演習課題(1)の解答 ans13-1.cc 階乗を普通に計算すると桁あふれを起こすので、対数を取 る 桁数は、底が10の対数を取ると求められる Int n = 20; int keta = (int)(log((double)n)/log(10.0)) + 1; 2が出力される 3 第13回演習課題(2) 2. プログラムを作り、次の問いを解け 4 左右どちらから読んでも同じ値になる数を回文数という 2桁の数の積で表される回文数のうち、最大のものは 9009 = 91 × 99 である では、3桁の数の積で表される回文数の最大値を求めよ 第13回演習課題(2)の解答 ans13-2.cc 任意の整数のk桁目の数字を取り出す関数を定義して、地道 に計算する bool型 true(真)とfalse(偽)の二値を取る変数型 C++で導入された 授業では説明しなかっ たけれど 5
© Copyright 2024 ExpyDoc