Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/14: Рейтинг темы: голосов - 14, средняя оценка - 4.79
215 / 180 / 79
Регистрация: 02.10.2011
Сообщений: 651
1

График Sin(x)

12.04.2013, 21:32. Показов 2922. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно написать программу, которая будет изображать график Sin(x), причем x - рандомное число.

Подскажите с чего тут начать можно, с графикой опыта работы нет.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.04.2013, 21:32
Ответы с готовыми решениями:

Цикл: Написать программу для вычисления значения выражения: (1+sin 0.1)*(1+sin 0.2)*……*(1+sin 10)
дана задача: Написать программу для вычисления значения выражения: (1+sin 0.1)*(1+sin...

Цикл: Вычислить sin x + sin x в квадрате + ...sin x в степени n.
Даны действительное х и натуральное n. Вычислить: sin x + sin x в квадрате + ...sin x в степени n.

Нарисовать график функции y=sin(x) и привязать его к сетке
Я нарисовал сетку саму Вот она Graphics gr = pictureBox1.CreateGraphics(); ...

Вычислить значение: sin x - sin x^2 + sin x^n
Даны действительное число а и натуральное число N. Вычислить: sin x - sin x^2+ sin x^n

11
45 / 45 / 9
Регистрация: 19.11.2012
Сообщений: 124
12.04.2013, 23:06 2
Лучший ответ Сообщение было отмечено как решение

Решение

Начнем с того, что график Sin() от определенного числа есть точка.
3
215 / 180 / 79
Регистрация: 02.10.2011
Сообщений: 651
12.04.2013, 23:13  [ТС] 3
Задание неверно написал, извините.
Вроде сам разобрался.
0
45 / 45 / 9
Регистрация: 19.11.2012
Сообщений: 124
12.04.2013, 23:27 4
Вообще для графиков ньюфаги любят использовать элемент Chart из вкладки "данные" панели элементов. Но я содрогаюсь перед могуществом этого элемента, поэтому рисую с помощью графики (Graphics) ручками на pictureBox'e например.
На поле текстбокса внимания не обращайте, начинал делать для вашей изначальной задачи. Просто жмите кнопку и получайте график sin(). Правда он сильно сжатый ибо рисуется весь график от 0 до 4Pi (360)
Вот что получилось
Вложения
Тип файла: rar WindowsFormsApplication6.rar (37.4 Кб, 49 просмотров)
1
45 / 45 / 9
Регистрация: 19.11.2012
Сообщений: 124
12.04.2013, 23:57 5
Да еще я перепутал радианы с градусами.
Вот кстати сглаженный и масштабированный график синуса от 0 до 360:
Вложения
Тип файла: rar WindowsFormsApplication6.rar (37.9 Кб, 63 просмотров)
1
215 / 180 / 79
Регистрация: 02.10.2011
Сообщений: 651
13.04.2013, 00:11  [ТС] 6
Спасибо за помощь.

Добавлено через 3 минуты
А вот еще нужно задать 2 точки с координатами x,y. Как осуществить саму проверку принадлежности этому графику?
0
45 / 45 / 9
Регистрация: 19.11.2012
Сообщений: 124
13.04.2013, 00:13 7
Подставить х в уравнение f = sin(х); и если f == y, то точка с координатами (х, у) принадлежит графику.

Математика, сударь.
2
215 / 180 / 79
Регистрация: 02.10.2011
Сообщений: 651
13.04.2013, 00:25  [ТС] 8
А как реализовать ввод так, чтобы значения x,y вводились через запятую, а не каждый в отдельную форму ввода.
0
45 / 45 / 9
Регистрация: 19.11.2012
Сообщений: 124
13.04.2013, 00:59 9
Например так (разделитель - знак '!'):
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
            string textCoordX = "", textCoordY = "";
            int flag = 0;
            for (int i = 0; i < textX.Text.Length; i++)
            {
                if (textX.Text[i] != '!')
                {
                    if (flag == 0)
                        textCoordX += textX.Text[i];
                    if (flag == 1)
                        textCoordY += textX.Text[i];
                }
                else
                    flag = 1;
            }
В результате получаем две строки, в которых координаты Х и У соответственно.
Ну и моя наработка (проводит график через заданную точку, ибо пока не придумал как определять программно лежит ли точка на графике, есть сложности с тем, что sin(90) считает не 0, а 0.0000001*10^-90):
Вложения
Тип файла: rar WindowsFormsApplication6.rar (40.2 Кб, 10 просмотров)
0
45 / 45 / 9
Регистрация: 19.11.2012
Сообщений: 124
13.04.2013, 01:08 10
Исправил небольшой баг прошлой версии, из-за которого всегда выдавало ошибку при вводе Х (все пытаюсь сделать проверку лежит ли точка на графике, пока не айс):
Вложения
Тип файла: rar WindowsFormsApplication6.rar (40.8 Кб, 24 просмотров)
0
45 / 45 / 9
Регистрация: 19.11.2012
Сообщений: 124
13.04.2013, 01:53 11
Finish. Черным крестиком\полоской на графике примерно обозначается выбранная точка:
Миниатюры
График Sin(x)  
Вложения
Тип файла: rar WindowsFormsApplication6.rar (43.9 Кб, 52 просмотров)
1
215 / 180 / 79
Регистрация: 02.10.2011
Сообщений: 651
13.04.2013, 08:09  [ТС] 12
Спасибо огромное.
0
13.04.2013, 08:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.04.2013, 08:09
Помогаю со студенческими работами здесь

Определите значение величины q (истина или ложь) после выполнения следующей команды присваивания q:=sin(a) < sin(b) < si
Определите значение величины q (истина или ложь) после выполнения следующей команды присваивания...

Вычислить (1-sin 0.1)+(1+sin 0.2)+ ...+(1+sin 1.0)
В общем меня препод валит, то, что я делал по варианту отказывается принимать, дала новый вариант и...

Построить график функции y=x^2. График строится из отрезков и алгоритма Брезенхема
Построить график функции y=x^2. График строится с помощью отрезков. Для построения отрезков...

Построить график функции «Бабочка»: X=sin(At+B)cos(Ct), Y=sin(At+B)sin(Dt)
Написать программу построения графика функции. Вывод графика осуществлять в созданном на экране...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru