Составить ряд без массивов. Среди x1, …. X100 найти ближайшее к какому-нибудь целому

ColdHater

Есть задача: Пусть х1=0,3; х2=-0,3; хi=i+sin(xi-2), i=3,4,…100. Среди x1,….x100 найти ближайшее к какому-нибудь целому. Не могу составить х1=0,3; х2=-0,3; хi=i+sin(xi-2), пробовал так
for (int i = 3; i <= 10; i++)
            {
                if (i % 2 == 1)
                {
                    XThr = i + Math.Sin(XOne);
                    if(i != 3) XTwo = XThr;
                }
                else
                {
                    XThr = i + Math.Sin(XTwo);
                    XOne = XThr;
                }
                Console.Write(XThr + "\n");
            }
Но по сравнению с реализацией через массивы работает не правильно, не подскажите в чем проблема?
2 ответа

ColdHater

Какая-то формула... Непонятная. Вот эта: хi=i+sin(xi-2) Может вот так надо: хi=i+sin x(i-2)? То есть i-й элемент вычисляется на основе i-2 элемента. А то получается, что элемент вычисляется на основе самого себя... Это абсурд.


ColdHater

Какая-то формула... Непонятная. Вот эта: хi=i+sin(xi-2) Может вот так надо: хi=i+sin x(i-2)? То есть i-й элемент вычисляется на основе i-2 элемента. А то получается, что элемент вычисляется на основе самого себя... Это абсурд.
Да, да