Смекни!
smekni.com

Оператор присваивания языка FORTRAN (стр. 2 из 2)

default:break;

}

}

void makefile(void)

{char *s;

int num_str=0,oftemp,rep;

if((out=fopen("errors.txt","w"))==NULL)

{printf("\n ОШИБКА!!! ФАЙЛ С ТАКИМ ИМЕНЕМ НЕ СУЩЕСТВУЕТ!!!");

exit(-1);

}

if((in=fopen(filename,"r"))==NULL)

{printf("\n ОШИБКА!!! ФАЙЛ НЕЛЬЗЯ ОТКРЫТЬ ДЛЯ ЗАПИСИ!!!");

exit(-1);

}

while(num_str++,fgets(s,80,in)!=NULL)

{fputs("\---------------------------------------------------------\",out);

fputc('\n',out);

fputs(s,out);

fputc('\n',out);

rep=strlen(s);

s[rep-1]='\0';

strcpy(cordinat[num_str],s);

if((oftemp=mistake[num_str][0])==END)

{fputs(type_mis[0],out);

fputc('\n',out);

}

else

{for(int k=0;mistake[num_str][k]!=END;k++)

{oftemp=mistake[num_str][k];

fputs(type_mis[oftemp],out);

fputc('\n',out);

}

}

}

fputs("\---------------------------------------------------------\",out);

fputc('\n',out);

fcloseall();

}

// MENU

int MENU(char *s)

{int dy,n;

dy=line-1;

textbackground(WHITE);

textcolor(YELLOW);

window(1,1,80,25);

clrscr();

gotoxy(2,1);

cprintf(" SDenis\n ");

gotoxy(2,2);

cputs(s);

gotoxy(2,3);

cprintf("Используйте курсор вверх/вниз для выбора просматриваемой строки.\n");

gotoxy(2,4);

cprintf("<ENTER> - для просмотра ошибок в строке(строка выделяется). &bsol;n");

gotoxy(2,5);

cprintf("<ESC> - выход.&bsol;n");

gotoxy(2,6);

textbackground(WHITE);

textcolor(RED);

cprintf("******************** ОШИБКИ В СТРОКАХ *************************&bsol;n");

textbackground(WHITE);

textcolor(YELLOW);

gotoxy(2,19);

cprintf("******************* СТРОКИ ВАШЕГО ФАЙЛА ****************************&bsol;n");

window(X1,Y1,X2,Y2);

textcolor(BLACK);

viewwin(0,YWINDOW);

n = 0;

int Y=1;

while(1)

{char c;

gotoxy(1,Y);

textbackground(GREEN);

cprintf("%s",cordinat[n]);

textbackground(WHITE);

c=(c=getch())==0?c=getch():c;

gotoxy(1,Y);

cprintf("%s",cordinat[n]);

switch (c)

{case EXIT:

return(-1);

case '&bsol;r': /*enter*/

window(2,7,80,18);

clrscr();

putmistake(n);

window(X1,Y1,X2,Y2);

break;

case UP:

if (Y==1) viewwin(n>0?n-1:n,YWINDOW);

else Y--;

if(n>0) n--;

break;

case DOWN:

if(Y==YWINDOW) viewwin((n==dy?n:n+1)-YWINDOW+1,YWINDOW);

else Y++;

if(n+1==dy)

{n=0;

Y=1;

viewwin(n,YWINDOW);

}

else n++;

break;

}

}

}

void viewwin(int num,int numline)

{clrscr();

for(int a=0;a<numline;a++)

{gotoxy(1,a+1);

cprintf("%s",cordinat[num++]);

}

}

void putmistake(int n)

{int offtemp,x=1,y=1;

if((offtemp=mistake[n][0])==END)

{cprintf("%s",type_mis[0]);

}

else

{for(int k=0;mistake[n][k]!=END;k++)

{offtemp=mistake[n][k];

if(offtemp==13) cprintf("%s&bsol;n",type_mis[offtemp]);

else

{cprintf("%d.%s&bsol;n",k+1,type_mis[offtemp]);

x++;

y++;

gotoxy(x,y);

}

}

}

}

Литература.

1. Курс лекций по системному программированию.

2. Герберт Шилдт «C для профессиональных программистов».

3. В.Н. Лебедев «Введение в системы программирования»