Вывод графика функции на весь экран - C (СИ)
Формулировка задачи:
Нужна небольшая помощь. Помогите написать программу на языке Си,которая выведет на весь экран график функции y=1/x^2+x+1.
Я в этом новичок,поэтому очень надеюсь на вашу помощь.
Решение задачи: «Вывод графика функции на весь экран»
textual
Листинг программы
#include <stdio.h>
#include <math.h>
double f( double x )
{
return 1 / (x * x) + x + 1;
}
int main()
{
int i;
double xmin, xmax, x, y, w;
printf( "xmin = " ); scanf( "%le", &xmin );
printf( "xmax = " ); scanf( "%le", &xmax );
w = (xmax - xmin) / 79;
clrscr();
for ( i = 0; i < 80; i++ ) {
x = xmin + i * w;
y = f( x );
if ( (int)x > 0 && (int)x < 25 ) {
gotoxy( i, (int)y );
printf( "*" );
}
}
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с графикой и математическими функциями
- Определение функции, которую необходимо визуализировать
- Ввод границ области определения функции с помощью функции scanf
- Вычисление шага w для перебора всех значений x от xmin до xmax
- Очистка экрана с помощью функции clrscr
- Перебор всех значений x от xmin до xmax с шагом w
- Вычисление соответствующих значений функции f(x) для каждого значения x
- Проверка, находится ли текущее значение x в пределах от 1 до 24 (для удобства отображения на экране)
- Если условие выполняется, то выводится символ
*в соответствующую позицию на экране с помощью функции gotoxy и printf - После завершения цикла выводится символ
*в позицию (80,25) для завершения графического представления функции