Найдите за один проход по массиву три его различных элемента,которые меньше всех остальных(три минимума)
Напечатать три наибольших элемента массива за один его просмотр
Составить процедуру, печатающую три наибольших элемента массива за один его просмотр. p.s.Как.
Напечатать три наибольших элемента массива за один его просмотр
Составить процедуру, печатающую три наибольших элемента массива за один его просмотр.
Напечать число, которое меньше максимального элемента,но больше всех остальных элементов
Составить программу,которая в массиве A находит второе по величине число(вывести на печать.
907 / 755 / 833
Регистрация: 06.09.2013
Сообщений: 1,561
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
uses Crt; var M: array [1..1000] of integer; min1, min2, min3, A, B: integer; N, i: byte; begin clrscr; A := 100; B := 200; repeat write('N = '); readln(N); until N > 2; min1 := B; min2 := B; min3 := B; randomize; for i := 1 to N do begin m[i] := random(B - A + 1) + A; write(' ', m[i]); if min1 > m[i] then begin min3 := min2; min2 := min1; min1 := m[i] end else if min2 > m[i] then begin min3 := min2; min2 := m[i] end else if min3 > m[i] then min3 := m[i] end; writeln; writeln('Три минимума: ', min1, ', ', min2, ', ', min3); readln end.
Найдите за один проход по массиву три его различных элемента которые меньше всех остальных
Познакомившись с циклами, переменными, условными конструкциями и массивами, рассмотрим несколько задач для работы с массивами.
Количество положительных чисел
Найдем количество положительных чисел в массиве:
int[] numbers = < -4, -3, -2, -1, 0, 1, 2, 3, 4 >; int result = 0; foreach(int number in numbers) < if(number >0) < result++; >> Console.WriteLine($"Число элементов больше нуля: ");
Здесь создаем вспомогательную переменную result , которая будет содержать количество положительных чисел. В цикле прохожим по массиву и, если его элемент больше нуля, добавляем к переменной result единицу.
Инверсия массива
Вторая задача — инверсия массива, то есть переворот его в обратном порядке:
int[] numbers = < -4, -3, -2, -1,0, 1, 2, 3, 4 >; int n = numbers.Length; // длина массива int k = n / 2; // середина массива int temp; // вспомогательный элемент для обмена значениями for(int i=0; i < k; i++) < temp = numbers[i]; numbers[i] = numbers[n - i - 1]; numbers[n - i - 1] = temp; >foreach(int i in numbers) < Console.Write($"\t"); >
Поскольку нам надо изменять элементы массива, то для этого используется цикл for. Алгоритм решения задачи подразумевает перебор элементов до середины массива, которая в программе представлена переменной k, и обмен значений элемента, который имеет индекс i, и элемента с индексом n-i-1.
Программа сортировки массива
Теперь возьмем задачу посложнее — простейшую сортировку массива:
int[] nums = < 54, 7, -41, 2, 4, 2, 89, 33, -5, 12 >; // сортировка int temp; for (int i = 0; i < nums.Length - 1; i++) < for (int j = i + 1; j < nums.Length; j++) < if (nums[i] >nums[j]) < temp = nums[i]; nums[i] = nums[j]; nums[j] = temp; >> > // вывод Console.WriteLine(«Вывод отсортированного массива»); for (int i = 0; i
Для сортировки массива выполняем проходы по массиву и сравниваем элементы. Поскольку нам надо последовательно сравнивать каждый элемент массива с каждым (за исключением сравния с самим собой), то здесь применятся вложенный цикл.
Во внешнем цикле мы берем элемент, который будем сравнивать:
for (int i = 0; i < nums.Length - 1; i++)
Далее запускаем вложенный цикл, который начинается, со следующего элемента, и из которого извлекаем элементы, с которыми будем сравнивать тот элемент, которые берется из массива во внешнем цикле:
for (int j = i + 1; j < nums.Length; j++)
Если элемент с меньшим индексом больше элемента с большим индексом, то меняем элементы местами.
if (nums[i] > nums[j])
В конце выводим все элементы.
Зачет по одномерному массиву и строкам. 11 класс
. Одномерные массивы». 32 Тема: «Одномерные массивы». 33-34 Тема: Действия с одномерными массивами. 35 Контрольная работа №4 по теме «Одномерные массивы . для общеобразовательных учреждений: Информатика. 2-11 классы» -2-е издание, исправленное и .
Программа элективного курса по информатике «Программируем на языке Паскаль»
Программа
. » 1 Массивы – 8 часов 27 Одномерные массивы: описание и задание элементов, действия над ними. Поиск, замена в одномерном массиве . . 2 11-14 Практикум по решению задач №6 4 15 Обобщающий урок по теме «Строки» 1 16 Зачетный класс .
Методические указания к лабораторным работам по дисциплине информатика
Методические указания
. по локальной сети и FTP. Короче говоря, данный класс . 2.11. Использование . массивы В предыдущем примере формулы массива размещались в горизонтальном одномерном массива. Можно создавать массивы, которые содержат несколько строк . А1>=4;"Зачет сдал";"Зачет .
Учебно-тематический план изучения базового курса информатики для 9 класса
Учебно-тематический план
. 2005. Гаевский А. Ю. Информатика: 7-11 класс. Учебное пособие. - К.: А.С.К., . : добавление и удаление строк и столбцов, изменение . по алгоритмизации зачет Урок 48 Тестирование по . Одномерные массивы в Паскале Урок 58. Использование одномерных массивов .
Рабочая учебная программа Учебный предмет информатика ступень, уровень общего образования классы 9
Рабочая учебная программа
. 11 . зачет – Тесты) ..\..\9 класс\ . строк и столбцов, изменение формул и их копирование. Усвоение новых знаний Практическая работа ..\..\9 класс . обработки одномерных массивов. . ПО ..\..\9 класс\files\9_314_слайд.swf История прикладного ПО ..\..\9 класс .
- Правообладателям
- Написать нам
Найдите за один проход по массиву три его различных элемента, которые меньше всех остальных («три минимума»).
var i,j,t,m:integer; x:array[1..100]of integer;
begin
write('Длина массива: '); readln(m);
writeln(m,' элементов массива: ');
for i:=1 to m do read(x[i]); readln;
for i:=1 to 3 do for j:=m downto 2 do
if x[j]
end.
На Пайтон переделывай сам.
PhysicМастер (1359) 7 лет назад
Тут три прохода + нет инициализаии значений (в массиве могут отрицательнык числа, и дефолтные нули будут больше).
Krab Bark Искусственный Интеллект (273218) Инициализация тут не нужна (входные данные инициализируются вводом значений, а отбор по сути тут обрезанная сортировка), а вот насчет требования одного прохода по массиву забыл :(, исправляю: var n,a,b,c,k,i,m:integer; x:array[1..100]of integer; begin write('Длина массива: '); readln(m); writeln(m,' элементов массива: '); for i:=1 to m do read(x[i]); readln; k:=maxint; a:=k; b:=k; c:=k; for i:=1 to m do begin n:=x[i]; if n< a then begin c:=b; b:=a; a:=n end else if n< b then begin c:=b; b:=n end else if n< c then c:=n; end; writeln('Наименьшие числа: '); if a< k then writeln(a); if b< k then writeln(b); if c< k then writeln(c); readln end.
str1=[-5,-3,-5,-1,0,1,3,5,1,4]
str1.sort()
z=0
for i in range (len(str1)-1):
__if str1[i]!= str1[i+1]and z!=3:
__z+=1
__print(str1[i])
arr = int(x) for x in input().split()
res = arr[:3]
arr = arr[3:]
for x in arr:
__if x < min(res):
____res = sorted(res + [x])[:3]
print(res)