Разделы презентаций


Массивы

Содержание

Одномерные массивыA(1)A(3)A(5)A(7)A(9)A(2)A(4)A(6)A(8)A(10)Вектора, последовательностиB(-3)B(-1)B(1)B(3)B(-2)B(0)B(2)B(4)

Слайды и текст этой презентации

Слайд 1Лекция 7
Часть 2

МАССИВЫ

Лекция 7Часть 2МАССИВЫ

Слайд 2Одномерные массивы










A(1)
A(3)
A(5)
A(7)
A(9)
A(2)
A(4)
A(6)
A(8)
A(10)
Вектора, последовательности








B(-3)
B(-1)
B(1)
B(3)
B(-2)
B(0)
B(2)
B(4)

Одномерные массивыA(1)A(3)A(5)A(7)A(9)A(2)A(4)A(6)A(8)A(10)Вектора, последовательностиB(-3)B(-1)B(1)B(3)B(-2)B(0)B(2)B(4)

Слайд 3Одномерные массивы
Объявление и инициализация
real A(10)
real V(1:10), W(-5:15), S(0:90)
real, dimension(10) ::

R = 2 ! все элементы 2

! границы задаются через

константы
integer, parameter :: N = 10
complex :: B(-N:N) = (0.0,0.0) ! обнуление
integer :: C(10) = (/2,6,3,2,1,4,5,6,7,8/)
integer :: D(1:7) = [6,7,2,1,9,0,3]

! массив констант
integer, parameter :: INDX(4) = [12,86,75,9]
Одномерные массивыОбъявление и инициализацияreal A(10)real V(1:10), W(-5:15), S(0:90)real, dimension(10) :: R = 2 ! все элементы 2!

Слайд 4Одномерные массивы
Конструктор массива и присваивание
real A(10)

A = [1,2,3,4,5,6,7,8,9,0] !

конструктор
A = (/0,0,0,0,0,2,2,2,2,2/)

A = 0 ! обнуление массива

A = (/(0,k=1,5),(2,k=6,10)/)

! циклический список

A(1) = -2 ! присваивание элементу
A(3) = 2*A(1)+A(5)
Одномерные массивыКонструктор массива и присваиваниеreal A(10)A = [1,2,3,4,5,6,7,8,9,0]  ! конструкторA = (/0,0,0,0,0,2,2,2,2,2/)A = 0	! обнуление массиваA

Слайд 5Одномерные массивы
Операции над элементами массивов
(массив как обычная переменная)
real A(10), B(10),

C(10)

C = A+B
1. Сложить два вектора
2. Перемножить элементы

вектора C(i) = A(i)*B(i)

real A(10), B(10), C(10)

C = A*B

Одномерные массивыОперации над элементами массивов(массив как обычная переменная)real A(10), B(10), C(10)C = A+B 1. Сложить два вектора

Слайд 6Одномерные массивы
Операции над элементами массивов
3. Возведение в степень C(i)

= A(i)**B(i)
real A(10), B(10), C(10)

C = A**B
real A(10), B(10)

call

random_number(A)
B = sqrt(A)

4. Вычисление процедур от элементов массива

Одномерные массивыОперации над элементами массивов 3. Возведение в степень C(i) = A(i)**B(i)real A(10), B(10), C(10)C = A**B

Слайд 7Одномерные массивы
Обращение к группе элементов
(сечение массива)
1. Индексный триплет (все

параметры необязательны)

нижняя граница : верхняя граница : шаг
0
0
0
3
3
3
3
3
2
2

A(4:8)=3

Одномерные массивыОбращение к группе элементов(сечение массива) 1. Индексный триплет (все параметры необязательны)нижняя граница : верхняя граница :

Слайд 8Одномерные массивы
5
5
5
5
5
3
3
3
2
2

A(:5)=5
0
0
0
3
3
3
5
5
5
5

A(7:)=5

Одномерные массивы5555533322A(:5)=50003335555A(7:)=5

Слайд 9Одномерные массивы
5
5
5
5
5
3
5
3
5
2

A(1:10:2)=5
0
0
0
3
3
3
5
5
5
5

A(::3)=5







Одномерные массивы5555535352A(1:10:2)=50003335555A(::3)=5

Слайд 10Одномерные массивы
2. Векторный индекс - одномерный массив,

содержащий номера избранных элементов массива.
3
1
8
7
4
5
2
0
1
6
A =
1
2
3
4
5
6
7
8
9
10
A(V) = 0






1
2
5
7
8
9
V

=

Применяем векторный индекс

8

7

5

6

A =

0

0

0

0

0

0

Одномерные массивы 2. Векторный индекс - одномерный массив,   содержащий номера избранных элементов массива. 3187452016A =12345678910A(V)

Слайд 11Одномерные массивы
Ввод / вывод (экран)
program read_array
integer A(5)

! данные вводятся через

пробел / перевод строки
read(*,*,ERR = 100) A ! 1 2

3 4 5

write(*,*) A ! 1 2 3 4 5

write(*,*) (A(i),i = 1,2) ! 1 2

write(*,*) A(::2) ! 1 3 5
stop

100 stop "Ошибка при чтении данных"

end
Одномерные массивыВвод / вывод (экран)program read_arrayinteger A(5)! данные вводятся через пробел / перевод строкиread(*,*,ERR = 100) A

Слайд 12Одномерные массивы
Ввод / вывод (файл)
program read_array_file
integer A(5)

open(1,file = "D:\DATA\ARR.txt",ERR =

100) ! ввод из файла
read(1,*,ERR = 101) A
close(1)

open(2,file = "D:\DATA\RES.txt",ERR

= 102) ! вывод в файл
write(2,*,ERR = 103) A(1:4)
close(2)
stop

100 stop "Ошибка при открытии файла"
101 stop "Ошибка при чтении данных"
102 stop "Ошибка при создании файла"
103 stop "Ошибка при записи данных"
end
Одномерные массивыВвод / вывод (файл)program read_array_fileinteger A(5)open(1,file =

Слайд 13Двумерные массивы
A =
(1,1)
real A(2,4) ! 2 строки, 4 столбца

real

A(1:2,1:4), B(-1:100,-1:200)

real, dimension(2,4) :: A

integer, parameter :: Mi = 2,

Mj = 4
real, dimension :: A(Mi,Mj)

Объявление

(1,2)

(1,3)

(1,4)

(2,1)

(2,2)

(2,3)

(2,4)

Двумерные массивыA = (1,1)real A(2,4) ! 2 строки, 4 столбцаreal A(1:2,1:4), B(-1:100,-1:200)real, dimension(2,4) :: Ainteger, parameter ::

Слайд 14Двумерные массивы
Инициализация
real :: A(2,4) = [2,5,7,9,0,1,4,8]
Двумерный массив хранится в памяти

по столбцам
real :: A(2,4) = 0 ! обнуление массива

Двумерные массивыИнициализацияreal :: A(2,4) = [2,5,7,9,0,1,4,8]Двумерный массив хранится в памяти по столбцамreal :: A(2,4) = 0

Слайд 15Двумерные массивы
Операции над элементами массивов
(массив как обычная переменная)
real A(10,10), B(10,10),

C(10,10)

C = A+B
1. Сложить две матрицы
2. Перемножить элементы

матриц
C(i,j) = A(i,j)*B(i,j)

real A(10,10), B(10,10), C(10,10)

C = A*B

Двумерные массивыОперации над элементами массивов(массив как обычная переменная)real A(10,10), B(10,10), C(10,10)C = A+B 1. Сложить две матрицы

Слайд 16Двумерные массивы
Использование сечений
0


A(:,1)=0
0


0


0


1. Обнулить первый
столбец

матрицы

0
0
0
A(1,:)=0









2. Обнулить первую
строку матрицы

Двумерные массивыИспользование сечений0A(:,1)=0000 1. Обнулить первый    столбец матрицы000A(1,:)=0 2. Обнулить первую

Слайд 17Двумерные массивы
Использование сечений



A(2:Mi-1,2:Mj-1)=2

2
2

2
2



3. Присвоить подматрице значения

2
2


2
2


2
2






Двумерные массивыИспользование сеченийA(2:Mi-1,2:Mj-1)=22222 3. Присвоить подматрице значения222222

Слайд 18Двумерные массивы
Ввод / вывод (экран)
program read_array_2D
integer A(3,3)

! данные вводятся по

столбцам (формат хранения в памяти)
read(*,*,ERR = 100) A ! 1

1 1 2 2 2 3 3 3

! выведем данные по строкам
do i = 1,3
write(*,*) (A(i,j),j = 1,3)
end do
stop

100 stop "Ошибка при чтении данных"
end
Двумерные массивыВвод / вывод (экран)program read_array_2Dinteger A(3,3)! данные вводятся по столбцам (формат хранения в памяти)read(*,*,ERR = 100)

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика