Begin break

End;

Unti1 fa1se; End; Procedure Chapka; Begin

New_win (1,1,80,25,1);

Wind1(2,19,78,24,3,0,,y,,1);

GOIOXY(3,2);

Write(‘ Для ввода данных установите курсор на соотве­тствующую позицию с помощью’); С0ЮХУ(3,3);

Write(‘стрелок "вверх" и "вниз" и нажмите ENTER. Для

Того чтобы исправить оши-‘);

GOTCXY(3,4);

Write(‘бочно введенное данное, подредите курсор и пов­торите ввод.’); GOTCXY(3,5);

Write(‘ Для окончания ввода нажмите ESC. ‘);

Wind1(2,4,78,16,3,0,,у,,1);

Textco1or(O);

Gotcxy(3,2);

Write(

>

УСИЛИЕ

СЖАТИЯ,

Кг

Gotoxy(3,3); write( 1.

Gotoxy(3,4); write(

Gotoxy(3,5); write( ‘

Gotoxy(3,6); write(

Gotoxy(3,7); write(

‘ 2. РАСЧЕТНАЯ ДЛИНА, CM

/

Gotoxy(3,8); write(

Gotoxy(3,9); write(

Gotoxy(3,10); write(

Gotoxy(3,ll); write(

‘ 3. РАСЧЕТНОЕ СОПРОТИВЛЕНИЕ СТАЖ, кг/см2

Gotoxy(3,12); write(

End;

Procedure Ocno_Curs(xxxl, yyyl, xxx2,yyy2,col_okno:integer;f1:

Char);

Begin

VvodWindow(xxxl, yyyi, xxx2,yyy2,col_pkno,0);

Begin

If (yyl=6) and (fl=’y’) then

Begin gotoxy(l, l); write(aa[l]:i2:i); end;

If (yyl=10) and (fl=’y’) then begin gotoxyCl. l); write(aaC21:12:1); end;

If (yyl=14) and (fl=’y’) then begin gotoxyd. l); write (aa[3]:12:1); end;

End;

End;

Procedure gosub; begin

K:=r/2100000; ll:=la*sqrt(k);

If 11<=2.5 then f:<L-(0.073-5.53*k)*ll*sqrt (11); if 11>4.5 then f:=332/(ll*ll*(51-ll)); kl:=(0.0275-5.53*k)*ll*ll;

If (11>2.5) and (11<=4.5) then f:<L47-13*k-(0.371-27.3*k)*

11+kl;

Procedure raschet; label

10,19,20,29,30,39,40,49,50,59,60,69,70,100,110; begin i:=0; 10: i:=i+l;

If i>23 then goto 19; ry:=sqrt(iy[i]/aCi]); la:=le/ry;

If la>120 then goto 10; gosub;

Si:=n/(f*aCi]); if si>r then goto 10; bbC13:=aCi]; 19: i:=0; 20: i:=i+l;

If i>23 then goto 29;

Ryl:=sqrt((2*iy[i]+2*a[i]*0.5*bCi]*0.5*b[I])/2/a[i]); la:=le/ryl;

If la>120 then goto 20; gosub;

Si:=n/(f*2*a[i]); if si>r then goto 20; bb[2]:=aCi3;

29: i:=0; 30: i:=i+l;

If i>22 then goto 39;

Ry:=sqrt(iyl[i]/al[i]);

La:=le/ry;

If la>120 then goto 30; gosub;

Si:=n/(f*alCi]); if si>r then goto 30; bbC3]:=al[il; 39: i:=0; 40: I:=1+1;

If i>22 then goto 49;

Ry:=sqrt((2*iylCi]+2*al[i]*zoEi]*zoCi])/2/al[i3); la:=le/ry;

If la>120 then goto 40; gosub;

Si:=n/(f*al[i]); if si>r then goto 40; bbC4]:=alCi]; 49: i:=0; 50: i:=i+l;

If i>22 then goto 59; ryl:=sqr((2*iyl[i]+2*alCi]*(bCi]- zo[i])*(b[i]-zoCi]))/2/al[i]); la:=le/ryl;

If la>120 then goto 50; gosub;

Si:=n/(f*2*alCi]); if si>r then goto 50; bbC5]:=alCi]; 59: i:=0; 60: i:=i+l;

If i>46 then goto 69;

Ry:=sqrt(iy2Ci]/a2[i]);

La:=le/ry;

If la>120 then goto 60; gosub;

Si:=n/(f*a2[i]);

If si>r then goto 60; bbC63:=a2[i3; 69: i:=0; 70: i:=i+l;

If i>28 then goto 110;

Ry:=sqrt(iy3Ci]/a3Ci]);

1a:=1e/ry;

If 1a>120 then goto 70; gosub;

Si:=n/(f*a3Ci3); if si>r then goto 70; bb[73:-a3C13; 110:exit; end;

Procedure prover(i:integer); begin

Ш->

Read1n(aaCi]); Ш+}

Whi1e ioresu1toO do

Begin

VvodWindow(20,2,60,2,3,0);

{VVodWindow(20,1,60,1,5,0);> gotoxy(5,1);

Write(,надо целое число повторите ввод’); ocno_curs(xx1,yy1,xx1+12,yy1, 1,’ n’); gotoxy(1,1); Ш->

Read1n(aaCi]); <Si+>

End;

End;

Procedure vvod_dan(num:integer); begin

VvodWindow(20,2,60,2,3,0);

Gotoxy(15,l); write(‘введите данное ‘); ocno_curs(xxl, yyl, xxl+12,yyl,1,’n’); gotoxy(l, l); if yyl=6 then prover(l); if yyl=10 then prover(2); if yyl=14 then prover(3); VvodWindow(20,2,60,2,1,0); for o:=l to 40 do begin gotoxy(j, l); writed’); end; window(60,2,61/2); gotoxy(l, l); write(‘I’); n:=aaCl]; le:=aa[2]; r:=aaC3]; end;

Procedure dok; Begin if n=0 then begin

New_Win(l,1,80,25,1); windl(18/8/62/15/3/0/’y’/3); gotoxy(9,3);

Write(‘B документировании нет смысла:’); gotoxy(5,4); write (‘ данных нет’);

Gotoxy(5,5);

Write(‘ Если хотите получить пустой документ’); gotoxy(6,6);

Write(‘ нажмите ENTER, если не нужен — ESC’);

Repeat

Key:=readkey; if key=chr(27) then EXIT; if key=chr(13) then break; unti1 fa1se; end;

New_Win(1,1,80,25,1); wind1(29,6,50,10,3,0,’y’,5);

Gotoxy(3,3);

WriteC ДОКУМЕНТИРОВАНИЕ’); Wind1(15,13,65,17,3,0, ‘>^’,5); Wind1(15,13,65,17,3,0,’y’,5); gotoxy(4,2);

Write(‘ Введите имя документа;в котором хотите’); gotoxy(4,3);

Write(‘ сохранить результат (длина имени с расши-‘); gotoxy(4,4);

Write(‘ рением не более 12 символов)’); vvodwindow(49,16,61,16,7,0); gotoxy (1.1); read1n(nom_f);

Vvodwindow(49,16,61,16,7,0); gotoxy (1.1); write(nom_f); assign(f2,nom_f); rewrite(f2); write1n(f2,’ ДАННЫЕ’);

Write1n(f2,

‘—————————————- ‘);

Write1n(f2,

‘,ааС1]:10:1,’ ‘);

1. УСИЛИЕ СЖАТИЯ, кг

Write1n(f2,

Write1n(f2, ‘ 2. РАСЧЕТНАЯ ДЛИНА, СМ

Адг1Ье1п(?2, ‘ 3. РАСЧЕТНОЕ СОПРОТИВЛЕНИЕ СТАЖ, кг/см? ‘,ааСЗ]: 10:1,’ ‘);

Адгке1п^2, ‘

>/гке1п^2);

‘,аа[2] : 10: 1, ‘

РЕЗУЛЬТАТ’);

ТЬе1п(?2, ‘);

Wгite1n(f2,

‘ 1. СЕЧЕНИЕ ИЗ ДВУТАВРА А =

Wгite1n(f2, ‘——————

———- ‘);

Wгite1n(f2,

‘ 2. СЕЧЕНИЕ ИЗ ДВУХ ДВУТАВРОВ А = wгite1n(f2,

Wгite1n(f2,

‘ ,ЬЬЕ1]:б:2, ‘ ‘);

‘,ЬЬС23:6:2,’ ‘);

‘,ЬЬСЗ]:6:2, ‘ ‘);

3. СЕЧЕНИЕ ИЗ ШВЕЛЛЕРА А = wгite1n(f2,

Wгite1n(f2, ‘ 4. СЕЧЕНИЕ ДВУТАВРОВОЕ ИЗ ДВУХ ШВЕЛЛЕРОВ А = ‘,ЬЬС4]:б:2,’ ‘);

Wгite1n(f2, ‘———————————————

———— ‘);

Wгite1n(f2, ‘ 5. СЕЧЕНИЕ КОРОБЧАТОЕ ИЗ ДВУХ ШВЕЛЛЕРОВ А = ‘,ЬЬС5]:6:2,’ ‘);

•——————————————————————————————— >) ;

\

Адг^е1пи2, ‘ 6. СЕЧЕНИЕ ИЗ КОЛОННОГО ДВУТАВРА А = ‘,ЬЬСб]:6:2,’ ‘);

Write1n(f2, 1——————————————

——— ‘);

Write1n(f2, ‘ 7.СЕЧЕНИЕ ИЗ КОЛОННОГО УШИРЕННОГО ДВУТАВРА А= ‘ ,ЬЬС7] :6:2,’ ‘);

Write1n(f2,

‘—————————————— ‘);

C1ose(f2);

Wimd1(17,20/63/22/3/0/,y,/5); gotcxy^(8,2); write(‘Документирование успешно завершено’); de1ay(1500); End;

Procedure QUITE; Var Ch1-.char; o, k:integer; f1ag, f1ag1:integer; Begin

Raschet; new_win (1f1,80,25,1); Wind1(25,2/55/4/3/0/,y,/1); gotoxy (12,2); write(‘ РЕЗУЛЬТАТ

Wind1(5,22/75/24/3/0/,y,/1); gotoxy (7,2);

Write(‘Для завершения работы нажмите ESC. Для докумен

Тирования F2.’);

Wind1(3,6,77,20,3,0, ‘у’,1) ;

Textco1or(C);

Gotoxy(3,2);

Write(

‘ 1. СЕЧЕНИЕ ИЗ ДВУТАВРА А = ‘,ЬЬС1]:12:2);

Gotoxy(3,3); write(

>————————————————————————————————— ‘);

Gotoxy(3,4); write(

‘ 2. СЕЧЕНИЕ ИЗ ДВУХ ДВУТАВРОВ А = ‘,ЬЬЕ23:12:2);

Gotoxy(3,5); write(

\ .

‘——————————— ‘);

Gotoxy(3,6); write(

‘ 3. СЕЧЕНИЕ ИЗ ШВЕЛЛЕРА А = ‘,ЬЬСЗ]:12:2);

Gotoxy(3,7);

Write( ‘——————————————————

——— ‘);

Gotoxy(3,8);

Write( ‘ 4. СЕЧЕНИЕ ДВУТАВРОВОЕ ИЗ ДВУХ ШВЕЛЛЕРОВ А = ‘,ЬЬС43:12:2);

Gotoxy(3,9); write(

‘——————————————— ‘);

Gotoxy(3,10);

Write ( ‘ 5. СЕЧЕНИЕ КОРОБЧАТОЕ ИЗ ДВУХ ШВЕЛЛЕРОВ А = ‘,ЬЬЕ5]:12:2);

Gotоху(3,11); write(

‘—————————————- ‘);

Gotoxy(3,12); write(

‘ 6. СЕЧЕНИЕ ИЗ КОЛОННОГО ДВУТАВРА А = ‘,ЬЬСб]:12:2);

Gotoxy(3,13); write(

‘———————————- ‘);

Gotoxy(3,14); write( ‘ 7. СЕЧЕНИЕ ИЗ КОЛОННОГО УШИРЕННОГО ДВУТАВРА А = ‘,ЬЬС7]:12:2); repeat

Key:=readkey; if key=chr(60) then begin dok; Quite; exit; end; if key=chr(27) then

Begin

Halt(l); end; until false;

End;

Begin textbackground(O); clrscr; assign(fl,’dat4.txt’); reset(fl); for i:=l to 23 do read(fl, a[13); for i:=l to 23 do read(fl, iy[i3); for i:=l to 23 do read(fl, b[i3); for i:=l to 22 do

Read(fl, al[i3); for i:=l to 22 do read(fl, iylCi]); for i:=l to 22 do read(fl, zo[i3); for i:=l to 22 do read(fl, bl[i3); for i:=l to 46 do read(fl, a2[i3); for i:=l to 46 do read(fl, iy2[i3); for i:=l to 46 do read(fl, b2Ci3); for i:=l to 28 do read(fl, a3[i3); for i:=l to 28 do read(fl, iy3Ci3); for i:=l to 28 do read(fl, b3[i3);

Nachalo;

Textbackground(O); clrscr; Chapka; xxl:=64; yyl:=6; for i:=l to 3 do aaEi]:=0; for i:=l to 3 do begin

Ocno_curs(xxl, yyl/xxl+12/yyl,3/’y’); yyl:=yyl+4; end; yyl: =6; repeat



.