Аноним
5 / 5 / 4
Регистрация: 15.12.2013
Сообщений: 149
1

Вывести график функции в консоли

12.02.2014, 00:27. Показов 9415. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Я пишу программу. Нужно вывести график функции в консоли. Помню, писал на Dev-C++ это. Там был хедер graphics.h(простой был. Писать на нем - одно удовольствие). В VS я не нашел. Есть какой-то GdiPlusGraphics.h. Но это, походу, не то. Какими средствами можно написать программу? Чтобы было красиво и "писабельно".
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.02.2014, 00:27
Ответы с готовыми решениями:

График функции в консоли
Есть уравнение {x}_{n+1}=4*r*{x}_{n}*(1-{x}_{n}). Надо вывести таблицу значения при r=0.1, r=0.6,...

Нарисовать график функции в консоли
Добрый день. Задание следующее: протабулировать функции y=sin|x|,y=cos|x|. Нарисовать графики этих...

Написать программу: построить график функции в консоли.
Напишите функцию, строящую график заданной функции на заданном интервале изменения аргумента....

Написать программу вычисления, вывести значения аргумента x и функции. Построить график функции.
Написать программу вычисления, вывести значения аргумента x и функции. Построить график функции. ...

9
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
12.02.2014, 00:39 2
graphics.h - это что-то с древних досовских времен. на сколько я знаю сейчас нормального способа нет.
сплошные хаки вроде такого:
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
#include <iostream>
#include <windows.h>
 
int main()
{
  HWND hwnd = GetConsoleWindow();
  HDC hdc = GetDC(hwnd);
 
  const unsigned pressedMask = 1u << sizeof(SHORT) * 8;
  while (true)
  {
    const unsigned state = static_cast<unsigned>(GetKeyState(VK_LBUTTON));
    //if (pressedMask & state) // if pressed
    {
      POINT cursorPos;
      GetCursorPos(&cursorPos);
      ScreenToClient(hwnd, &cursorPos);
      SetPixel(hdc, cursorPos.x, cursorPos.y, RGB(255, 255, 255));
    }
    Sleep(10);
  }
 
  ReleaseDC(hwnd, hdc);
 
  return 0;
}
рисует до первой перерисовки окна, да и то не всегда если верить тому, что тут написано:
Получение дескриптора консольного окна

Если такое устраивает, то берите семейство этих функций работы с GDI и вперед:
http://msdn.microsoft.com/en-u... s.85).aspx

может есть какие-то сторонние либы, но мне они не известны.
1
Аноним
5 / 5 / 4
Регистрация: 15.12.2013
Сообщений: 149
12.02.2014, 00:43  [ТС] 3
DU, Спасибо. Тогда я буду штудировать мателиал.
0
Модератор
Эксперт по электронике
8845 / 6625 / 902
Регистрация: 14.02.2011
Сообщений: 23,319
12.02.2014, 00:50 4
Цитата Сообщение от Di3go Посмотреть сообщение
Нужно вывести график функции в консоли.
а зачем?
чем окна то не устроили?

Добавлено через 1 минуту
Цитата Сообщение от DU Посмотреть сообщение
SetPixel(hdc, cursorPos.x, cursorPos.y, RGB(255, 255, 255));
ужасно тормознутая функция
0
Аноним
5 / 5 / 4
Регистрация: 15.12.2013
Сообщений: 149
13.02.2014, 00:17  [ТС] 5
ValeryS, Мне нужно в консоли. Во-первых, я только учу С++ и с окнами мне пока сложновато разобраться. Во-вторых, полезно для саморазвития кагбэ.
0
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
13.02.2014, 00:21 6
если сильно хочется с повозится с азами виндовых окон, то вот хорошая книга для этого:
Программирование в Windows 95
Автор: Ч. Петзолд

Но знания врятли сильно пригодятся. Лучше осваивать что-нибудь кроссплатформенное. Тот же Qt.
Там с окнами да и не только все сильно сильно проще.
0
Модератор
Эксперт по электронике
8845 / 6625 / 902
Регистрация: 14.02.2011
Сообщений: 23,319
13.02.2014, 00:44 7
Цитата Сообщение от Di3go Посмотреть сообщение
Во-первых, я только учу С++ и с окнами мне пока сложновато разобраться.
Не сложней чем с консолью
консоль для графиков не предназначена, посему если и сделаешь то получишь не переносимый код
да и знаний тебе это не добавит
Цитата Сообщение от DU Посмотреть сообщение
HWND hwnd = GetConsoleWindow();
* HDC hdc = GetDC(hwnd);
сильно понятно?
что такое дескриптор окна, рисования
Цитата Сообщение от DU Посмотреть сообщение
GetCursorPos(&cursorPos);
* * * ScreenToClient(hwnd, &cursorPos);
* * * SetPixel(hdc, cursorPos.x, cursorPos.y, RGB(255, 255, 255));
а это?
это чисто виндовые функции так называемое WinApi
так что если ты не создал окна то это не значит что не используешь функции WinApi

Цитата Сообщение от Di3go Посмотреть сообщение
я только учу С++
тут я наверное поддержу
Цитата Сообщение от DU Посмотреть сообщение
Тот же Qt.
взяв в руки учебник уже концу дня сможешь сделать красивую програмку
1
Аноним
5 / 5 / 4
Регистрация: 15.12.2013
Сообщений: 149
13.02.2014, 23:43  [ТС] 8
ValeryS, Спасибо. Буду изучать) Жаль, что Intellisense не фурычит в VS. Надо будет качнуть QT, но пока с интернетом дефицит)
0
Модератор
Эксперт по электронике
8845 / 6625 / 902
Регистрация: 14.02.2011
Сообщений: 23,319
13.02.2014, 23:46 9
Цитата Сообщение от Di3go Посмотреть сообщение
VS. Надо будет качнуть QT,
Qt!!!!
есть Qt Creator а есть и прилуда для VS т.е будешь сидеть в той же IDE только проекты другие
хотя учебники чаще всего под Qt Creator
0
Аноним
5 / 5 / 4
Регистрация: 15.12.2013
Сообщений: 149
13.02.2014, 23:49  [ТС] 10
ValeryS, Да я скачаю Qt Creator. Это занимает немного(20-30мб), а вот библиотеки...но без них никак
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.02.2014, 23:49
Помогаю со студенческими работами здесь

Построить график функции F(x) на заданном интервале с заданным шагом и вывести значения х и функции F(x) в таблицу в графическом режиме
Построить график функции F(x) на заданном интервале с заданным шагом и вывести значения х и функции...

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

Вывести на экран монитора и напечатать таблицу значений аргумента и функции, а также график функции средствами MATHCAD
Вывести на экран монитора и напечатать таблицу значений аргумента и функции, а также график функции...

Вывести на экран монитора и напечатать таблицу значений аргумента и функции, а также график функции средствами MATHCAD
Вывести на экран монитора и напечатать таблицу значений аргумента и функции, а также график функции...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru