Fortran(SORRY!!!!!!)
Может здесь кто знает!
ОЧЕНЬ НУЖНО!!!
Нужно мне востановить прогу - есть её исходник(кусок привожу здесь).
Но меня тревожат несколько вопросов:
Как я понял это fortran77?
Библиотеки FUN, G стандартные, входят в поставку, где их достать, существуют ли?
Сразу к этому - где достать фортран77(в allter не нашел) или можно тоже делать в дижитал фортране - совместимы?(как консольное приложение)?
В конце исходника(полного есть только две подпрограммы в число которых не входит подпрограмма BASE) - как я понял - она утерена или нет
Вроде без нее можно обойтись(будет менее функциональная прога-или из теории востановлю как нибудь....)
Вот кусок исходника:
PROGRAM PAR
C PAR 23-AUG-88 *** SPA ***
C ПРОГРАММА ОПРЕДЕЛЯЕТ ПРОФИЛЬ ИНСТРУМЕНТА ПО ПРОФИЛЮ ДЕТАЛИ(ГРАФИЧЕСКИ) И РЕШАЕТ ОБРАТНУЮ ЗАДАЧУ.
C
C ПОДПРОГРАММЫ: BASE
C БИБЛИОТЕКИ: FUN, G(ГРАФИЧЕСКАЯ)
C INTEGER Q, JJ1
REAL M, KSI, J,MI
BYTE YES, YES1,YES2
DIMENSION X(40), Y(40), XS(40), YS(40), XT(40), YT(40), *XTS(40), YTS(40), XO(40), YO(40), ALLAM(5), GGAM(5), *XP(5,40), HLAMR(5), XTTS(40), YTTS(40)
REAL MIN
DATA XPMIN0, XPMAX0, YPMIN0, YPMAX0/-90.,90.,-90.,90./
C PAR *** SPA ***
C PER=3.1415926/180
C ВВОД ИСХОДНЫХ ДАННЫХ ЧАСТЬ 1
TYPE *,'ПРОФИЛЬ'
TYPE *,'ПРЯМОЛИНЕЙНЫЙ - 1'
TYPE *,'КРИВОЛИНЕЙНЫЙ - 2'
ACCEPT *,JPR
GOTO(51,52)JPR
С ВВОД ДАННЫХ ДЛЯ ПРОФИЛЯ 1
51 TYPE 200
200 FORMAT(2X,'ВВЕДИТЕ ДАННЫ')
TYPE 1
1 FORMAT(1X,'МОДУЛЬ М:',*)
ACCEPT *,M
TYPE 2
2 FORMAT(1X,'ДИАМЕТР D:',*)
ACCEPT *,D
TYPE 3
3 FORMAT(1X,'ДИАМЕТР ЗАГОТОВКИ DA:',*)
ACCEPT *,DA
TYPE 4
4 FORMAT(1X,'УГОЛ OMEGA:',*)
ACCEPT *,OM1
TYPE 5
5 FORMAT(1X,'УГОЛ TAY:',*)
ACCEPT *,TAY1
RB=117.
C
OM=OM1*PER
A=A
TAY=TAY1*PER
C
C РАСЧЕТ ПАРАМЕТРОВ УСТАНОВКИ
C
HU=2.25*M
A0=DA/2.+(DA/2.-HU)*COS(TAY)
KSI=ATAN(TAN(TAY)/COS(OM))
AW=A0*COS(KSI)/COS(TAY)
E=ACOS(SIN(OM)*COS(TAY))
C=AW*TAN(KSI)/SIN(E)
G=C*SIN(E)
G2=G-(DA/2.-HU*COS(TAY))*TAN(TAY)
F10=ASIN(2.*G2/D)
K2=C*COS(E)
FIS=K2/PB
FI0S=FI0+FIS
FI0S1=FI0S/PER
6 PRINT(15X,'РУЗУЛЬТАТЫ:',/,1X,'FI0S=',F8.3,'(ГРАД.)')
JT=5
GOTO 60
C
C ВВОД ДАННЫХ ДЛЯ ПРОФИЛЯ 2
C
52 CALL BASE(JJ1)
JPIC=0
TYPE 302,"17
302 FORAMAT(1X,A1)
IF(JJ1.EQ.1)GOTO 310)
1000 READ(2,*,END=310)D,DA,AW,OM,E,JT
READ(2,*,END=1603)XTS,YTS
TYPE 602,(JT1,XTS(JT1),YTS(JT1),JT1=1,JT)
602 FORMAT(2X,13,'XTS=',F8.3,1X,'YTS=',F8.3)
GOTO 301
310 TYPE 61
FORMAT(1X,'ДИАМЕТР ФРЕЗЫ D :',*)
ACCEPT *,D
61 TYPE 62
62 FORMAT(1X,'ДИАМЕТР ЗАГОТОВКИ DA:',*)
ACCEPT *,DA
TYPE 63
63 FORMAT(1X,'МЕЖОСЕВОЕ РАСТОЯНИЕ AW:',*)
ACCEPT *,AW
TYPE 64
64 FORMAT(1X,'УГОЛ OMEGA:',*)
ACCEPT *,OM1
OM=OM1*PER
TYPE 65
65 FORMAT(1X,'УГОЛ E:',*)
ACCEPT *,E1
E=E1*PER
TYPE *,'ВВЕДИТЕ КОЛИЧЕСТВО ТОЧЕК'
ACCEPT *,JT
1603 DO 81,JT1=1,JT
TYPE 66,JT1
66 FORMAT(3X,'YTS(',12,')=',*)
81 ACCEPT *,YTS(JT1)
WRITE(2,*)D,DA,AW,OM,E,JT
WRITE(2,*)XTS,YTS
301 PB=DA/(2.*TAN(OM))
TYPE 561
561 FORMAT(/5X,'ВВЕДИТЕ ГЕОМЕТРИЧЕСКИЕ ПАРАМЕТРЫ ФАСОННОЙ ФРЕЗЫ')
TYPE 562
562 FORMAT(/10X,'ПЕРЕДНИЙ УГОЛ GAM=',*)
ACCEPT *,GAM
GAM=GAM*PER
TYPE 563
563 FORMAT(/10X,'УГОЛ НАКЛОНА РЕЖУЩЕЙ КРОМКИ LAM=',*)
ACCEPT *,ALAM
ALAM=ALAM*PER
C
C
C ЧАСТЬ 2
С
С
60 CONTINUE
C И Т.Д....
____________________
спасибо!