- ベストアンサー
2進数の1の数を数える問題
dolittle0の回答
- dolittle0
- ベストアンサー率26% (11/42)
while ループの後に、if(bit) s++; を追加すればいいと思います。
関連するQ&A
- 10進数→2進数の出力について
コマンドライン引数から10進数の値を入力して 2進数に変換して出力しようとしています。 ※入力される10進数の値はかなり大きなものを想定しています。 現在は下記のようなコードで変換しようとしていますが失敗しています。 動作環境は『WindowsXP、Activeperl-5.12.4.1205』です。 拙い説明ですが、よろしくお願いいたします。 # コマンドライン引数は「9223372036854775808」 $n = unpack("B8", pack("C", $ARGV[0])); print n; # 実行結果は「11111111」 # 期待している出力結果は「1000・・・000」(←0が64個) 9223372036854775808
- ベストアンサー
- Perl
- C言語 10進数→2進数
キーボードで入力された1以上の正の整数n(1~15)を2進数(4bit)で出力するプログラムを作りたいんですが、 出力例に書かれている内容、 -出力例- 正の整数:12 整数 12 を2進数表記すると下位bitより 0011 となります。 ---- 上記の下位bit、というのはどういう意味でしょうか? また、この下位bitというものをどうやってプログラム上で 表記すればいいのでしょうか? 教えてください。
- ベストアンサー
- C・C++・C#
- おしえてください5
main関数内でchar型の変数word[20]を宣言し,scanfを用いて文字列を入力する. 再帰呼び出しでword内の文字列を逆順に表示する関数call_nextを作製し, 入力した文字列を逆順に表示せよ. ※グローバル変数は用いないこと.グローバル変数を用いた場合は0点とする. ※通常scanfではスペースは読み込めないが scanf(" %[^\n]", str); とすることで,スペースも読み込みができる. <実行結果例1> Input word(20). -> society society yteicos <実行結果> Input word(20). -> RATS & STAR RATS & STAR RATS & STAR
- 締切済み
- C・C++・C#
- 2進数を10進数にするプログラム作成について
10進数から2進数に変換するプログラムはできたのですが2進数から10進数に変換するプログラムが作れません。。 値を入力してください:1111←と入力(例) 10進数では15です。 もう一度実行しますか?(1…yes/2…no) というプログラムを作ろう思っています。 うまく作れずエラーばかり起きてしまいます。 どうか教えて下さい。お願いします。
- 締切済み
- 専門学校
- 8桁の2進数を10進数に変換する方法を教えてください。
キーボードから2進数を入力した値を10進数に変換し、変換結果を出力する方法が解りません。作成するにあたり仕様があり、私一人では解決できないので相談させていただきました。 <仕様は以下の通りです> (1)このプログラム(8桁の2進数を10進数に変換)をする際は、最後に出力する時(printf)以外は関数を使ってはいけません。 (2)キーボードから2進数を入力させる。 (3)空白(ブランク)が入力されても変換可能にする。 (4)入力された2進数は8桁にし、8桁以上の場合はエラーを出す。 (5)2進数の「0」と「1」以外の文字が入力された場合はエラーを出す。 (6)バイナリ変換をし、変換結果を出力する。 以上になります。 まだ、C言語を勉強を習い始めの初心者です。どうか、ご回答のほど宜しくお願いします。
- 締切済み
- C・C++・C#
- フローチャートお願いします!!!!!
問題1 入力された10進数の自然数Xを2進数yに変換し出力するプログラムのフローチャートをサブルーチンを含めてすべてかけ。しかし、整数型の変数aから第iビット目(最初を下位ビットとして第0ビットとせよ)を取り出す整数型関数(メソッド)get_bit(a,i)を作成すること。 これのプログラムの作成ができません。お願いします。returna&(1<<n)を使えば大丈夫と思いますが、なかなかうまくできません。JAVAで簡単にわかりやすくすべて書いてください。 問題2 キーボードから自然数nを入力し、1からNまでの和を求め、出力するプログラムのフローチャートをサブルーチンも含めてかけという問題です。これもJAVAでお願いします。
- 締切済み
- Java
- 8進数と16進数で表示するプログラム
int型変数bに10進数として数値を入力し、その値を実行結果のように8進数と16進数で表示するプログラムを作成しなさい という問題にとりかかっているのですが、いまいち理解できません scanfで値を入力させる項目は必要とわかるのですが、その他がどうしてもわかりません、ご教授して頂ければ幸いです
- 締切済み
- C・C++・C#
- 入力した任意の数の平方根を求める
C言語を少しずつですが勉強していて、最小値から最小値までの和を求めるのと、入力した数の2乗を求めるプログラムはわりと楽に完成したのですが、平方根を求めるというのができずに困っています。 プログラムの流れを説明すると、 1.どの処理を行うのか、数字+Enterで選択(平方根は、case 3です) 2.その処理を行う 3.結果の出力 です。 平方根の処理は、 scanfで実数を変数に代入→計算を行う関数を実行→結果を出力です。 症状としては、例えば4と入力して処理を実行すると、桁数のすごく大きい数が入力した数として処理され、また平方根も正しく求められていないようです。 (コンパイル時にエラーは出ていません)
- ベストアンサー
- C・C++・C#
お礼
ありがとうございます。