高1レベルで100の階乗の求め方を教えてください

このQ&Aに関連する最新のQ&A

A 回答 (4件)

>求めるのは0の桁数でした・・・。



 100!を素因数分解したとき、素数2の個数と 素数5の個数を数えてください。
 2つの個数のうち、少ない個数の数だけ0がつきます。
 (10=2×5 だから)

1) 素数2の個数
  2の倍数の個数: 50個
  4の倍数の個数: 25個
  8の倍数の個数: 12個
  16の倍数の個数: 6個
  32の倍数の個数: 3個
  64の倍数の個数: 1個 (+
-----------------
  素数2の個数 = 97個

2) 素数5の個数
  5の倍数の個数: 20個
  25の倍数の個数: 4個 (+
-----------------
  素数5の個数 = 24個
    • good
    • 0

100!=


9332621544394415268169923885626670049071596826438162146859296389
5217599993229915608941463976156518286253697920827223758251185210
916864000000000000000000000000
158桁ですかね・・・
まともに計算するのは無理かな・・・?
エクセルでも数値としては桁が大きすぎて持てないし。
でもエクセルで、文字列として表すことはできます。
以下のプログラムをエクセルのVBAにコピーして、シートで、
=F(100)とすれば文字列としてできます。
Function s1(a As String, b As String, c As Single) As String
If a = "" Then
If c = 0 Then s1 = "" Else s1 = c
Else
t = Val(Right(a, 1)) + Val(Right(b, 1)) + c
s1 = s1(Left(a, Len(a) - 1), Left(b, Len(b) - 1), Int(t / 10)) & (t Mod 10)
End If
End Function

Function s(a As String, b As String)
Dim aa As String
Dim bb As String
aa = a
bb = b
If Len(aa) > Len(bb) Then bb = String(Len(aa) - Len(bb), "0") & bb
If Len(aa) < Len(bb) Then aa = String(Len(bb) - Len(aa), "0") & aa
s = s1(aa, bb, 0)
End Function

Function d(a As String) As String
While Left(a, 1) = "0"
a = Right(a, Len(a) - 1)
Wend
If a = "" Then d = "0" Else d = a
End Function

Function m(a As String, b As String) As String
If b = "" Then m = "": Exit Function
For i = 1 To Val(Right(b, 1))
m = s(m, a)
Next i
m = d(s(m(a, Left(b, Len(b) - 1)) & "0", m))
End Function

Function F(n)
If n = 0 Then F = 1 Else F = m(Str(n), F(n - 1))
End Function

この回答への補足

求めるのは0の桁数でした・・・。すいません。

補足日時:2009/05/13 21:20
    • good
    • 0

「高1レベル」に何の意味があるのかわかりませんが, 「地道に計算する」という方法を排除するわけにはいくまい.

    • good
    • 0

>高1レベルで100の階乗の求め方を教えてください



パソコンを買う。
そして計算する。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセル プルダウンの作り方

お世話になります。
エクセルでプルダウンの作り方を教えていただけませんでしょうか?
住所を▼のボタンでクリックしたら【北海道,青森,秋田,岩手・・・】などの選択ができるようにしたいのです。
宜しくお願いします。

Aベストアンサー

メニューから「データ」、「入力規則」、「設定」で「入力値の種類」を「リスト」を選択します。
そうすると「元の値」という表示がでますので、そこで前もって作っておいたリストの範囲を指定します。
多くないのでしたら、そのままそこにカンマで区切って入力しても出来ます。

Q無限積Π(n=1~∞)(1-1/2n)の値の求め方を教えて下さい。

無限積Π(n=1~∞)(1-1/2n)の値の求め方を教えて下さい。

無限積でn=1から∞までのΠ(1-1/2n)の値の求め方がさっぱりわかりません。
この問題の解き方と答えを教えて下さい。

Aベストアンサー

誤った回答をしたため、きちんと調べました。

実数xに対して

1+x≦e^x

が成り立つから(微分せよ)

1-1/k≦e^{-1/k}

k=2,4,6… と辺々をかけると

0≦(1-1/2)(1-1/4)…(1-1/2n)≦e^{-1/2(1+1/2+…1/n)} …(ア)  

(ア)において n→∞ とすると 右辺→0 となるから Π(n=1~∞)(1-1/2n)は0に発散する。

Qエクセルでプルダウンメニューの作り方

  エクセルの画面で、よく三角形を逆さまにした形をクリックするといくつかメニューが出てき、どれかを選べるようになっていますが、その作り方を教えてください。
 会社で人事を担当していますが、三角形(プルダウンボタン)をクリックすると社員氏名一覧が表示され、そこから選択できるようにしたいのです。
 しばらく自力でいろいろやってみましたが、さっぱり見当がつかず、どうやればいいのか分かりませんでした。よろしくお願いします。

Aベストアンサー

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならないでしょうか?
Excel2007の場合は↓のURLが参考になるかもしれません。

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html

尚、同一Sheetに「名簿表」を作成する場合は名前定義する必要はなくて
「元の値」の右側の四角をクリックし、リスト表示したいセルをそのまま範囲指定すればOKです。

以上、お役に立てば良いのですが・・・m(_ _)m

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならない...続きを読む

Q高1レベルです!教えてください><

学年末試験のテスト範囲で

a2+b2+c2-ab-bc-ca≧0を証明せよ

という問題があるのですが、どのように証明するのですか?

ちなみにaなどのとなりについてる2は二乗を表してます。
(A二乗+B二乗+C二乗ーAB-BC-CA≧0)
小さくするやり方がわからなかったのでこのようになりました。

多分因数分解からの証明だとは思うのですが、因数分解すら
出来ません><
どなたか教えてください~

Aベストアンサー

この問題は、両辺を2倍します。

すると、2a^2+2b^2+2c^2-2ab-2bc-2ca
  =(a^2-2ab+b^2)+(b^2-2bc+c^2)+(c^2-2ca+a^2)
  =(a-b)^2+(b-c)^2+(c-a)^2≧0と変形できますよね!
で、(a-b)^2≧0、(b-c)^2≧0、(c-a)^2≧0より、
  2a^2+2b^2+2c^2-2ab-2bc-2ca≧0
よって、2(a^2+b^2+c^2-ab-bc-ca)≧0の両辺を2で割ると、
  a^2+b^2+c^2-ab-bc-ca≧0が成り立ちます。

Qエクセル(Excel) 納品書の作り方【画像修正版

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が見にくかったのでシート<CENTER></CENTER>だけにしました。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルでコピー!
そのまま最後の24行目までコピーしておきます。

F4セルには
=IF(COUNTBLANK(B4:E4),"",D4*E4)
という数式を入れ、F24までオートフィルでコピー!

これでB列に商品番号を入力すればSheet2のデータが反映され、
E列に数量を入力でF列に金額が表示されると思います。

最後に合計金額のF26セルは
=IF(COUNT(F4:F24),SUM(F4:F24),"")
手数料のF27セルは
=IF(F26="","",F26*0.2)

これで何とか形にならないでしょうか?

※ 振込金額の欄は不明ですので手を付けていません。

参考になりますかね?m(_ _)m

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルで...続きを読む

Q高1レベル(?)の計算がわからないので教えてください

すいません・・・下記の問題につまづいています。よろしければご教授ください。

<問題>
2桁の整数がある。その数の平方は、一の位と十の位を入れ替えた数の平方より729小さいという。この整数を求めよ。

<私の考え>
・整数を10a+bとする。
・条件から
(10a+b)^2=(10b+a)^2-729

ここまでは参考書にある立式と同じでしたが、私が考えた続きは
100a^2+20ab+b^2=100b^2+20ab+a^2-729
99a^2-99b^2=-729
となり、このあとどうしてよいか混乱してしまいました。

解説では
(10a+b)^2=(10b+a)^2-729
a^2-b^2=-8
(b^2-a^2)=8
(b-a)(b+a)=8
a,bは一桁の整数だから
(b-a,b+a)=2,4
よって
a=1,b=3
求める数は13

となっていました。

なぜこのような展開になってしまうのかわかりません。
特に
(10a+b)^2=(10b+a)^2-729
から
a^2-b^2=-8

への飛躍の仕方がわかりません。
その後の因数分解は、公式に乗っ取っていることは理解しています。

よろしく御願いします。

すいません・・・下記の問題につまづいています。よろしければご教授ください。

<問題>
2桁の整数がある。その数の平方は、一の位と十の位を入れ替えた数の平方より729小さいという。この整数を求めよ。

<私の考え>
・整数を10a+bとする。
・条件から
(10a+b)^2=(10b+a)^2-729

ここまでは参考書にある立式と同じでしたが、私が考えた続きは
100a^2+20ab+b^2=100b^2+20ab+a^2-729
99a^2-99b^2=-729
となり、このあとどうしてよいか混乱してしまいました。

解説では
(10a+b)^2=(10b+a)^...続きを読む

Aベストアンサー

問題が間違っている気がします。

どう考えても、
13^2 = 31^2 - 792
です。
792 / 99 = 8
===============
題意を満たす数って存在しないんじゃない?
a^2 - b^2って絶対に整数だけど
729 / 99 って整数じゃないし

Qエクセル(Excel) 納品書の作り方【改めて】

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が貼り付けてあります。商品名は1番以外伏せさせていただいています。
くっつけてありますが、左側がシート1・右側がシート2です。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

画像がいまいちよく見えないのですが、納品書の項目は左から、No、商品番号、商品名、単価、数量、金額でいいのでしょうか(名前は多少違っていても意味があっていればもんだいないです)

でしたら、
C1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,2,FALSE))
D1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,3,FALSE))
E1セルは空白で
F1セルに=IF(D2="","",D2*E2)
といれて、C1からF1までをコピーしてその下の行にタテに貼り付ければ出来ますよ。
おそらくエラーが出たのは、コピーしたときにVLOOKUP関数の最初のセルの指定がずれてしまっているのでは無いかと思いますよ。     

Q100×(1+r)2+50×(1+r)=178.5のrの値を求める計算

100×(1+r)2+50×(1+r)=178.5のrの値を求める計算過程を教えて下さい。
1番目の()2は二乗です。

Aベストアンサー

x=1+rとおくと
100x^2+50x-178.5=0
2次方程式の解の公式により
x=1.109または-1.609
よって
r=0.109または-2.609

Qエクセル2007でプルダウンで選んだものに反応

Excel2007でプルダウンで選んだものに反応して隣のセルが自動入力される方法(エクセル2007)
A1をプルダウンで「猫」「犬」から選べるようにし、「猫」を選んだ場合B1に自動に「111」が、「犬」を選んだ場合B1に自動に「222」と入力されるようにしたいです。
ご教授の程、宜しくお願いします。

Aベストアンサー

VLOOKUP関数での方法です。
(1)別シートに入力文字列と対応コード表を作成。(仮にSheet2のA:B列範囲で順不同)
(2)B1に=IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2FALSE),"")を設定
   入力文字列が存在しない場合は空白としています。

Q行列 以下の問題を教えてください。計算過程も教えてくれたら・・・。1 1 1 1 1 A=1 -1

行列
以下の問題を教えてください。計算過程も教えてくれたら・・・。1 1 1 1 1
A=1 -1 1 0 2
2 1 2 -1 5

以下のベクトル空間

W_{1}=(x∈R^5|Ax=0)
W_{2}=(Ax∈R^3|x∈R^5)

基及び次元を求める。

Aベストアンサー

Aのランクは掃き出してみればすぐわかります。
3ですよね。すると次元の定理から直ちにW1の次元は2、W2は3です。
W2の基底はR^3の一次独立な3本なら何でもOK
w1の基底はAX=0を地道に解いて下さい。


人気Q&Aランキング

おすすめ情報