Название: Квантовая механика - Учеб. пособие. (Краснопевцев Е. А.)

Жанр: Информатика

Просмотров: 1157


3. примеры на составление и вычисление выражений, определения их типа, использования встроенных функций

 

3.1. Составить арифметическое выражение для алгебраической записи

,

 

где y – вещественное число, z – комплексное число, x – целое. Определить тип арифметического выражения и разновидность типа.

Выполнение:

 program exp1

 real:: y=13.12

 integer:: z=15

 complex:: x=(0.4, 0.35)

 Print *, (1+cos(y-2))/(x**4/2+sin(real(z))**2)  !  (2.922301,

-7.982824E-02)

 Print *, kind((1+cos(y-2))/(x**4/2+sin(real(z))**2))  !  4

 End

3.2. Составить выражение отношения для двух числовых функций и для длин двух символьных строк. Затем определить значения выражений отношения и распечатать их.

Выполнение:

  program exp2

  integer:: f1, f2, x/10/

  character(8):: t1='REAL', t2='complex'

  logical g1,g2

  f1=-x+10; f2=x

  g1=len_trim(t1).eq.len_trim(t2)

  g2=f1<=f2

  print *,g1, g2    !   F   T

  end

3.3. Составить логические выражения на принадлежность и на непринадлежность точки заштрихованной области. Определить и распечатать результаты этих логических выражений.

 

Выполнение:

   program exp3

  real x,y

  logical g1,g2

  10 read *,x,y

  g1=(x**2+y**2)<=1.and.y>0

  g2=(x**2+y**2)>1.or.y<=0

  Print *,'Znachenie na prinadlejnosst=', g1

  Print *,'Znachenie na neprinadlejnosst=', g2

  goto 10

  end

3.4. Составить текстовое выражение для трех символьных строк. Выбрать из результирующей строки последние 7 символов.

Выполнение:

  program exp4

  character(25):: st1*7, st2*5, st3*7, st4, st5

  data st1,st2,st3/ 'Fortran','Power','Station'/

  st4=st1//st2//st3

  Print *, st4

  st5=st4((len_trim(st4)-6):len_trim(st4))

  Print *, st5

  End

3.5. Определить максимально возможные числа для данных типа integer(1), integer(2).

Выполнение:

  program exp5

  integer(1) c1

  integer(2) c2

  Print *, huge(c1), huge(c2)

  end

3.6. Преобразовать два вещественных числа в комплексное. Из мнимой части комплексного числа выделить целую часть.

Выполнение:

  program exp6

  real:: x1=125.33, y1=36.99, c

  complex z

  z=cmplx(x1, y1)

  c=aint(aimag(z))

  Print *,z, c   !  (125.330000, 36.990000)       36.000000

  end