#include #include double f(int n) { return log(log(n*1.0)); } int main() { double x0=50.0, y0=50.0, xmax=512.0, ymax=512.0, dx, dy, xmin, difference, y1, y2, y1prev, y2prev; int beginning_number, end_number, k, maxk, kprev, maxkprev; float avgk, avgkprev; scanf("%d %d\n", &beginning_number, &end_number); xmin=f(beginning_number); difference=f(end_number)-xmin; scanf("Square root= %d Maximum= %d Average= %f\n", &kprev, &maxkprev, &avgkprev); y1prev=maxkprev/(kprev*1.0); y2prev=kprev/avgkprev; printf("%%!PS-Adobe-3.0 EPSF-3.0\n"); printf("/color1 {0.75 0.75 0.75 setrgbcolor} def\n"); printf("/color2 {0.5 0.5 0.5 setrgbcolor} def\n"); printf("%.3f %.3f translate \n", x0, y0); dy=ymax/4; dx=xmax/difference; printf("0.0 %.3f moveto 1.0 0.0 0.0 setrgbcolor %.3f %.3f lineto stroke\n", dy, xmax, dy); while (scanf("Square root= %d Maximum= %d Average= %f\n", &k, &maxk, &avgk)==3) { y1=maxk/(k*1.0); y2=k/avgk; printf("%.3f %.3f moveto color1 %.3f %.3f lineto stroke\n", (f(kprev)-xmin)*dx, y1prev*dy, (f(k)-xmin)*dx, y1*dy); printf("%.3f %.3f moveto color2 %.3f %.3f lineto stroke\n", (f(kprev)-xmin)*dx, y2prev*dy, (f(k)-xmin)*dx, y2*dy); kprev=k; y1prev=y1; y2prev=y2; } printf("/Times-Roman findfont\n11 scalefont\nsetfont\n"); printf( "0.0 %.3f moveto 0.0 setgray 0.0 0.0 lineto %.3f 0.0 lineto stroke\n", xmax, ymax); //printf("newpath\n72 72 moveto\n{n log} show\n"); printf("showpage\n"); return 0; }