プログラム問題集

プログラム問題集

多分プログラミングの問題集でも書いていく

質量[kg]からニュートン[N]を求める

問題

質量m[kg]を入力すると、力[N]を表示するプログラムを作りましょう。
・使う加速度は重力加速度9.8[m/s2]とします
・入力値が数値以外の場合は再入力を求めます


ニュートン第二法則
 F[N] = m[kg] × a[m/s2]で有名な式です。
質量1kgの物体に加速度1m/s2を生み出す力を1Nとしています。


 例えば、1kgの重りを持ち上げて手を放した場合、重力に引かれて下に落ちます。
重力加速度は9.8m/s2なので、1[kg] × 9.8[m/s2]から9.8[N]の力がかかっていると言えます。
2kgの重りならば、2[kg] × 9.8[m/s2]から19.6[N]となります。

重さを入力してください[kg]
>test
重さを入力してください[kg]
>--
重さを入力してください[kg]
>100
980[N]です。
解答例

C#

using System;

namespace Newton_Unit
{
    class Program
    {
        static void Main(string[] args)
        {
            SecondLawOfMotion SLoM = new SecondLawOfMotion();
            double mass;
            String str;

            do
            {
                Console.WriteLine("重さを入力してください[kg]");
                str = Console.ReadLine();
            } while (!double.TryParse(str, out mass));

            Console.WriteLine("{0}[N]です。", SLoM.GetForce(mass));
        }
    }

    public class SecondLawOfMotion
    {
        private const double acceleration = 9.8;

        public double GetForce(double mass)
        {
            return mass * acceleration;
        }
    }
}