С для профессиональных программистов



         

Программа вычерчивания диаграмм. - часть 4


lines = get_line_size();

/* ввод интервала между диаграммами */

offset = get_offset();

/* сохранить диаграмму в файле ? */

printf(" сохранить диаграмму в файле ? (y/n) ");

if (tolower(getche()) == 'y') save = 1;

mode(4); /* графический режим 320*200 */

palette(0);

grid(min,max); /* вывод линии нулевого уровня */

hashlines(); /* вывод пунктирных линий */

label(lab,num_entries); /* вывод меток диаграммы */

legend(names,num_sets); /* вывод пояснительных надписей */

/* вывод значений в виде диаграммы */

for (i=0;i<num_sets;i++)

bargraph(v[i],num_entries,i*offset,min,max,lines);

if (save) save_pic();

getch();

mode(3);

/* считывание данных */

enter(v,entries,sets)

double v[][MAX_ENTRIES]; /*  массив данных */

int *entries;                             /* количество элементов данных в каждом наборе

данных */

int *sets; /* количество наборов данных */

int i,j,count,num;

char s[80];

printf("Введите число наборов данных (от 1 до %d)",MAX_SETS);

scanf("%d%c",&count,&j);

if (count>MAX_SETS) count = MAX_SETS; /* выход за границы

массива */

*sets = count;

printf("Ведите число элементов данных (от 1 до %d)",MAX_ENTRIES);

scanf("%d%c",&num,&j);

if (num>MAX_ENTRIES) num = MAX_ENTRIES; /* выход за границы

массива */

*entries = num;

j = 0;

/* считывание значений */

while((j<count))

printf(" Набор данных %d\n",j+1);

for (i = 0;i<num;i++)

printf("%d:",i+1);

gets(s);

sscanf(s,"%lf",&v[j][i]);

j++;

return count;

/* Ввод имен наборов */

void get_names(n,num)

char n[][20];                                     /* массив для имен */

int num;                                            /* число наборов */

int i;

for (i=0;i<num;i++)

printf(" Введите имя: ");

gets(n[i]);

/* Ввод метки каждого входа */

void get_labels(l,num)

char l[][20]; /* массив для меток */

int num; /* число входов */




Содержание  Назад  Вперед