Problem:
数列

次のように定義されている数列があります。

すべての偶数番目の項は一つ前の項に 2 を掛けたものと等しい数である。

すべての奇数番目の項は一つ前の項を 3 で割ったものと等しい数である。

この数列の初項 a を読み込み、初項から第 10 項までの和 s(10) を出力するプログラムを作成してください。

Input

入力は複数のテストケースからなります。各テストケースとして、数列の初項を表す実数 a (1.0 ≤ a ≤ 10.0) が１行に与えられます。

テストケースの数は 50 を超えません。

Output

テストケースごとに s(10) を１行に出力します。

出力は0.000001以下の誤差を含んでもよい。

Sample Input

1.0
2.0
3.0

Output for the Sample Input

7.81481481
15.62962963
23.44444444

Solution in C# (judge verdict: Accepted)

using System;
using System.Collections.Generic;
using System.Linq;

namespace AOJ0055
{
    class Program
    {
        static void Main()
        {
            foreach (var sum in ReadInputs().Select(first => EnumerateSequence(first).Take(10).Sum(i => i)))
            {
                Console.WriteLine(sum);
            }
        }

        public static IEnumerable<double> ReadInputs()
        {
            string line;
            while ((line = Console.ReadLine()) != null)
            {
                yield return double.Parse(line);
            }
        }

        public static IEnumerable<double> EnumerateSequence(double first)
        {
            yield return first;

            var value = first;

            while (true)
            {
                yield return (value *= 2);
                yield return (value /= 3);
            }
// ReSharper disable FunctionNeverReturns
        }
// ReSharper restore FunctionNeverReturns
    }
}