C++
 Computer >> コンピューター >  >> プログラミング >> C++

C++でキロバイトをバイトとビットに変換するプログラム

キロバイト(KB)を入力として受け取り、それをバイト数とビット数に変換するC++プログラムを紹介します。データサイズの単位変換は、プログラミングの基礎を学ぶうえで非常に重要なテーマです。

ビット(Bit)とは

コンピュータにおいて、ビットは情報の最小単位であり、0と1という2つの整数値で表されます。コンピュータ内のすべての情報は、この2つの数字の列として処理されます。

Nビットで表現できるパターン数は 2N 通りとなります(Nは1以上の任意の整数)。

バイト(Byte)とは

コンピュータにおいて、バイトは8ビットで構成される単位です。バイト1つで英数字1文字、または0から255までの範囲の数値を表現できます。

1バイト = 8ビット

これは 28 = 256 通りのパターンを意味します。

バイトの主な単位

  • 1キロバイト(KB) = 1,024バイト
  • 1メガバイト(MB) = 1,048,576バイト
  • 1ギガバイト(GB) = 1,073,741,824バイト

実行例

入力1: kilobytes = 10
出力: 10 Kilobytes = 10240 Bytes and 81920 Bits

入力2: kilobytes = 1
出力: 1 Kilobytes = 1024 Bytes and 8192 Bits

変換のアプローチ

  • キロバイト単位のデータを入力として受け取る
  • キロバイトをバイトに変換する公式を適用する
    バイト数 = キロバイト × 1024
  • キロバイトをビットに変換する公式を適用する
    ビット数 = キロバイト × 8192

アルゴリズム

開始
ステップ1: ビットに変換する関数を宣言
    long Bits(int kilobytes)
        long Bits = 0 を設定
        Bits = kilobytes * 8192 を設定
        Bits を返す
ステップ2: バイトに変換する関数を宣言
    long Bytes(int kilobytes)
        long Bytes = 0 を設定
        Bytes = kilobytes * 1024 を設定
        Bytes を返す
ステップ3: main() 内で
        int kilobytes = 10 を宣言
        Bits(kilobytes) を呼び出す
        Bytes(kilobytes) を呼び出す
終了

C++サンプルコード

#include <bits/stdc++.h>
using namespace std;
// ビットに変換する関数
long Bits(int kilobytes) {
    long Bits = 0;
    Bits = kilobytes * 8192;
    return Bits;
}
// バイトに変換する関数
long Bytes(int kilobytes) {
    long Bytes = 0;
    Bytes = kilobytes * 1024;
    return Bytes;
}
int main() {
    int kilobytes = 10;
    cout << kilobytes << " Kilobytes = " << Bytes(kilobytes) << " Bytes and " << Bits(kilobytes) << " Bits";
    return 0;
}

実行結果

上記のコードを実行すると、以下の出力が生成されます。

10 Kilobytes = 10240 Bytes and 81920 Bits

まとめ

キロバイトからバイトへの変換は「×1024」、ビットへの変換は「×8192」というシンプルな計算で実現できます。また、long型を使用することで、大きな値でもオーバーフローを気にせず扱える点もポイントです。単位変換の仕組みを理解すれば、メガバイトやギガバイトへの拡張も容易に行えます。

  1. C++で対角行列・スカラー行列を判定するプログラムの書き方

    行列 M[r][c] が与えられたとき、「r」は行数、「c」は列数を表し、r = c のとき正方行列となります。本記事では、与えられた正方行列が対角行列であるか、スカラー行列であるかを判定し、該当する場合には「yes」を出力する方法を解説します。 対角行列とは 正方行列 m[][] が対角行列であるのは、主対角線以外の要素がすべてゼロである場合、かつその場合に限ります。 下図のように、赤色で示された要素が主対角成分(非ゼロ)であり、それ以外の要素はすべてゼロになっているため、この行列は対角行列です。 入出力例 Input: m[3][3] = { {7, 0, 0}, {0, 8, 0}

  2. 摂氏を華氏に変換するC++プログラム

    この記事では、C++を使って摂氏(℃)の温度を華氏(℉)に変換するプログラムを紹介します。摂氏から華氏への変換は、次のシンプルな数式で行えます。 F = (9 × C ÷ 5) + 32 ここで、Cは摂氏温度、Fは華氏温度を表します。例えば、摂氏37度は華氏98.6度に相当し、これは人間の平熱に近い値です。 アルゴリズム 処理の流れは以下の通りです。 開始  摂氏温度Cを入力する  F = (9C/5) + 32 を計算する  結果Fを返す 終了 サンプルコード #include<iostream> using namespace std; int main() {