Файл: 17. Введение 18. Линейные программы 19. Ветвления 20. Программирование циклических алгоритмов.ppt
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 10.01.2024
Просмотров: 1712
Скачиваний: 2
СОДЕРЖАНИЕ
Направления в программировании
Вывод данных с текстом (f-строки)
Ввод двух чисел в одной строке
Выбор наибольшего из двух чисел
Выбор наибольшего из двух чисел-2
Задачи (без функций min и max!)
Хорошее решение (операция «И»)
Программирование экспертной системы
Модифицированный алгоритм Евклида
Задачи на циклы (дополнительные)
Вывод массива на экран (Python)
Сумма элементов массива (Python)
Подсчёт элементов по условию (Python)
Среднее арифметическое (Python)
Перестановка элементов массива
Вывод массива на экран (Python)
print ( *A ) разбить список на элементыprint (1, 2, 3, 4, 5)[1,2,3,4,5]1 2 3 4 5Ввод с клавиатуры
for i in range(N): s = "A[" + str(i) + "]=" A[i] = int(input(s))A[0] = A[1] = A[2] = A[3] = A[4] = 512345613for i in range(N): A[i] = int(input()) Что плохо? ?С подсказкой для ввода:или так:A = [int(input()) for i in range(N)]Ввод с клавиатуры (Python)
Ввод всех чисел в одной строке:data = input() # "1 2 3 4 5"s = data.split() #["1","2","3","4","5"]A = [ int(x) for x in s ] # [1,2,3,4,5]int(x) или так:A = [int(x) for x in input().split()] const N = 10;var A: array[0..N-1] of integer;...for i:=0 to N-1 do A[i] = i;for i:=0 to N-1 do write(A[i], ' ');Паскаль: объявление массива С++:int A[N], i;for (i = 0; i < N; i++) A[i] = i;for (i = 0; i < N; i++) cout << A[i] << " "; Нумерация элементов всегда с нуля! !Задачи
«A»: а) Заполните все элементы массива из 10 элементов значением X , введённым с клавиатуры.б) Заполните массив из 10 элементов последовательными натуральными числами, начиная с X (значение X введите с клавиатуры).«B»: а) Заполните массив из 10 элементов натуральными числами в порядке убывания. С клавиатуры вводится значение X. Последний элемент должен быть равен X, предпоследний равен X+1 и т.д.б) Заполните массив из 10 элементов степенями числа 2 (от 21 до 2N), так чтобы первый элемент был равен 2, следующий – 4, следующий – 8 и т.д.Задачи
«C»: а) Заполните массив из 10 элементов степенями числа 2, начиная с конца, так чтобы последний элемент массива был равен 1, а каждый предыдущий был в 2 раза больше следующего.б) С клавиатуры вводится целое число X. Заполните массив из 11 элементов целыми числами, так чтобы средний элемент массива был равен X, слева от него элементы стояли по возрастанию, а справа – по убыванию. Соседние элементы отличаются на единицу. Например, при X = 3 массив из 5 элементов заполняется так: 1 2 3 2 1.
Заполнение случайными числами
from random import randintN = 10 # размер массиваA = [0]*N # выделить памятьfor i in range(N): A[i] = randint(20,100) В краткой форме:from random import randintN = 10A = [ randint(20,100) for i in range(N) ] из библиотеки (модуля) random взять функцию randint N = 10A = [0]*N # память уже выделенаfor i in range(N): # здесь работаем с A[i] Вывести на экран в столбик:for i in range(N): ??? Что вместо «???»? !print( A[i] ) Вывести на экран в строчку:for i in range(N): ??? print( A[i], end = " " ) print( *A ) for i in range(N): ??? for i in range(N): ??? Вывести числа, на 1 большие, чем A[i]: Что вместо «???»? !print( A[i]%10 ) Вывести последние цифры:print( A[i]+1 ) Увеличить на 1:for i in range(N): ??? Что вместо «???»? !A[i] += 1 Умножить на 2:for i in range(N): ??? A[i] *= 2 Заполнить нулями:for i in range(N): ??? A[i] = 0Задачи-2
«A»: Напишите программу, которая заполняет массив из 10 элементов случайными числами в диапазоне [0,10], выводит его на экран, а затем выводит на экран квадраты всех элементов массива.Пример:Массив: 5 6 2 3 1 4 8 7 Квадраты: 25 36 4 9 1 16 64 49 «B»: Напишите программу, которая заполняет массив из 10 элементов случайными числами в диапазоне [100,300] и выводит его на экран. После этого на экран выводятся средние цифры (число десятков) всех чисел, записанных в массив.Пример:__Массив:_142_224_135_257_167_295_126_223_138_270___Число_десятков:_4_2_3_5_6_9_2_2_3_7___Задачи-2'>Пример:Массив: 142 224 135 257 167 295 126 223 138 270 Число десятков: 4 2 3 5 6 9 2 2 3 7Задачи-2
«C»: Напишите программу, которая заполняет массив из 10 элементов случайными числами в диапазоне [100,500] и выводит его на экран. После этого на экран выводятся суммы цифр всех чисел, записанных в массив.Пример:Массив: 162 425 340 128 278 195 326 414 312 177 Суммы цифр: 9 11 7 11 17 15 11 9 6 15 § 21. Алгоритмы обработки массивовСумма элементов массива
Sum = 0for i in range(N): Sum = Sum + A[i]print( Sum )Задача. Найти сумму элементов массива из N элементов. Какие переменные нужны? ?| i | Sum |
| 0 | |
| 5 | 2 | 8 | 3 | 1 |
Сумма элементов массива (Python)
Sum = 0for x in A: Sum += xprint( Sum )Задача. Найти сумму элементов массива A.или так:print( sum(A) ) Не нужно знать размер! !for x in A: для всех элементов из A встроенная функция Sum = 0for i in range(N): Sum += A[i]print( Sum )Задача. Найти сумму чётных элементов массива. Что делаем с нечётными? ? if A[i] % 2 == 0: Sum += A[i]print( Sum )if A[i] % 2 == 0: Sum = 0for x in A: Sum += xprint( Sum )Задача. Найти сумму чётных элементов массива. if x % 2 == 0: Sum += xprint( Sum )
| 4 | 3 | 6 | 8 | 1 |