Файл: Алгоритм и его свойства Простейшие программы Вычисления Ветвления Символьные строки Циклические алгоритмы Массивы (списки) Поиск в массиве Алгоритм и его свойства Что такое алгоритм.pptx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 30.11.2023
Просмотров: 1083
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
Координатное поле окна для рисования
Как организовать цикл (36 повторений)?
Как записать значение в переменную?
Сложение чисел: простое решение
Сложение чисел: полное решение
Ввод двух значений в одной строке
Линейный конгруэнтный генератор
Условный оператор: неполная форма
Ax
summa
43681041018
print ( "A[", nX, "]=", X, sep = "" )else: print ( "Не нашли!" )
Пример: Массив: 39 52 84 77 45 32 19 38 49 85 Минимальный элемент: A[6]=19«4»: Заполнить массив из 10 элементов случайными числами в интервале [10,100] и найти минимальный и максимальный элементы массива и их номера. Пример: Массив: 39 52 84 77 45 32 19 38 49 85 Минимальный элемент: A[6]=19 Максимальный элемент: A[9]=85«5»: Заполнить массив из 10 элементов случайными числами в интервале [10,100] и найти минимальный и максимальный элементы из чётных элементов массива. Пример: Массив: 39 52 84 77 45 32 19 38 49 85 Минимальный чётный: 32 Максимальный чётный: 84
Среднее арифметическое
count = 0summa = 0for x in A: if x % 10 == 5: count += 1 summa += xprint ( summa/count )среднее арифметическоеили так:B = [ x for x in A ] if x % 10 == 5]print ( sum(B)/len(B) )отбираем нужныеКак определить, что оканчивается на 5??Задача. Найти среднее арифметическое элементов массива, которые оканчиваются на цифру 5.Задачи
«3»: Введите массив из 5 элементов с клавиатуры и найдите среднее арифметическое его значений. Пример: Массив: 1 2 3 4 5 Среднее арифметическое 3.000«4»: Заполните массив из 10 элементов случайными числами в интервале [0,100] и подсчитайте отдельно среднее значение всех элементов, которые <50, и среднее значение всех элементов, которые ≥50. Пример: Массив: 3 2 52 4 60 50 1 2 60 58 6 Ср. арифм. элементов < 50: 3.000 Ср. арифм. элементов >=50: 56.000Задачи
«5»: Введите размер массива N и заполните массив из N элементов числами Фибоначчи. Первые два числа Фибоначчи равны 1, а каждое следующее равно сумме двух предыдущих. Пример: Введите размер массива: 6 Числа Фибоначчи: 1 1 2 3 5 8Поиск в массиве
Поиск в массиве
Найти элемент, равный X:i = 0while A[i] != X: i += 1print ( "A[", i, "]=", X, sep = "" )Что плохо??i = 0while i < N and A[i] != X: i += 1if i < N: print ( "A[", i, "]=", X, sep = "" )else: print ( "Не нашли!" )Что если такого нет??i < NПоиск в массиве
nX = -1for i in range ( N ): if A[i] == X: nX = i breakif nX >= 0: print ( "A[", nX, "]=", X, sep = "" )else: print ( "Не нашли!" )Вариант с досрочным выходом:breakдосрочный выход из цикланомер найденного элементаПоиск в массиве
for i in range ( N ): if A[i] == X: print ( "A[", i, "]=", X, sep = "" ) breakelse: print ( "Не нашли!" )Варианты в стиле Python:если не было досрочного выхода из циклаif X in A: nX = A.index(X)print ( "A[", nX, "]=", X, sep = "" )else: print ( "Не нашли!" )
Задачи
«3»: Заполните массив из 10 элементов случайными числами в диапазоне [100,200]. Найдите первое число в массиве, у которого последняя цифра – 2. Если такого числа нет, вывести ответ «Не нашли». Пример: Массив: 131 180 117 170 162 111 109 155 159 137 Нашли: A[4]=162 Пример: Массив: 131 180 117 170 163 111 109 155 159 137 Не нашли.Задачи
«4»: Заполните массив из 10 элементов случайными числами в интервале [0,5]. Введите число X и найдите все значения, равные X. Пример: Массив: 1 2 3 1 2 4 2 5 1 3 Что ищем: 2 A[2]=2 A[5]=2 Пример: Массив: 1 2 3 1 2 4 2 5 1 3 Что ищем: 6 Не нашли.Задачи
«5»: Заполните массив из 10 элементов случайными числами в интервале [0,5]. Найдите пару одинаковых элементов, стоящих рядом. Пример: Массив: 1 2 3 3 4 1 5 1 3 2 A[2]=A[3]=3 Пример: Массив: 1 2 3 4 2 1 5 1 2 3 Нет.Максимальный элемент
Задача: найти в массиве максимальный элемент.Алгоритм: Решение:- считаем, что первый элемент – максимальный
- просмотреть остальные элементы массива: если очередной элемент > M, то записать A[i] в M
- вывести значение M
Максимальный элемент
M = A[0]for i in range(1,N): if A[i] > M: M = A[i]print ( M )M = A[0]for x in A: if x > M: M = xКак найти его номер??Варианты в стиле Python:M = max ( A )Если range(N)??M = A[0]; nMax = 0for i in range(1,N): if A[i] > M: M = A[i] nMax = iprint ( "A[", nMax, "]=", M, sep = "" )nMax = 0nMax = iЧто можно улучшить??По номеру элемента можно найти значение!!nMax = 0for i in range(1,N): if A[i] > A[nMax]: nMax = iprint ( "A[", nMax, "]=", A[nMax], sep = "" )A[nMax]A[nMax]M = max(A)nMax = A.index(M)print ( "A[", nMax, "]=", M, sep = "" )Вариант в стиле Python:номер заданного элемента (первого из…)«3»: Заполнить массив из 10 элементов случайными числами в интервале [10,100] и найти минимальный и элемент массива и его номер.Пример: Массив: 39 52 84 77 45 32 19 38 49 85 Минимальный элемент: A[6]=19«4»: Заполнить массив из 10 элементов случайными числами в интервале [10,100] и найти минимальный и максимальный элементы массива и их номера. Пример: Массив: 39 52 84 77 45 32 19 38 49 85 Минимальный элемент: A[6]=19 Максимальный элемент: A[9]=85«5»: Заполнить массив из 10 элементов случайными числами в интервале [10,100] и найти минимальный и максимальный элементы из чётных элементов массива. Пример: Массив: 39 52 84 77 45 32 19 38 49 85 Минимальный чётный: 32 Максимальный чётный: 84