C#で1つの範囲を別の範囲に変換する方法


  1. 数値の範囲を別の範囲に変換する場合: 例えば、範囲[0, 10]の数値を範囲[50, 100]に変換する方法を示します。

    int originalMin = 0;
    int originalMax = 10;
    int newMin = 50;
    int newMax = 100;
    int originalValue = 5;
    float newValue = (float)(originalValue - originalMin) / (originalMax - originalMin) * (newMax - newMin) + newMin;

    上記の例では、元の範囲の最小値と最大値をoriginalMinoriginalMaxに設定し、新しい範囲の最小値と最大値をnewMinnewMaxに設定します。そして、変換したい元の値をoriginalValueに設定します。newValueには、元の範囲を新しい範囲に変換した結果が格納されます。

  2. 文字列の範囲を別の範囲に変換する場合: 例えば、範囲"A"から範囲"D"の文字列を範囲"X"から範囲"Z"の文字列に変換する方法を示します。

    string originalMin = "A";
    string originalMax = "D";
    string newMin = "X";
    string newMax = "Z";
    string originalValue = "B";
    int originalRange = originalMax[0] - originalMin[0];
    int newRange = newMax[0] - newMin[0];
    char newValue = (char)(originalValue[0] - originalMin[0] + newMin[0]);

    上記の例では、元の範囲の最小値と最大値をoriginalMinoriginalMaxに設定し、新しい範囲の最小値と最大値をnewMinnewMaxに設定します。そして、変換したい元の値をoriginalValueに設定します。newValueには、元の範囲を新しい範囲に変換した結果が格納されます。

以上が、C#で1つの範囲を別の範囲に変換する方法の例です。必要に応じて、これらの例を参考にしてコードをカスタマイズしてください。