Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
Adam1892
0 / 0 / 0
Регистрация: 24.01.2017
Сообщений: 18
1

Как вывести график синусоиды звездочками на консоль?

04.06.2018, 19:57. Просмотров 749. Ответов 5
Метки нет (Все метки)

имеется синусоида, как вывести звездочками график на консоль
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.06.2018, 19:57
Ответы с готовыми решениями:

Вывести в консоль круг звездочками
Как создать круг и вывести его в консоли (звёздочками)?

Написать программу, которая выводит в консоль текст звездочками(С++)
Напишите плиз программу для C++ чтоб выводить текст звездочками(*)

график синусоиды
требуется написать график синосоиды, чтоб при запуске был график синосоиды с осями и чтоб на осе...

График синусоиды
Помогите изменить формулу программы. Нужно чтобы можно было задать длину волны и амплитуду ...

График звездочками в массиве. Программа "График зависимости даты от температуры"
Здравствуйте. С программированием я дружу относительно недавно. Меня интересует следующий вопрос: ...

5
Ellizio
149 / 111 / 84
Регистрация: 09.11.2015
Сообщений: 327
04.06.2018, 20:38 2
Adam1892, сделать-то, конечно, можно, но решение будет упираться в размер окна консоли. Для чего такие извращения?
0
Adam1892
0 / 0 / 0
Регистрация: 24.01.2017
Сообщений: 18
04.06.2018, 20:43  [ТС] 3
можно пару волн сделать же, но как именно поставить точки и как объявлять переменные, вот не врубаюсь
0
Diamante
1372 / 1072 / 672
Регистрация: 14.08.2016
Сообщений: 3,749
Завершенные тесты: 1
04.06.2018, 21:32 4
C#
1
2
3
4
5
6
7
            for(int i = 0; i < 74; i++)
            {
                Console.CursorTop = 10 + (int)(10* Math.Sin(Math.PI / 18 * i));
                Console.CursorLeft = i;
                Console.Write('*');
            }
            Console.ReadKey(true);
1
Ellizio
149 / 111 / 84
Регистрация: 09.11.2015
Сообщений: 327
04.06.2018, 21:42 5
Лучший ответ Сообщение было отмечено Adam1892 как решение

Решение

Adam1892, Ну вот как-то так Что бы лучше смотрелось при разной ширине, необходимо экспериментально подобрать приращение переменной k
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            int height = 20; //только четное
            int width = 100;
 
            int[,] points = GetPoints(width, height);
 
            for (int i = 0; i < height; i++)
            {
                for (int j = 0; j < width; j++)
                {
                    Console.Write(points[i, j] == 0 ? ' ' : '*');
                }
                Console.WriteLine();
            }
        }
 
        static int[,] GetPoints(int width, int height)
        {
            int[,] mas = new int[height, width];
            int center = height / 2;
 
            int j = 0;
            double step = 0.08; //приращение
            //k - угол в радианах
            for(double k = 0; k < width * step - 0.01; k += step, j++)
            {
                double sin = Math.Sin(k);
 
                if (sin < 0)
                    mas[center + (int)Math.Round(sin * height / 2, 0, MidpointRounding.ToEven), j] = 1;
                else if (sin > 0)
                    mas[center - 1 - (int)Math.Round(-sin * height / 2, 0, MidpointRounding.ToEven), j] = 1;
                else
                    mas[height / 2, j] = 1;
            }
 
            return mas;
        }
    }
}
1
DobroAlex
Модератор
394 / 336 / 165
Регистрация: 30.04.2016
Сообщений: 1,720
Завершенные тесты: 3
04.06.2018, 22:02 6
Adam1892,

Не по теме:

но зачем, если C# поддерживает графику из коробки?

0
04.06.2018, 22:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.06.2018, 22:02

Графика: график синусоиды
ВОТ ПРОГРАММА: uses GraphABC; var y0,t0,y1,t1,k,i: integer; y,t: real; begin...

Как вывести в консоли в одну строку буквы заданные звездочками
Написать программу, которая в качестве аргументов принимает 3 буквы, которые являются инициалами...

Формула график синусоиды с острыми пиками?
Как построить график, например X,Y –координаты, с одной стороны:Y = sin(X*Pi/180) и другой...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru