ввод N, A
нц для m от N1 до 1 шаг 1
нц для i от 1 до m
если A[ i ] > A[i+1] то
X=A[i]
A[i]=B[i+1]
A[i+1]=X
конец если
кц кц вывод A
В этом фрагменте для перестановки значений элементов массива используется промежуточная переменная.
Задача поиска максимального элемента в массиве решается следующим образом. Пусть maxA — требуемое значение максимального элемента. Сначала присваиваем переменной maxA значение первого элемента массива, потом сравниваем первый элемент со следующим. Если следующий элемент (второй) больше первого, присваиваем его значение переменной maxA, а если нет — переходим к следующему (третьему элементу) и т.д.
Аналогично решается задача поиска минимального элемента в массиве.
В Python эти алгоритмы уже реализованы в функциях max(), min() и в методе sort() (метод sort() сортирует список по возрастанию значений элементов).
Задачи для самостоятельного решения.
Составьте блоксхему поиска максимального элемента в одномерном массиве.
Нарисуйте полную блоксхему алгоритма сортировки массива «методом пузырька».
Дан одномерный массив числовых значений, насчитывающий N элементов. Поменять местами элементы, стоящие на чётных и нечётных местах: А(1) с А(2),
А (3) с А(4) ..
Дан одномерный массив числовых значений, насчитывающий N элементов. Выполнить перемещение элементов массива по кругу вправо, т.е. A(1) > A(2);
A(2) > A(3); ... A(n) > A(1).
Дан одномерный массив числовых значений, насчитывающий N элементов. Поменять местами первую и вторую половины массива.
Дан одномерный массив числовых значений, насчитывающий N элементов. Поменять местами группу из М элементов, начинающихся с № К с группой из М элементов, начинающихся № Р.
Дан одномерный массив числовых значений, насчитывающий N элементов. Вставить группу из М новых элементов, начиная с № К.
Дан одномерный массив числовых значений, насчитывающий N элементов. Сумму элементов массива и количество положительных элементов поставить на первое и второе место.
Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить из него М элементов, начиная с номера К.
10.Дан одномерный массив числовых значений, насчитывающий N элементов.
Исключить все нулевые элементы.
11. Дан одномерный массив числовых значений, насчитывающий N элементов. После каждого отрицательного элемента вставить новый элемент, равный квадрату этого отрицательного элемента.
12.Дан одномерный массив числовых значений, насчитывающий N элементов. Определить образуют ли элементы массива, расположенные перед первым отрицательным элементом, возрастающую последовательность.
13.Дан одномерный массив числовых значений, насчитывающий N элементов. Определить образуют ли элементы массива, расположенные перед первым отрицательным элементом, убывающую последовательность.
14.Дан одномерный массив числовых значений, насчитывающий N элементов. Из элементов исходного массива построить два новых. В первый должны входить только положительные элементы, а во второй только отрицательные элементы.
15.Дан одномерный массив числовых значений, насчитывающий N элементов. Добавить столько элементов, чтобы положительных и отрицательных стало бы поровну.
16.Дан одномерный массив числовых значений, насчитывающий N элементов. Добавить к элементам массива такой новый элемент, чтобы сумма положительных элементов стала бы равна модулю суммы отрицательных элементов.
17. Дан одномерный массив числовых значений, насчитывающий N элементов. Дано положительное число Т. Разделить это число между положительными элементами массива пропорционально значениям этих элементов, и добавить полученные доли к соответствующим элементам.
18.Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить из массива элементы, принадлежащие промежутку [В;С].
19.Дан одномерный массив числовых значений, насчитывающий N элементов. Вместо каждого нулевого элемента поставить сумму двух предыдущих элементов массива.
20.Дан одномерный массив числовых значений, насчитывающий N элементов. Определить имеются ли в массиве два подряд идущих нуля.
21. Дан одномерный массив числовых значений, насчитывающий N элементов. Подсчитать количество чисел, делящихся на 3 нацело, и среднее арифметическое чётных чисел. Поставить полученные значения на первое и последнее места в массиве (увеличив массив на 2 элемента).
22.Заданы М строк символов, которые вводятся с клавиатуры. Найти количество символов в самой длинной строке. Выровнять строки по самой длинной строке, поставив перед каждой строкой соответствующее количество звёздочек.
23.Заданы М строк символов, которые вводятся с клавиатуры. Из заданных строк, каждая из которых представляет одно слово, составить одну длинную строку, разделяя слова пробелами.
24.Заданы М строк слов, которые вводятся с клавиатуры. Подсчитать количество гласных букв в каждой из заданных строк.
25.Заданы М строк слов, которые вводятся с клавиатуры. Вводится слог (последовательность букв). Подсчитать количество слогов в каждой строке.
26.Заданы М строк слов, которые вводятся с клавиатуры. Вводится слог (последовательность букв). Удалить данный слог из каждой строки.
27. Заданы М строк символов, которые вводятся с клавиатуры. Напечатать все центральные буквы слов нечетной длинны.
28.Заданы М строк символов, которые вводятся с клавиатуры. Каждая строка содержит слово. Записать каждое слово в разрядку через пробелы.
29.Задана строка символов, в которой встречается символ ".". Поставить после каждого такого символа системное время ПК.
30.Заданы М строк слов, которые вводятся с клавиатуры. Подсчитать количество пробелов в каждой из строк.
31. Заданы М строк символов, которые вводятся с клавиатуры. Каждая строка представляет собой последовательность символов, включающих в себя вопросительные знаки. Заменить в каждой строке все имеющиеся вопросительные знаки звёздочками.
32.Определить сумму чисел с нечётными номерами и произведение чисел с чётными номерами. Подсчитать количество слагаемых и количество сомножителей. При вводе числа 55555 закончить работу.
33.Определить сумму вводимых положительных чисел. Причём числа с нечётными номерами суммировать с обратным знаком, а числа с чётными номерами перед суммированием возводить в квадрат. Подсчитать количество слагаемых. При вводе первого отрицательного числа закончить работу.
34.Даны число Р и число Н. Определить сумму чисел меньше Р, произведение чисел больше Н и количество чисел в диапазоне значений Р и Н. При вводе числа равного Р или Н, закончить работу.
35.Суммировать вводимые числа, среди которых нет нулевых. При вводе нуля обеспечить вывод текущего значения суммы. При вводе числа 99999 закончить работу.
36.Вводятся положительные числа. Определить сумму чисел, делящихся на положительное число В нацело. При вводе отрицательного числа закончить работу.
37. Для вводимых чисел определить процент положительных и отрицательных чисел. При вводе числа –65432 закончить работу.
Достарыңызбен бөлісу: |