Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2013, 09:43   #1
n7camomile
 
Аватар для n7camomile
 
Регистрация: 11.08.2013
Сообщений: 7
Восклицание Сдать нужно в понедельник. Не понимаю, как вычислить значение этого выражения: S=sin(x+cos(2x-sin(3x+cos(4x+sin(5x-cos(6x+...)..

Сдать нужно в понедельник. Не понимаю, как вычислить значение этого выражения:
S=sin(x+cos(2x-sin(3x+cos(4x+sin(5x-cos(6x+...)...).


Что нужно написать, чтобы вычислить значение этого выражения?
То, что думаю неправильно закомментировала.
Помогите, пожалуйста!Очень нужно!
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication40
{
    class Program
    {
        static void Main(string[] args)
        {
            
            Console.WriteLine("Программа вывода значения выражения S=sin(x+cos(2x-sin(3x+cos(4x+sin(5x-cos(6x+...)...)");
            double  s=0,x = 0; 
bool ok=false; 
string str; 
int n=0;
 
            while (!ok)
            {
                Console.WriteLine("Введите n");
                str = Console.ReadLine();
                if (int.TryParse(str, out n) && (n > 0)) ok = true;
                else Console.WriteLine("Ошибка ввода! Введите натуральное число");  
            }
            ok = false;
            while (!ok)
            {
                Console.WriteLine("Введите x");
                str = Console.ReadLine();
                if (double.TryParse(str, out x)) ok = true;
                else Console.WriteLine("Ошибка ввода!Введите натуральное число");
            }
        
/*s = Math.Cos(n * x);
            for (int i = n - 1; i > 0; i--)
            {
               s = Math.Cos(n * x - s);
            }
            s = Math.Sin(x + s);*/
            Console.WriteLine("S=sin(x+cos(2x-sin(3x+cos(4x+sin(5x-cos(6x+...)...)={0}", s);
            Console.WriteLine("Для выхода нажмите Enter...");
            Console.ReadLine();
        }
    }
}

Последний раз редактировалось n7camomile; 15.12.2013 в 15:43.
n7camomile вне форума Ответить с цитированием
Старый 15.12.2013, 15:56   #2
n7camomile
 
Аватар для n7camomile
 
Регистрация: 11.08.2013
Сообщений: 7
По умолчанию

Пожалуйста, кто-нибудь посмотрите то, что выделено серым цветом, то , что закомментировано! Проверьте правильно это или нет! Если нет, скажите, как правильно вычислить значение этого выражения, что нужно написать вместо этого! Пожалуйста, от этого очень многое зависит!
n7camomile вне форума Ответить с цитированием
Старый 15.12.2013, 21:23   #3
n7camomile
 
Аватар для n7camomile
 
Регистрация: 11.08.2013
Сообщений: 7
По умолчанию

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!
n7camomile вне форума Ответить с цитированием
Старый 15.12.2013, 21:41   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А что в самом последнем вложении? (Nx+?)
С которого и нужно начинать
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 15.12.2013, 21:55   #5
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Вы сами уверены, что так записывается функция?
Поскольку последний элемент неизвестен, а его роль в вычислении может оказаться неожиданной, то следует, все же, определить конечное значение для числа вложенных функций.
Знак можно определить так: znak := -1; или так: znak := 1;
и далее znak := -znak;
Но с чередованием знака, в вашем выражении, неясность.
Пусть последний элемент sin(7x);
Тогда, например::
Код:
n := 7;
r := sin(n*x);
znak := -1;
while n > 1 do begin
   n := n - 1;
   r := cos(n*x + znak*r);
   r := sin((n-1)*x + r);
   znak := -znak;
end;
Но уверенности нет ....

Как-то так, ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 15.12.2013, 22:44   #6
n7camomile
 
Аватар для n7camomile
 
Регистрация: 11.08.2013
Сообщений: 7
По умолчанию

Цитата:
А что в самом последнем вложении? (Nx+?)
С которого и нужно начинать
Цитата:
Вы сами уверены, что так записывается функция?
S=sin(x+cos(2x-sin(3x+cos(4x+sin(5x-cos(6x+...)...).
Так было написано в моем варианте.
n7camomile вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
функции sin и cos nEm1z1s Общие вопросы Delphi 17 08.05.2012 22:42
Пусть задано значение X. Найти первое из чисел sin X, sin sin X, sin sin sin X, ... , меньшее по модулю 10-4. hex_91 Visual C++ 1 28.04.2012 23:49
Рекурсия. Вычислить рекурсивно функцию вида y=cos(x)+cos(x^2)+cos(x^3)+...+cos( x^n). мария71 Паскаль, Turbo Pascal, PascalABC.NET 4 31.03.2012 23:17
Паскаль Вычислить у - первое из чисел sin х, sin sin x, sin sin sin x, ..., меньшее по модулю 10-4 Kikikiss Помощь студентам 2 25.03.2012 13:58