Теоретические основы информатики

Содержание

Слайд 2

Что мы знаем!!!

Переменная
поименованная коробочка, которая содержит значения

Что мы знаем!!! Переменная поименованная коробочка, которая содержит значения

Слайд 3

Массивы, работа с массивами

Студент 1

A

Студент 1

B

Студент 1

C

Студент 100

XX

Студент 101

XY

Создаем для каждого студента

Массивы, работа с массивами Студент 1 A Студент 1 B Студент 1
отдельную переменную

Слайд 4

Студент 1

0

Студент 1

1

Студент 1

2

Студент 100

99

Студент 101

100

Массивы, работа с массивами

Массив студентов - СТУДЕНТЫ:

Создается

Студент 1 0 Студент 1 1 Студент 1 2 Студент 100 99
только один МАССИВ, где находятся все студенты.
Для обращения к студенту – из Массива студентов затребуем студента по предковому номеру.
Например СТУДЕНТЫ[5] – обращаемся к студенту под №5

Слайд 5

Массивы, работа с массивами

А теперь с числами ☺

A=3

B=2

C=100

XX=33

XY=12

3

2

100

33

12

M:

0

1

2

99

100

Массивы, работа с массивами А теперь с числами ☺ A=3 B=2 C=100

Слайд 6

Массив - структурированный тип данных, состоящий из фиксированного числа элементов одного типа.

Массивы,

Массив - структурированный тип данных, состоящий из фиксированного числа элементов одного типа.
работа с массивами

Либо только студенты, либо только числа.

Размер массива не меняется,
задается заранее количество элементов

Определение

Слайд 7

Массив - разновидность переменных, в котором храниться несколько значений

Определение

Массивы, работа с массивами

Массив - разновидность переменных, в котором храниться несколько значений Определение Массивы, работа с массивами

Слайд 8

Определение

Массивы, работа с массивами

Массив (индексированный массив) - именованный набор однотипных переменных, доступ

Определение Массивы, работа с массивами Массив (индексированный массив) - именованный набор однотипных
к которым осуществляется по индексу.

Массив (индексированный массив) - именованный пронумерованный набор однотипных элементов.

Слайд 9

Массивы, работа с массивами

Массив A из 3-х значений:

A:

Массив B из 10 значений:

B:

0

1

2

0

1

2

3

4

5

6

7

8

9

Массив

Массивы, работа с массивами Массив A из 3-х значений: A: Массив B
C из 1 значения – выброженный массив:

С:

0

Слайд 10

Массивы, работа с массивами

1

2

5

A:

0

1

2

Обращение к элементам массива: - запись в массив

Ai =

Массивы, работа с массивами 1 2 5 A: 0 1 2 Обращение
5 – обращение i-ому элементу
A[i] = 5

A1 = 5 – обращение i-ому элементу
A[1] = 5

Слайд 11

Массивы, работа с массивами

Обращение к элементам массива: - чтение из массива

1

2

5

A:

0

1

2

x =

Массивы, работа с массивами Обращение к элементам массива: - чтение из массива
A[0]
y = A[1]
z = A[2]

1 ? x
2 ? y
5 ? z

помещаем

Слайд 12

Массивы, работа с массивами

Обращение к элементам массива:

1

2

5

A:

0

1

2

A[0]=A[2]

5

2

5

A:

0

1

2

ДО

ПОСЛЕ

Массивы, работа с массивами Обращение к элементам массива: 1 2 5 A:

Слайд 13

Массивы, работа с массивами

ЗАДАЧА: поменять местами 2 элемента массива

1

2

A:

0

1

2

1

A:

0

1

C = A[1]

Массивы, работа с массивами ЗАДАЧА: поменять местами 2 элемента массива 1 2
A[1]=A[2]
A[2]=C

ДО

ПОСЛЕ

Слайд 14

Ввод-вывод значений в массив

Ввод массива А из 10 элементов:
Вводим 0-й элемент
Вводим 1-й

Ввод-вывод значений в массив Ввод массива А из 10 элементов: Вводим 0-й
элемент
Вводим 2-й элемент
Вводим 3-й элемент
Вводим 4-й элемент
Вводим 5-й элемент
Вводим 6-й элемент
Вводим 7-й элемент
Вводим 8-й элемент
Вводим 9-й элемент

Начало

Ввод A[0]

Ввод A[1]

Ввод A[2]

Ввод A[3]

Ввод A[4]

Ввод A[5]

Ввод A[6]

Ввод A[7]

Ввод A[8]

Ввод A[9]

Конец

Слайд 15

Ввод массива А из 10 элементов:
Вводим 0-й элемент
Вводим 1-й элемент
Вводим 2-й элемент
Вводим

Ввод массива А из 10 элементов: Вводим 0-й элемент Вводим 1-й элемент
3-й элемент
Вводим 4-й элемент
Вводим 5-й элемент
Вводим 6-й элемент
Вводим 7-й элемент
Вводим 8-й элемент
Вводим 9-й элемент

Ввод-вывод значений в массив

Начало

Ввод A[0]

Ввод A[1]

Ввод A[2]

Ввод A[3]

Ввод A[4]

Ввод A[5]

Ввод A[6]

Ввод A[7]

Ввод A[8]

Ввод A[9]

Конец

Что меняется от перехода от одного шага к другому???

Слайд 16

Что мы знаем!!!

ЦИКЛ
повторение одного и того же действия
много раз

Что мы знаем!!! ЦИКЛ повторение одного и того же действия много раз

Слайд 17

Что мы знаем!!!

Линейный

Типы алгоритмов

Что мы знаем!!! Линейный Типы алгоритмов

Слайд 18

Что мы знаем!!!

Типы алгоритмов

Ветвления

Что мы знаем!!! Типы алгоритмов Ветвления

Слайд 19

Что мы знаем!!!

Типы алгоритмов

Циклические

С предусловием

С постусловием

Без условия

С заданным числом повторений

Что мы знаем!!! Типы алгоритмов Циклические С предусловием С постусловием Без условия С заданным числом повторений

Слайд 20

Ввод массива А из 10 элементов:
Вводим 0-й элемент
Вводим 1-й элемент
Вводим 2-й элемент
Вводим

Ввод массива А из 10 элементов: Вводим 0-й элемент Вводим 1-й элемент
3-й элемент
Вводим 4-й элемент
Вводим 5-й элемент
Вводим 6-й элемент
Вводим 7-й элемент
Вводим 8-й элемент
Вводим 9-й элемент

Ввод-вывод значений в массив

Что меняется от перехода от одного шага к другому??? – только индекс = номеру шага

“номер шага - НШ”=0
Вводим элемент с индексом =“НШ”
Переходим к следующему шагу (НШ=НШ+1) к п. ??

Слайд 21

Ввод массива А из 10 элементов:
Вводим 0-й элемент
Вводим 1-й элемент
Вводим 2-й элемент
Вводим

Ввод массива А из 10 элементов: Вводим 0-й элемент Вводим 1-й элемент
3-й элемент
Вводим 4-й элемент
Вводим 5-й элемент
Вводим 6-й элемент
Вводим 7-й элемент
Вводим 8-й элемент
Вводим 9-й элемент

Ввод-вывод значений в массив

Что меняется от перехода от одного шага к другому??? – только индекс = номеру шага

“номер шага - НШ”=0
проверяем. Если заполнили все элементы (0..9), то выходим, иначе вводим элемент
Вводим элемент с индексом =“НШ”
Переходим к следующему шагу (НШ=НШ+1) к п. 2

Слайд 22

Ввод массива А из 10 элементов:
“номер шага - НШ”=0
проверяем. Если заполнили

Ввод массива А из 10 элементов: “номер шага - НШ”=0 проверяем. Если
все элементы (0..9), то выходим, иначе вводим элемент
Вводим элемент с индексом =“НШ”
Переходим к следующему шагу (НШ=НШ+1) к п. 2

Ввод-вывод значений в массив

Начало

i < 10

Номер шага – переменная i

i=0

Ввод A[i]

i=i+1

Конец

нет

да

Цикл с предусловием. С известным числом повторений.

Слайд 23

Ввод-вывод значений в массив

Начало

Ввод A[0]

Ввод A[1]

Ввод A[2]

Ввод A[3]

Ввод A[4]

Ввод A[5]

Ввод A[6]

Ввод A[7]

Ввод

Ввод-вывод значений в массив Начало Ввод A[0] Ввод A[1] Ввод A[2] Ввод
A[8]

Ввод A[9]

Конец

Начало

i < 10

i=0

Ввод A[i]

i=i+1

Конец

нет

да

Алгоритмы эквивалентны, так как выполняют одни и те же действия

i=0
Ввод А[i] (А[0])
i=i+1 (i=1)
Ввод А[i] (А[1])
i=i+1 (i=2)
Ввод А[i] (А[2])
i=i+1 (i=3)
Ввод А[i] (А[3])
i=i+1 (i=4)
Ввод А[i] (А[4])
i=i+1 (i=5)
Ввод А[i] (А[5])
i=i+1 (i=6)
Ввод А[i] (А[6])
i=i+1 (i=7)
Ввод А[i] (А[7])
i=i+1 (i=8)
Ввод А[i] (А[8])
i=i+1 (i=9)
Ввод А[i] (А[9])

Слайд 24

Ввод-вывод значений в массив

Какой вид цикла лучше использовать, если мы заранее знаем

Ввод-вывод значений в массив Какой вид цикла лучше использовать, если мы заранее
количество шагов?
Какой вид цикла лучше использовать, что бы шаги отсчитывались автоматически??

Слайд 25

Ввод-вывод значений в массив

Какой вид цикла лучше использовать, если мы заранее знаем

Ввод-вывод значений в массив Какой вид цикла лучше использовать, если мы заранее
количество шагов?
Какой вид цикла лучше использовать, что бы шаги отсчитывались автоматически??

Цикл алгоритмической структуры без условия = цикл с итератором

Слайд 26

Начало

i < 10

i=0

Ввод A[i]

i=i+1

Конец

нет

да

Начало

i=0..9 step 1

Ввод A[i]

Конец

Ввод-вывод значений в массив

Начало i i=0 Ввод A[i] i=i+1 Конец нет да Начало i=0..9 step

Слайд 27

Ввод-вывод значений в массив

Начало

i=0..9 step 1

Ввод A[i]

Конец

i=0
Проверяем i<=9 (i<10 – так как

Ввод-вывод значений в массив Начало i=0..9 step 1 Ввод A[i] Конец i=0
целое), если да, то продолжаем цикл, иначе выходим за пределы цикла.
Ввод A[i] (А[0])
i=i+1 (i=1)
Проверяем i<=9 (i<10 – так как целое), если да, то продолжаем цикл, иначе выходим за пределы цикла.
Ввод A[i] (А[1])
. . .
27) i=i+1 (i=10)
28) Проверяем i<=9 (i<10 – так как целое), если да, то продолжаем цикл, иначе выходим за пределы цикла.
29) КОНЕЦ

Слайд 28

Заполнение значений в массив

Заполним массив А из 10 элементов значениями от 0

Заполнение значений в массив Заполним массив А из 10 элементов значениями от
до 9

Начало

i=0..9 step 1

Конец

A[i]=i

Начало

i=9..0 step -1

Конец

A[i]=i

Слайд 29

Заполнение значений в массив

Заполним массив А из 10 элементов значениями от 5

Заполнение значений в массив Заполним массив А из 10 элементов значениями от
до 14

Начало

i=0..9 step 1

Конец

A[i]=i+5

Слайд 30

Заполнение значений в массив

Поместить в массив первые 10 членов арифметической прогрессии

Начало

i=1..9 step

Заполнение значений в массив Поместить в массив первые 10 членов арифметической прогрессии
1

Конец

A[i]=A[i-1]+b

Ввод A[0]

Ввод b

Вводим a0 в A[0]
Вводим b
Рассчитываем члены прогрессии с 1-ого по 9-ый
Каждый член прогрессии рассчитывается через предыдущий (Ai=Ai-1 + b)

Ai=Ai-1 + b

Слайд 31

Копирование значений в массив

Как скопировать массив A(5 элементов) в массив B(5 элементов)??

A=B
поэлементно

Копирование значений в массив Как скопировать массив A(5 элементов) в массив B(5 элементов)?? A=B поэлементно

Слайд 32

Мы не можем присваивать и копировать массивы одним действием!!!

Мы не можем присваивать и копировать массивы одним действием!!!

Слайд 33

Копирование значений в массив

Как скопировать массив A(5 элементов) в массив B(5 элементов)??

A=B
поэлементно

V

х

A0=B0,

Копирование значений в массив Как скопировать массив A(5 элементов) в массив B(5
A1=B1, A2=B2 , A3=B3 , A4=B4

A

B

Слайд 34

Копирование значений в массив

Как скопировать массив A(5 элементов) в массив B(5 элементов)??

ПОСЛЕДОВАТЕЛЬНО

А[0]=B[0]
A[1]=B[1]
A[2]=B[2]
A[3]=B[3]
A[4]=B[4]

Начинаем

Копирование значений в массив Как скопировать массив A(5 элементов) в массив B(5
с нулевого элемента i=0, до тех пор, пока не закончились элементы (i<5)
A[i]=B[i]
Переходим к следующему элементу (i=i+1)

Слайд 35

Начинаем с нулевого элемента i=0, до тех пор, пока не закончились элементы

Начинаем с нулевого элемента i=0, до тех пор, пока не закончились элементы
(i<5)
A[i]=B[i]
Переходим к следующему элементу (i=i+1)

Копирование значений в массив

Как скопировать массив A(5 элементов) в массив B(5 элементов)??

Начало

i < 5

i=0

i=i+1

Конец

нет

да

A[i]=B[i]

Слайд 36

Начинаем с нулевого элемента i=0, до тех пор, пока не закончились элементы

Начинаем с нулевого элемента i=0, до тех пор, пока не закончились элементы
(i<5)
A[i]=B[i]
Переходим к следующему элементу (i=i+1)

Копирование значений в массив

Как скопировать массив A(5 элементов) в массив B(5 элементов)??

Начало

i=0..4 step 1

Конец

A[i]=B[i]

Слайд 37

Массивы, работа с массивами

ЗАДАЧА: посчитать сумму элементов массива MAS размерностью 7 элементов

ИДЕЯ:

Массивы, работа с массивами ЗАДАЧА: посчитать сумму элементов массива MAS размерностью 7
имеется коробочка, куда набрасываем (добавляем) элементы последовательно

3

1

2

1

5

7

4

0

1

3

1

2

1

5

7

4

3

2

3

1

2

1

5

7

4

4

3

3

1

2

1

5

7

4

6

4

3

1

2

1

5

7

4

7

И Т.Д.