Write a program in C to draw cosine wave using graphics.h header file
In this program, we will draw a horizontal cosine wave on screen of amplitude 50 pixels. We will use putpixel functions of graphics.h header file to color a pixel at (x, y).
C program to draw cosine wave using graphics
In this program, we first initialize graphics mode, by passing graphics driver(DETECT), default graphics mode and specifies the directory path where initgraph looks for graphics drivers (*.BGI). Then we will draw a horizontal axis using line function representing the angle in radians. Inside a for loop we calculate the value of cosine for an angle and color the specific pixel using putpixel function. At last we increment the angle by 5.
#include <conio.h> #include <math.h> #include <graphics.h> #include <dos.h> int main() { int gd = DETECT, gm; int angle = 0; double x, y; initgraph(&gd, &gm, "C:\\TC\\BGI"); line(0, getmaxy() / 2, getmaxx(), getmaxy() / 2); /* generate a sine wave */ for(x = 0; x < getmaxx(); x+=3) { /* calculate y value given x */ y = 50*sin(angle*3.141/180); y = getmaxy()/2 - y; /* color a pixel at the given position */ putpixel(x, y, 15); delay(100); /* increment angle */ angle+=5; } getch(); /* deallocate memory allocated for graphics screen */ closegraph(); return 0; }
Program Output