Составители:
Рубрика:
14
4.
Макет печати (по C-программе)
Как видно, результаты ручного и машинного расчётов совпадают.
5. Листинг Fortran-программы
Программный код
!
Разветвленный алгоритм
PROGRAM
VETVI3
REAL
:: A,B,C,Z ! Объявление типа данных
! Ввод данных по запросу с экрана
! числа при вводе разделяются пробелом
PRINT
*,' Введите A,B,C ?'
READ
(*,*)A,B,C
IF
(C > B)THEN ! Если C > B
!
Вычисление Z = MIN(A,B*MAX(2*A,C**2))
Z = C ** 2
IF(2*A > Z) Z = 2*A
Z = B * Z
IF(A < Z) Z = A
ELSE
! Иначе если C <= B
! Вычисление
Z = C + MIN(A,B)
IF(A /= 1)THEN ! Если A ≠ 1
Z = B
IF(A < Z) Z = A
Z = C + Z
ELSE ! Иначе, если A = 1
! Вычисление
Z = C*MAX(2*B,%
|
8
|
)
Z = SQRT(ABS(A))
IF(2*B > Z) Z = 2*B
Z = C * Z
ENDIF
ENDIF
!
Вывод данных A, B, C и результата Z
WRITE
(*, 3) A,B,C,Z
3 FORMAT
(2X,' A = ',F3.0,' B = ',F3.0, &
' C = ',F3.0/ ' РЕЗУЛЬТАТ Z = ',F3.0)
END
Результаты приведены в макете печати в п.4.
4. Макет печати (по C-программе)
Как видно, результаты ручного и машинного расчётов совпадают.
5. Листинг Fortran-программы
Программный код
! Разветвленный алгоритм
PROGRAM VETVI3
REAL :: A,B,C,Z ! Объявление типа данных
! Ввод данных по запросу с экрана
! числа при вводе разделяются пробелом
PRINT *,' Введите A,B,C ?'
READ(*,*)A,B,C
IF(C > B)THEN ! Если C > B
! Вычисление Z = MIN(A,B*MAX(2*A,C**2))
Z = C ** 2
IF(2*A > Z) Z = 2*A
Z = B * Z
IF(A < Z) Z = A
ELSE ! Иначе если C <= B
! Вычисление Z = C + MIN(A,B)
IF(A /= 1)THEN ! Если A ≠ 1
Z = B
IF(A < Z) Z = A
Z = C + Z
! Вычисление Z = C*MAX(2*B, %|8|)
ELSE ! Иначе, если A = 1
Z = SQRT(ABS(A))
IF(2*B > Z) Z = 2*B
Z = C * Z
ENDIF
ENDIF
! Вывод данных A, B, C и результата Z
WRITE (*, 3) A,B,C,Z
3 FORMAT(2X,' A = ',F3.0,' B = ',F3.0, &
' C = ',F3.0/ ' РЕЗУЛЬТАТ Z = ',F3.0)
END
Результаты приведены в макете печати в п.4.
14
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »
