- Решение задач. Array7-17
- Array7-17. (Одномерные массивы: вывод элементов)
- Четные и нечетные элементы массива
- Вывести нечетные элементы массива
- Вывести четные элементы
- Решение
- Решение
- Решение
- Pascal: Занятие № 5. Одномерные массивы в Паскале
- Одномерные массивы в Паскале
- Объявление массива
- Инициализация массива
- Вывод элементов массива
- Функция Random в Pascal
- Числа Фибоначчи в Паскале
- Максимальный (минимальный) элемент массива
- Поиск в массиве
- Циклический сдвиг
- Перестановка элементов в массиве
- Выбор элементов и сохранение в другой массив
- Сортировка элементов массива
- admin
- Bronislav
- Владимир
- Aurangzeb
Решение задач. Array7-17
Приветствуем читателей нашего сайта! Сегодня мы с вами решим задачи Array7-17.
Array7-17. (Одномерные массивы: вывод элементов)
Array7°. Дан массив размера N. Вывести его элементы в обратном порядке.
Не забываем про то, что циклом for можно пробегать числа не только от меньших к большим, но от больших к меньшим.
Array8. Дан целочисленный массив размера N. Вывести все содержащиеся в данном массиве нечетные числа в порядке возрастания их индексов, а также их количество K.
Array9. Дан целочисленный массив размера N. Вывести все содержащиеся в данном массиве четные числа в порядке убывания их индексов, а также их количество K.
Array10. Дан целочисленный массив размера N. Вывести вначале все содержащиеся в данном массиве четные числа в порядке возрастания их индексов, а затем — все нечетные числа в порядке убывания их индексов.
Array11. Дан массив A размера N и целое число K (1 ≤ K ≤ N). Вывести элементы массива с порядковыми номерами, кратными K: AK, A2·K, A3·K, …. Условный оператор не использовать.
Array12. Дан массив A размера N (N — четное число). Вывести его элементы с четными номерами в порядке возрастания номеров: A2, A4, A6, …, AN. Условный оператор не использовать.
Array13. Дан массив A размера N (N — нечетное число). Вывести его элементы с нечетными номерами в порядке убывания номеров: AN, AN−2, AN−4, …, A1. Условный оператор не использовать.
Array14. Дан массив A размера N. Вывести вначале его элементы с четными номерами (в порядке возрастания номеров), а затем — элементы с нечетными номерами (также в порядке возрастания номеров):
A2, A4, A6, …, A1, A3, A5, ….
Условный оператор не использовать.
Array15. Дан массив A размера N. Вывести вначале его элементы с нечетными номерами в порядке возрастания номеров, а затем — элементы с четными номерами в порядке убывания номеров:
A1, A3, A5, …, A6, A4, A2.
Условный оператор не использовать.
Array16°. Дан массив A размера N. Вывести его элементы в следующем порядке:
A1, AN, A2, AN−1, A3, AN−2, ….
На сегодня всё! Если у вас возникли вопросы, задавайте их в комментариях. И не забывайте рассказывать о нашем сайте своим друзьям!
Источник
Четные и нечетные элементы массива
Помощь в написании контрольных, курсовых и дипломных работ здесь.
работа с элементами массива в заданном интервале, чётные и нечётные элементы массива
Задача: Определить наибольший элемент среди нечётных по номеру элементов второй четверти массива.
Сформировать два массива: в первый включить четные элементы исходного массива, во второй – нечетные
Из одномерного массива сформировать два массива: в первый включить четные элементы исходного.
Заменить четные элементы массива на их квадраты, а нечетные уменьшить вдвое
В массиве из 20 случайных чисел заменить парные числа на их квадраты, а нечетные уменьшить вдвое.
Вывести на экран cначала четные элементы массива, затем нечетные
Дан массив целых чисел. Вывести на экран сначало четные элементы массива, нечетные потом
Вывести на экран сначала четные элементы массива потом нечетные
Дан массив целых чисел. Вывести на экран сначало четные элементы массива потом не четные
Модули. Вывести таблицу, содержащую четные и нечетные элементы массива
Есть массив действительных чисел. Вывести таблицу, содержащую четные и нечетные элементы этого.
Заменить все чётные элементы массива на их квадраты, а нечётные удвоить
Задача на массивы: «Заменить все чётные элементы массива на их квадраты, а нечётные удвоить.» .
Источник
Вывести нечетные элементы массива
1. Откройте текстовый редактор TurboPascal.
2. Напишите программу решения задачи по разработанному ранее алгоритму. В программе предусмотреть вывод справочной информации (информация об авторе, наименование и назначение программы), возможность многократных вычислений.
3. Отладьте программу.
4. Сохраните результаты работы программы.
Само задание.
Массив А вводится с клавиатуры. Вывести только нечетные элементы.
Заранее спасибо (๑¯ω¯๑).
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Вывести сначала четные потом нечетные элементы массива
Задача на одномерный массив: Дан массив размера N. Вывести его сначала элементы четные потом.
Вывести на экран сначала четные элементы массива, затем нечетные
Дан массив целых чисел. Вывести на экран сначала его четные элемен¬ты, затем нечетные.
Вывести на экран сначала четные элементы массива, затем нечетные
5. Дан массив целых чисел. Вывести на экран сначала его четные элемен¬ты, затем нечетные.
Получить массив С, записав на четные места элементы массива А, а на нечетные элементы массива В
Получить массив С, записав на четные места элементы массива А, а на нечетные элементы массива В
Источник
Вывести четные элементы
Дан массив, состоящий из целых чисел. Напишите программу, которая выводит те элементы массива, которые являются чётными числами.
Входные данные
Сначала задано число N — количество элементов в массиве (1N100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел.
Выходные данные
Необходимо вывести все четные элементы массива (то есть те элементы, которые являются четными числами).
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Вывести на экран четные элементы числового множества, которое является пересечением двух других множеств.
Нужна помощь. Вывести на экран четные элементы числового множества, которое является.
Найти минимальный элемент массива и вывести на экран все чётные элементы массива.
НУЖНО СОСТАВИТЬ АЛГОРИТМ В ВИДЕО БЛОК-СХЕМЫ И НАПИСАТЬ ПРОГРАММУ ДЛЯ РЕШЕНИЯ ЗАДАЧИ С.
Вывести четные элементы массива, и те элементы, которые делятся на 7
Дан массив из 10 целых чисел, вывести четные элементы массива и те элементы, которые делятся на 7
Решение
Решение
Andrew_97, Зачем вам статичный массив?
Добавлено через 50 секунд
Andrew_97, и по заданию элементы массива должен вводить сам пользователь
Решение
Darkcat112, Прочитайте описание
Добавлено через 12 минут
Главное отличие процедуры от функции : 1)процедура должна быть использована как отдельный вид оператора;
2) функция обязательно должна быть встроена во что-то. Odd проверяет. является ли аргумент нечетным числом (результат равен True (правда), если проверяемое число нечетное, и False — в противном случае).
Если мы хотим заполнить массив произвольным образом, то нужно воспользоваться функцией random. При каждом витке цикла [1..n] функция будет нам возвращать произвольное число, принадлежащее [25;54]. Например, заполняем массив произвольным образом числами [-25;25]. Всего чисел 51: до нуля 25 отрицательных, 0, 25 положительных. i-ому элементу массива мы должны присвоить одно из таких значений, где i принадлежит [1..n] : 1, 2, 3, . , 25. Каждый раз a[i] элементу массива будет выбрано произвольное число [-25;25]. Здесь функция встраивается в a[i]. Просто так, как отдельные команды — функции не используют, обязательно нужно пристроить их к чему-либо. В данном случае, к i элементу массива a[i].
Источник
Pascal: Занятие № 5. Одномерные массивы в Паскале
Одномерные массивы в Паскале
Объявление массива
Массивы в Паскале используются двух типов: одномерные и двумерные.
Определение одномерного массива в Паскале звучит так: одномерный массив — это определенное количество элементов, относящихся к одному и тому же типу данных, которые имеют одно имя, и каждый элемент имеет свой индекс — порядковый номер.
Описание массива в Паскале (объявление) и обращение к его элементам происходит следующим образом:
var dlina: array [1..3] of integer; begin dlina[1]:=500; dlina[2]:=400; dlina[3]:=150; .
Объявить размер можно через константу:
Инициализация массива
Кроме того, массив может быть сам константным, т.е. все его элементы в программе заранее определены. Описание такого массива выглядит следующим образом:
const a:array[1..4] of integer = (1, 3, 2, 5);
Заполнение последовательными числами:
var a: array of integer; var n:=readInteger; a:=new integer[n];
var a: array of integer; var n:=readInteger; SetLength(a,n); // устанавливаем размер
begin var a: array of integer; a := new integer[3]; a[0] := 5; a[1] := 2; a[2] := 3; end.
или в одну строку:
begin var a: array of integer; a := new integer[3](5,2,3); print(a) end.
Ввод с клавиатуры:
writeln (‘введите кол-во элементов: ‘); readln(n); <если кол-во заранее не известно, - запрашиваем его>for i := 1 to n do begin write(‘a[‘, i, ‘]=’); read(a[i]); . end; .
✍ Пример результата:
var a:=ReadArrInteger(5); // целые var a:=ReadArrReal(5); // вещественные
Вывод элементов массива
var a: array[1..5] of integer; <массив из пяти элементов>i: integer; begin a[1]:=2; a[2]:=4; a[3]:=8; a[4]:=6; a[5]:=3; writeln(‘Массив A:’); for i := 1 to 5 do write(a[i]:2); <вывод элементов массива>end.
Для работы с массивами чаще всего используется в Паскале цикл for с параметром, так как обычно известно, сколько элементов в массиве, и можно использовать счетчик цикла в качестве индексов элементов.
[Название файла: taskArray0.pas ]
В данном примере работы с одномерным массивом есть явное неудобство: присваивание значений элементам.
for var i:=0 to a.Length-1 do a[i] += 1;
Проход по элементам (только для чтения):
Пример:
foreach var x in a do Print(x)
Функция Random в Pascal
Для того чтобы постоянно не запрашивать значения элементов массива используется генератор случайных чисел в Паскаль, который реализуется функцией Random . На самом деле генерируются псевдослучайные числа, но суть не в этом.
Диапазон в Паскале тех самых случайных чисел от a до b задается формулой:
var f: array[1..10] of integer; i:integer; begin randomize; for i:=1 to 10 do begin f[i]:=random(10); < интервал [0,9] >write(f[i],’ ‘); end; end.
Для вещественных чисел в интервале [0,1]:
var x: real; . x := random(0.0,1.0);;
или с дополнительными параметрами (диапазон [5;15]):
[Название файла: taskArray1.pas ]
Числа Фибоначчи в Паскале
Наиболее распространенным примером работы с массивом является вывод ряда чисел Фибоначчи в Паскаль. Рассмотрим его.
Получили формулу элементов ряда.
var i:integer; f:array[0..19]of integer; begin f[0]:=1; f[1]:=1; for i:=2 to 19 do begin f[i]:=f[i-1]+f[i-2]; writeln(f[i]) end; end.
На данном примере, становится понятен принцип работы с числовыми рядами. Обычно, для вывода числового ряда находится формула определения каждого элемента данного ряда. Так, в случае с числами Фибоначчи, эта формула-правило выглядит как f[i]:=f[i-1]+f[i-2] . Поэтому ее необходимо использовать в цикле for при формировании элементов массива.
[Название файла: taskArray2.pas ]
Максимальный (минимальный) элемент массива
Псевдокод:
Поиск максимального элемента по его индексу:
// … var (min, minind) := (a[0], 0); for var i:=1 to a.Length-1 do if a[i]
[Название файла: taskArray_min.pas ]
[Название файла: taskArray4.pas ]
[Название файла: taskArray5.pas ]
[Название файла: taskArray6.pas ]
Пример:
[Название файла: taskArray7.pas ]
Поиск в массиве
Рассмотрим сложный пример работы с одномерными массивами:
Для решения поставленной задачи понадобится оператор break — выход из цикла.
Решение Вариант 1. Цикл for:
var f: array[1..10] of integer; flag:boolean; i,c:integer; begin randomize; for i:=1 to 10 do begin f[i]:=random(10); write(f[i],’ ‘); end; flag:=false; writeln(‘введите образец’); readln(c); for i:=1 to 10 do if f[i]=c then begin writeln(‘найден’); flag:=true; break; end; if flag=false then writeln(‘не найден’); end.
begin var a := new integer[10]; a := arrRandomInteger(5,0,5); //[1,3,5,4,5] print(a.IndexOf(3)) // 1 end.
или метод a.Contains(x) наравне с x in a :
begin var a := new integer[10]; a := arrRandomInteger(5,0,5); //[1,3,5,4,5] print(a.Contains(3)); // True print(3 in a)// True end.
Рассмотрим эффективное решение:
Задача: найти в массиве элемент, равный X , или установить, что его нет.
Алгоритм:
- начать с 1-го элемента ( i:=1 );
- если очередной элемент ( A[i] ) равен X , то закончить поиск иначе перейти к следующему элементу.
решение на Паскале Вариант 2. Цикл While:
Поиск элемента в массиве
Предлагаем посмотреть подробный видео разбор поиска элемента в массиве (эффективный алгоритм):
Пример:
[Название файла: taskArray8.pas ]
Циклический сдвиг
Решение:
Программа:
// … var v := a[0]; for var i:=0 to a.Length-2 do a[i] := a[i+1]; a[a.Length-1] := v;
// … var v := a[a.Length-1]; for var i:=a.Length-1 downto 1 do a[i] := a[i-1]; a[0] := v;
[Название файла: taskArray9.pas ]
Перестановка элементов в массиве
Рассмотрим, как происходит перестановка или реверс массива.
Решение:
Псевдокод:
Программа:
begin var a: array of integer := (1,3,5,7); var n := a.Length; for var i:=0 to n div 2 — 1 do Swap(a[i],a[n-i-1]); End.
Решение 2 (стандартная процедура Reverse() ):
begin var a:=new integer[10]; a:=arrRandomInteger(10); print(a);// [41,81,84,63,12,26,88,25,36,72] Reverse(a); print(a) //[72,36,25,88,26,12,63,84,81,41] end.
[Название файла: taskArray10.pas ]
Выбор элементов и сохранение в другой массив
Решение:
Вывод массива B:
writeln(‘Выбранные элементы’); for i:=1 to count-1 do write(B[i], ‘ ‘)
// . for var i := 0 to a.length — 1 do if a[i]
[Название файла: taskArray11.pas ]
Сортировка элементов массива
- В таком типе сортировок массив представляется в виде воды, маленькие элементы — пузырьки в воде, которые всплывают наверх (самые легкие).
- При первой итерации цикла элементы массива попарно сравниваются между собой:предпоследний с последним, пред предпоследний с предпоследним и т.д. Если предшествующий элемент оказывается больше последующего, то производится их обмен.
- При второй итерации цикла нет надобности сравнивать последний элемент с предпоследним. Последний элемент уже стоит на своем месте, он самый большой. Значит, число сравнений будет на одно меньше. То же самое касается каждой последующей итерации.
Pascal | PascalABC.NET |
Pascal | PascalABC.NET |