Главная /
Программирование больших вычислительных задач на современном Фортране с использованием компиляторов Intel /
Какое значение будет присвоено переменной k в результате выполнения оператора select type в следующем фрагменте программы ? type point integer x, y end type point type, extends(point) :: point_ex integer z integer color logical error end type point_ex typ
Какое значение будет присвоено переменной k
в результате выполнения оператора select type в следующем фрагменте программы ?
type point
integer x, y
end type point
type, extends(point) :: point_ex
integer z
integer color
logical error
end type point_ex
type, extends(point_ex) :: point_phys
real vx
real vy
real vz
real tm
end type point_phys
type, extends(point_phys) :: point_mech
character(32) name
character(8) code
end type point_mech
integer k
class (*), pointer :: ptr
type (point_ex), target :: pt_ex
class (point_phys), allocatable, target :: pt_ph
class (point_mech), allocatable, target :: pt_mh
allocate(pt_ph,source=point_phys(1,2,3,4,.true.,0.0,0.0,0.0,0.0))
allocate(pt_mh,source=point_mech(5,6,7,8,.true.,0.0,0.0,0.0,0.0,"A","B"))
ptr=>pt_ph
select type (ptr)
type is (point_ex); k=ptr.x
class is (point); k=ptr.y
class is (point_mech); k=ptr.color
class default; k=0
end select
...
вопрос
Правильный ответ:
2
Сложность вопроса
91
Сложность курса: Программирование больших вычислительных задач на современном Фортране с использованием компиляторов Intel
75
Оценить вопрос
Комментарии:
Аноним
Экзамен прошёл на 5.
07 ноя 2017
Другие ответы на вопросы из темы программирование интуит.
- # Имеется ли конфликт процедур при задании перегруженной процедуры. Если да, то укажите, какие именно. module mod_E interface point module procedure pnt1, pnt2, pnt3 end interface contains real function pnt1(x,y) real x,y pnt1=x+y end function pnt1 real function pnt2(x,y) integer x,y pnt2=x+y end function pnt2 character function pnt3(x,y) real x integer y pnt3=achar(mod(int(x),20)*mod(y,2)) end function pnt3 end module mod_E
- # Перегрузка операции присваивания реализуется при помощи оператора
- # Используя процедуры MKL, вычислите произведение , где - квадратная матрица, -вектор. Данные находятся в файле записана по строкам). В ответ введите номер минимального по модулю элемента вектора .
- # Используя процедуры MKL, вычислите произведение , где - прямоугольная матрица,-квадратная матрица. Данные находятся в файле и записаны по строкам). В ответ введите целое значение от суммы элементов матрицы .
- # В каких разделах "Свойства проекта" указывается количество байт отводимых для хранения целых данных по умолчанию?