Image

Programs - C Language - Graphics

Program:


#include      <stdio.h>
#include      <stdlib.h>
#include      <float.h>
#include      <graphics.h>
#include      <math.h>
#include      <conio.h>

#define      MAX    50
#define      ARRAYMAX  10

void makegraph(float p[]);

void main(void)
{
int       i;
int       scores[ARRAYMAX];
float      percents[ARRAYMAX];

for (i = 0; i < ARRAYMAX; i++)
  {
  printf("
Enter score between 0 and %d: "
, MAX);
  scanf("%d", &scores[i]);
  }
for (i = 0; i < ARRAYMAX; i++)
  percents[i] = ((float) scores[i]) / MAX;

printf("


 SCORE PERCENT"
);
for (i = 0; i < ARRAYMAX; i++)
  printf("
%d.  %d %3.0f"
, i + 1, scores[i], (percents[i] * 100));
 getch();
 makegraph(percents);
}

void makegraph(float p[])
{
int       g_driver, g_mode;
int       i, left, top, wide, bottom, deep;

 detectgraph(&g_driver, &g_mode);
 initgraph(&g_driver, &g_mode, "..\bgi");
 wide = (int)((getmaxx()) / ((ARRAYMAX * 2 ) + 1));
 bottom = getmaxy() - 20;
 deep = (int) (wide / 4);
 left = wide;
for (i = 0; i < ARRAYMAX; i++)
  {
  top = (bottom) - ((int)(p[i] * 300));
  bar3d(left, top, (left + wide), bottom, deep, 1);
  left += (wide * 2);
  }
 getch();
 closegraph();
}