そもさん~

Q.0.1 を 100 回たして答えが 10.0 になるプログラムを書いてください。


ヒント: 以下のコードの日本語部分をコードに変えてください。

【VB】以下の2つのデータ型でくらべてみてね。
Option Strict On の環境でおこなってください。
Module Module1

     Sub Main()

        Dim d1 As Double

        Dim d2 As Decimal

 

        d1 = 初期化処理

        d2 = 初期化処理

        For index As Integer = 1 To 100

            d1に0.1を加える処理

            d2に0.1を加える処理

        Next

 

        Console.WriteLine(d1)

        Console.WriteLine(d2)

    End Sub

 

End Module



【C#】以下の2つのデータ型を比べてみてね。

using System;

using System.Collections.Generic;

using System.Text;

 

namespace ConsoleApplicationCS

{

    class Program

    {

        static void Main(string[] args)

        {

            double d1;

            decimal d2;

 

            d1 = 初期化処理;

            d2 = 初期化処理;

            for (int i = 1; i <= 100; i++)

            {

                d10.1を加える処理

                d20.1を加える処理

            }

            Console.WriteLine(d1);

            Console.WriteLine(d2);

        }

    }

}


この問題のみどころ

浮動小数点演算では、答えが10.0にならないことを確かめましょう。
0.1 と書くとハマります。