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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.01.2014, 20:11   #1
Аукгь1991
Пользователь
 
Регистрация: 10.04.2010
Сообщений: 12
По умолчанию Помогите пожалуйста написать программу для вычисления значения функции! (С#)

Написать программу, которая по введенному значению аргумента вычисляет значение функции, заданной в виде графика. Параметр R вводится с клавиатуры.
Уже четвертый час бъюсь над казалось бы простой задачкой, а догнать как ее делать не могу. Прочитал кучу инфы, что сначало нужно построить алгоритм, вычислить формулы, что есть формулы y=kx+b и r^2=(x-x0)^2+(y-y0)^2
Никак не могу компилировать всю эту информацию у себя в голове и решить эту задачку Помогите пожалуйста
Изображения
Тип файла: jpg grafik.jpg (18.0 Кб, 125 просмотров)

Последний раз редактировалось Аукгь1991; 31.01.2014 в 20:25.
Аукгь1991 вне форума Ответить с цитированием
Старый 31.01.2014, 20:27   #2
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Наверное, на графике вместо -3 и +3 должно быть -R и +R
Это - кусочно-непрерывная функция. Имеется 5 участков. Надо использовать if например.
-если x < - 5 то y = -3
-если -5 < x < -R , то ... какая-то линейная функция, надо по графику определить
-если -R < x < R , то y = корень из (R^2 - x^2)
- и т.д для остальных участков
type_Oleg вне форума Ответить с цитированием
Старый 31.01.2014, 20:46   #3
Аукгь1991
Пользователь
 
Регистрация: 10.04.2010
Сообщений: 12
По умолчанию

Цитата:
Сообщение от type_Oleg Посмотреть сообщение
-если -5 < x < -R , то ... какая-то линейная функция, надо по графику определить
а как определить по графику какая это линейная функция?
Аукгь1991 вне форума Ответить с цитированием
Старый 31.01.2014, 20:49   #4
Аукгь1991
Пользователь
 
Регистрация: 10.04.2010
Сообщений: 12
По умолчанию

Цитата:
Сообщение от type_Oleg Посмотреть сообщение
-если -R < x < R , то y = корень из (R^2 - x^2)
- и т.д для остальных участков
И разве может быть радиус отрицательным значением?
Аукгь1991 вне форума Ответить с цитированием
Старый 31.01.2014, 20:53   #5
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Цитата:
Сообщение от Аукгь1991 Посмотреть сообщение
И разве может быть радиус отрицательным значением?
Радиус равен трём. Не путайте точку начала координат с центром окружности.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder

Последний раз редактировалось Smitt&Wesson; 31.01.2014 в 21:06.
Smitt&Wesson вне форума Ответить с цитированием
Старый 31.01.2014, 20:54   #6
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Сначала определиться с заданием - там все таки по оси 0X минус 3 или минус R.
Допустим, минус R.
Для участка от -5 до -R:
Линейная функция в общем виде : y=ax+b. Надо найти коэффициенты a,b. Подставляем координаты (x;y) для начала и конца этой линии. Получаем систему уравнений:
-5a+b= - 2
-Ra+b= 0
Решаем, получаем a,b , выраженные через R. Подставляем в y=ax+b.
Все
type_Oleg вне форума Ответить с цитированием
Старый 31.01.2014, 21:03   #7
Аукгь1991
Пользователь
 
Регистрация: 10.04.2010
Сообщений: 12
По умолчанию

Цитата:
Сообщение от type_Oleg Посмотреть сообщение
Сначала определиться с заданием - там все таки по оси 0X минус 3 или минус R.
Допустим, минус R.
Для участка от -5 до -R:
Линейная функция в общем виде : y=ax+b. Надо найти коэффициенты a,b. Подставляем координаты (x;y) для начала и конца этой линии. Получаем систему уравнений:
-5a+b= - 2
-Ra+b= 0
Решаем, получаем a,b , выраженные через R. Подставляем в y=ax+b.
Все
проблема в том, что R это переменная и она может изменятся. Если я введу радиус 6, то "если x < - 5 то y = -3" будет неверным.
Аукгь1991 вне форума Ответить с цитированием
Старый 31.01.2014, 21:09   #8
Аукгь1991
Пользователь
 
Регистрация: 10.04.2010
Сообщений: 12
По умолчанию

Надеюсь Вы поняли о чем я
Аукгь1991 вне форума Ответить с цитированием
Старый 31.01.2014, 21:13   #9
Аукгь1991
Пользователь
 
Регистрация: 10.04.2010
Сообщений: 12
По умолчанию

Цитата:
Сообщение от Smitt&Wesson Посмотреть сообщение
Радиус равен трём. Не путайте точку начала координат с центром окружности.
В данном случае точка начала координат совпадает с центром окружности. Просто все усложняет тот факт, что у пользователя есть возможность ввести любое значение R
Аукгь1991 вне форума Ответить с цитированием
Старый 31.01.2014, 22:00   #10
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Да, действительно, при R>5 будет фигня.
Выход один при именно этих условиях задачи - вводить значения R от 0 до 5.
Можно доплнительно ввести проверку при вводе - если R > 5 выводить сообщение " недопустимое значение , введите еще раз"
type_Oleg вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите, пожалуйста, написать программу. Katerina... Общие вопросы C/C++ 0 16.10.2013 22:33
Помогите пожалуйста написать программу gamer123 Помощь студентам 1 26.03.2009 18:24
Помогите пожалуйста написать программу в С++ KatyaQ Фриланс 2 10.06.2008 11:36
Помогите пожалуйста написать программу (си++) Annes Помощь студентам 3 11.04.2008 22:51