ページ 11

2進対数について

Posted: 2018年11月15日(木) 17:38
by dshshh11
C言語 TeraTeです
2進対数の組み込みかたがわかりません


x=log₂1/6

どうのようにコードを書けばいいですか?

Re: 2進対数について

Posted: 2018年11月15日(木) 18:48
by かずま
2進対数とは、底が 2である対数のことですか?
TeraTe とは何ですか?
使用するプログラミング言語は何ですか?
プログラミング言語が C なら、底が 2である対数の関数として
log2, log2f, log2lが用意されているので次のように書けるでしょう。

コード:

#include <stdio.h> // printf
#include <math.h>  // log2

int main(void)
{
	double x = log2(1.0 / 6);
	printf("%g\n", x);
}
上記のプログラムは理解できますか?
log2(1/6) ではなく、log2(1.0 / 6) になっている理由が分かりますか?

フォーラム(掲示板)ルール
を読んで感想を聞かせてください。
回答者の質問には全部答えましょう。
これとこれが分かりませんという回答でも構いません。
オフトピック
日本語の文章を書くときは、句読点を付けましょう。
句点とは文末の「。」のことです。

Re: 2進対数について

Posted: 2018年11月15日(木) 19:25
by かずま
かずま さんが書きました:
6年前
使用するプログラミング言語は何ですか?
最初の質問に「C言語」と書いてあるのに、この質問は変ですね。

使っているコンパイラを尋ねたかったのです。

「学習用C言語開発環境 EasyIDEC」のように log2 がない
コンパイラもあるからです。