Исправьте ошибки (три) в программе. Корректно ли использование типов переменных в программе? Можно ли ограничиться тольк о одним циклом?



Задачи с ошибками ФОРТРАН

Задача №1а

Вычислить следующие выражения, используя оператор-функцию:

   

В какой последовательности вычисляются значения выражений F и Q . Найдите ошибки в программе, если они есть. Представьте алгоритм программы.

1 2 3 4 5 6 7-72
C оператор-функция FOP ( Z , T )
  FOP(Z,T)=SQRT(Z*Z+T*T)
  RETURN
  END
С   Основная программа
  WRITE(*,*)'Введите исходные данные'
            READ(*,*) A,B,X,Y
        D=FOP(A,B)
  E=FOP(A,D)+FOP(D,B)*2.
  F=FOP(A,3.5*FOP(E,A))
        Q= FOP(F,FOP(SIN(X),COS(Y))) .
          WRITE(*,*)'D=',D,' E=',E,' F=',F,' Q=',Q
            PAUSE
            STOP
            END

 


 

 

Задача №1б

Вычислить следующие выражения, используя оператор-функцию:

   

В какой последовательности вычисляются значения выражений F и Q . Найдите ошибки в программе, если они есть. Представьте алгоритм программы.

1 2 3 4 5 6 7-72
  FOP(Z,T)=SQRT(Z*Z+T*T)
4   WRITE(*,*)'Введите исходные данные'
            READ(*,*) A,B,X,Y
        D=FOP(A,B)
2 0   E=FOP(A,D)+2FOP(D,B).
2 1   F=FOP(A,3.5*FOP(E,A))
    2 2     Q= FOP(F,FOP(SIN(X),COS(Y))) .
          WRITE(*,*)'D=',D,' E=',E,' F=',F,' Q=',Q
          PAUSE
      8     STOP
            END

 


 

 

Задача №1в

Вычислить следующие выражения, используя оператор-функцию:

   

В какой последовательности вычисляется значение выражений F . Правильно ли записана строка вычисления   Q . Запишите строку вычисления Q с помощью оператора-функции FOP ( Z , T ).Найдите ошибки в программе, если они есть. Представьте алгоритм программы.

1 2 3 4 5 6 7-72
  FOP(Z,T)=SQRT(Z*Z+T*T)
  WRITE(*,*) Введите исходные данные
            READ(*,*) A,B,X,Y
        D=FOP(A,B)
  E=FOP(A,D)+FOP(D,B)*2.
  F=FOP(A,3.5*FOP(E,D))
        Q= SQRT(F*F+SIN(X)**2+COS(Y)**2).
          WRITE(*,*)'D=',D,' E=',E,' F=',F,' Q=',Q
          PAUSE
      8     STOP
            END

 Задача № 2 Программа, в которой при помощи IF арифметического проверяется условие: если самая длинная сторона больше чем полупериметр, то треугольник не существует.

Найдите ошибки в программе, если они есть. Какая теорема используется в программе. Какие подпрограммы-функции используются в программе. Представьте алгоритм программы.

1 2 3 4 5 6 7-72
С   Программа – Вычисление площади треугольника. При помощи IF арифметического проверяется условие существования треугольника
4   WRITE (*,*)’ Введите значения сторон треугольника A , B , C ’
            READ(*, *) A,B,C
        IF ( A ) 4,4,20
2 0   IF ( B ) 4,4, 22          
2 1   IF ( C ) 4,4,22
    2 2     P=(A+B+C)/2.
          IF(AMAX1 (A,B,C)–P) 6,8,9
      8     WRITE (*,*)’ Площадь треугольника равна нулю’
            GO TO 4
    6       S=SQRT(P*(P-A)*(P-B)*( С -P))
            WRITE(*,*)’ Площадь S=’, S
            PAUSE
            GO TO 4
        9   WRITE (*,*)’ Такой треугольник не существует’
            STOP
            END

 


 

Задача №3: Вычислить значение  в зависимости от данных условий

Исправьте ошибки в программе

1 2 3 4 5 6 7-72
С   Программа с IF
  Integer x , b
        WRITE (*,*)’Введите значения x , b ’
  READ (*,*) X , B
  IF(X+2.*B) 4,7,8
  8     LAM=SIN(X )
          GO TO 10
        7   LAM=0.
            GO TO 10
      4   LAM = COS ( X )
      10     WRITE (*,*)’Вычисленное значение Лямбда=’, LAM
            PAUSE
            STOP
            END

 


 

Задача №4:

Вычислить и напечатать все значения функции:

  f = sinx 2 - excos 2 x ,

если x изменяется в пределах от а до b с шагом dx.

Исправьте ошибки в программе. Объясните необходимость корректировки шага

Нарисуйте алгоритм программы.

1 2 3 4 5 6 7-72
С   Программа. Цикл с оператором IF.
  WRITE (*,*)’Введите X нач , X кон , шаг цикла DX ’
            READ(*, *) XN , XK , DX
С       Блок корректировки шага
  N=( XK- XN)/ DX+1
  DX=( XK- XN)/( N-1))
        X = XN
    1 1     F=SIN(X)**2–EXP(X)*COS(X)**2.
            WRITE (*,*)’При Х=’, X ,’ значение функции равно’, F
            X = X + DX
          IF(X.LE. XN) GO TO 11
            WRITE(*,*)’ Площадь S=’, S
            PAUSE
            STOP
            END

 


 

Задача №5 По введенному значению n вычислить n! (факториал от n) и вычислить сумму квадратов, используя оператор цикла DO.

Исправьте ошибки (три) в программе. Корректно ли использование типов переменных в программе? Можно ли ограничиться тольк о одним циклом?

1 2 3 4 5 6 7-72
С   Программа. Вычисление суммы и факториала от N
  WRITE (*,*)’ Введите N ’
            READ(*, *) N
        DO 2 I=1,N,1
  S=S+I**2        
2   CONTINUE
        P=N
          DO 3 I = N , 1 , -1
      3     P = P * I
            WRITE(*,*)’ Сумма S=’,S,’ факториал =’,P
            PAUSE
            STOP
            END

 


 

Задача№6: Найти все значения функции ,если x изменяется в пределах: X= XH XK c шагом dx. Определить максимальное и минимальное значения.


Дата добавления: 2022-12-03; просмотров: 105; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!