Мегаобучалка Главная | О нас | Обратная связь


Операторы описания массивов следует ставить в начале программы, до описания оператор-функций



2016-01-02 411 Обсуждений (0)
Операторы описания массивов следует ставить в начале программы, до описания оператор-функций 0.00 из 5.00 0 оценок




Вопросы в билетах. 1 часть.

 

1.ОПЕРАТОР – ФУНКЦИЯ

ОПИСАНИЕ ОПЕРАТОР-ФУНКЦИИ:

 

имя функции(список аргументов)= арифметическое выражение

 

Параметры, участвующие в описании оператор – функции, называются формальными параметрами.

Описание оператор – функции помещается в начало программы до первого исполняемого оператора

 

Пример.

 

- фактические параметры.

Фактических параметров ровно столько, сколько формальных параметров.

Фактическими параметрами могут быть переменные, константы, арифметические выражения.

Фактические параметры должны соответствовать формальным параметрам по типу.

В программе может быть несколько оператор – функций.

Пример.

 

2.

Операция сравнения Обозначение в Фортране
> больше .gt. (greater than)
≥ больше или равно .ge. (greater or equal)
< меньше .lt. (less than)
≤ меньше или равно .le. (less or equal)
= равно .eq. (equal)
≠ не равно .ne. (not equal)

 

 

Примеры

 

 

 

3. ЛОГИЧЕСКИЕ СВЯЗКИ И ЛОГИЧЕСКИЕ ВЫРАЖЕНИЯ

 

.true. (истинно)

.false. (ложно)

 

Обозначения логических операций

 

 

Операция Обозначение в Фортране
«и» .and.
Логическое «или» .or.
Логическое отрицание .not.

 

 

Пример

 

область определения функции

 

Правила истинности и ложности

 

A B A.and.B A.or.B .not.A
T T T T F
F T F T T
T F F T F
F F F F T

 

 

Пример.

 

Выражение ( ) , его отрицание или

 

Одинаковые логические операции вычисляются слева направо.

В сложных логических выражениях можно ставить скобки.

 

Пример.

 

 

Точка принадлежит треугольнику, если истинно выражение

 

 

Точка не принадлежит треугольнику, если истинно выражение

 

 

 

или истинно выражение

 

 

При отрицании взаимно заменяются связки .and. и .or.

ЛОГИЧЕСКИЕ ВЫРАЖЕНИЯ

 

Логические выражения принимают всего 2 значения:

 

True.

 

.false.

 

Это значение описывается логической переменной

Имя логической переменной может начинаться с любой буквы. В начале программы все логические переменные должны быть описаны оператором logical, который имеет вид   logical cписок переменных  

 

 

Оператор присваивания

 

a= x.ge.0

b= .true.

c= .false.

d= a .and.x .lt. 1

 

Логическую переменную можно использовать в логическом выражении, например,

 

вместо

 

использовать

 

 

4. УСЛОВНЫЙ ОПЕРАТОР if

Простейший оператор

 

if (L) B

D

 

L – логическое выражение

 

B – любой выполняемый оператор, кроме операторов ifиdo

 

D – продолжение программы

 

Оператор ifвыполняется следующим образом:

 

1. проверяется выражение L

2. если L истинно, то выполняется оператор B, а затем оператор D

3. если L ложно, то выполняется следующий по порядку оператор D

(оператор B не выполняется)

 

Оператор B может быть только один

 

Пример.

 

if (x.gt.2.7) x=x**2-1

x=x**2+1

 

Пусть к моменту оператора if х=3, тогда сравнение истинно и х

вычисляется по формуле x=x**2-1, х=8, затем x=x**2+1, х=65.

Если х=2, то сравнение ложно, управление передается следующему оператору, х вычисляется по формуле x=x**2+1, х=5.

 

5. Структурный оператор if

If (L) then

………

Else

………

End if

D (продолжение программы)

 

 

При этом оператор else может отсутствовать, а может иметь форму

else if (L1) then

 

Выполняется структурный оператор if следующим образом:

 

1. проверяется выражение L

2. если Lистинно, то выполняются операторы, записанные между if и else, а затем выполняется оператор D

3. если L ложно, то выполняются операторы, записанные между else и end if,а затем следующий по порядку оператор D . Если оператор elseотсутствует, то сразу выполняется оператор D

 

Каждый оператор if (L) thenзаканчивается строкой end if.

 

Передавать управление внутри структуры

If (L) then

……..

End if

нельзя.

 

Пример.

if (x.gt.2.7) then

x=x**2-0.5

y=x+1.5

end if

x=x+0.5

Пусть х=3, тогда сравнение истинно и выполняются операторы между

if и end if,получим х=8.5, у=10, а затем выполняется оператор, следующий за end if, получим х=9.

Пусть х=2, тогда сравнение ложно и управление передается оператору, следующему за end if,получим х=2.5.

 

Пример.

if (x.gt.2.7) then

x=x**2-0.5

y=x+1.5

else

x=x**2+0.5

y=x+2.5

end if

z=x+y

 

Пусть х=3, тогда сравнение истинно и выполняются операторы между if и else,

получим х=8.5, у=10, а затем выполняется оператор, следующий за end if, получим z=18.5.

Пусть х=2, тогда сравнение ложно и управление передается операторам, следующим за else,получим х=4.5, у=7. Затем выполняется оператор, следующий за end if,и вычисляется z=11.5.

 

Пример.

if (x.gt.2.7) then

x=x**2-0.5

y=x+1.5

else if (x.lt.2.) then

x=x**2+0.5

y=x+2.5

else

x=x**2-1.

y=x+2.

end if

z=x+y

 

Пусть х=3, тогда сравнение истинно и выполняются операторы между if и else if,

получим х=8.5, у=10, а затем выполняется оператор, следующий за end if, получим z=18.5.

 

Пусть х=2, тогда первое и второе сравнения ложны и управление передается операторам, следующим за else,получим х=3., у=5. Затем выполняется оператор, следующий за end ifи вычисляется z=8.

Вычислить у, z для х=1.

x=1.5, y=4, z=5.5

 

6. Составить программу, которая вычисляет значения функции при х=0, 0.1, 0.2, 0.3, ….., 2 и печатает значения аргумента и функции.

 

x=0.

1 y=sin(x)

print *, x, y

x=x+0.1

if(x.le.2) goto 1

end

 

другой вариант

 

x=0

1 if (x.le.2) then

y=sin(x)

print*, x, y

x=x+0.1

goto 1

end if

end

 

Пример.

Вычисление суммы

s=1+2+ …..+n,

 

read *, n

s=0.

k=1

2 s=s+k

k=k+1

if (k.le.n) goto 2

print *, s

end

 

Пример.

Вычисление факториала

 

 

read *, n

f=1.

k=1

2 f=f*k

k=k+1

if (k.le.n) goto 2

print *, f

end

 

7. МАССИВЫ

 

Массив – упорядоченный набор переменных, имеющий имя. Элемент массива еще называют индексированной переменной.

Индексы пишут в скобках, если индексов несколько, то они разделяются запятой.

 

 

Пример.

 

Индексированные переменные образуют индексированный массив .Каждый элемент содержит один индекс (1, 2, 3 или 4), такой массив называют одномерным.

 

Индексированные переменные образуют двумерный индексированный массив .

 

Одномерные и двумерные массивы соответствуют математическим понятиям вектора и матрицы , состоящей из двух строк и трех столбцов.

 

 

Размерность массива не должна превышать 7, это значит, что индексов не должно быть больше 7.

 

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

 

В случае вещественных индексов дробная часть индекса всегда отбрасывается.

 

Пример.

 

х=1.2

a(3*x-1)=0

 

Значение 0 получит элемент а(2), так как 3*1,2-1=2,6

 

ОПИСАНИЕ МАССИВОВ В ПРОГРАММЕ

 

Каждый массив имеет длину, например а(1), а(2),…., а(5) состоит из пяти элементов, массив образует массив из шести элементов.

Любой массив в программе должен быть описан. Это надо для того, чтобы транслятор нужное для данного массива место в памяти.

 

Для описания массива будем использовать оператор dimension:

 

dimensionимя массива (границы значений индексов)

 

Пример.

 

dimensionа(5), b(2,3)

dimension c(5), d(3,2)

 

Массивы b, d состоят из 6 элементов, расположенных по - разному.

 

b:

 

d:

 

,

 

Оператор

dimensionа(-1:0,2)

 

описывает двумерный массив, у которого первый индекс меняется от -1 до 0, а второй от 1 до 2 :

а(-1,1), а(0,1), а(-1,2), а(0,2)

 

Операторы описания массивов следует ставить в начале программы, до описания оператор-функций.



2016-01-02 411 Обсуждений (0)
Операторы описания массивов следует ставить в начале программы, до описания оператор-функций 0.00 из 5.00 0 оценок









Обсуждение в статье: Операторы описания массивов следует ставить в начале программы, до описания оператор-функций

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы...
Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (411)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)