Дополнительное задание Параграф 21 ГДЗ Семакин 9 класс (Информатика)

ЕК ЦОР: Часть 2, заключение, §6.1, ЦОР №6 Практическое задание №30 Тема: Поиск наибольшего и наименьшего элемента в массиве 1 уровень сложности 1.



Решение задачи: ЕК ЦОР: Часть 2, заключение, §6.1, ЦОР №6 Практическое задание №30 Тема: Поиск наибольшего и наименьшего элемента в массиве 1 уровень сложности 1.Решение задачи: ЕК ЦОР: Часть 2, заключение, §6.1, ЦОР №6 Практическое задание №30 Тема: Поиск наибольшего и наименьшего элемента в массиве 1 уровень сложности 1.Решение задачи: ЕК ЦОР: Часть 2, заключение, §6.1, ЦОР №6 Практическое задание №30 Тема: Поиск наибольшего и наименьшего элемента в массиве 1 уровень сложности 1.Решение задачи: ЕК ЦОР: Часть 2, заключение, §6.1, ЦОР №6 Практическое задание №30 Тема: Поиск наибольшего и наименьшего элемента в массиве 1 уровень сложности 1.Решение задачи: ЕК ЦОР: Часть 2, заключение, §6.1, ЦОР №6 Практическое задание №30 Тема: Поиск наибольшего и наименьшего элемента в массиве 1 уровень сложности 1.Решение задачи: ЕК ЦОР: Часть 2, заключение, §6.1, ЦОР №6 Практическое задание №30 Тема: Поиск наибольшего и наименьшего элемента в массиве 1 уровень сложности 1.Решение задачи: ЕК ЦОР: Часть 2, заключение, §6.1, ЦОР №6 Практическое задание №30 Тема: Поиск наибольшего и наименьшего элемента в массиве 1 уровень сложности 1.

Ниже вариант решения задания из учебника Семакин, Залогова 9 класс, Просвещение:

ЕК ЦОР: Часть 2, заключение, §6.1, ЦОР №6

Практическое задание №30

Тема: Поиск наибольшего и наименьшего элемента в массиве

1 уровень сложности

1. Написать программу, которая запрашивает массив размерности N и выводит на экран сам массив, а также наибольший и наименьший элементы массива. Протестировать программу на массивах размерностью 5 и 10 элементов.

2. Написать программу, которая запрашивает массив из N элементов, а затем делит все элементы массива на минимальный элемент. Протестировать программу на массивах размерностью 5 и 10 элементов.

3. Написать программу, которая запрашивает массив из N элементов и увеличивает все элементы массива на максимальный элемент. Протестировать программу на массивах размерностью 8 и 10 элементов.

1.

program mas_1;

const

n = 10;

var

a: array[1..n] of integer;

max, min, i: integer;

begin

writeln(taskВвод массиваtask);

randomize;

for i := 1 to n do

begin

a[i] := random(20) + 5;

write(a[i], task task)

end;

writeln;

min := a[1]; max := a[i];

for i := 2 to n do

begin

if max

max := a[i];

if min > a[i] then

min := a[i];

end;

writeln(taskМаксимальны элемент = task, max, task, минимальный элемент = task, min)

end.

2.

program mas_2;

const

n = 10;

var

a: array[1..n] of real;

min: real;

i: integer;

begin

writeln(taskВвод массиваtask);

randomize;

for i := 1 to n do

begin

a[i] := random * 20;

write(a[i]:4:2, task task)

end;

writeln;

min := a[1];

for i := 2 to n do

if min > a[i] then

min := a[i];

writeln(taskВывод обработанного массиваtask);

for i := 1 to n do

begin

a[i] := a[i] / min;

write(a[i]:4:2, task task)

end;

end.

3.

program mas_3;

const

n = 10;

var

a: array[1..n] of integer;

max,i: integer;

begin

writeln(taskВвод массиваtask);

for i := 1 to n do

read(a[i]);

max := a[1];

for i := 2 to n do

if max

max := a[i];

writeln(taskВывод обработанного массиваtask);

for i := 1 to n do

begin

a[i] := a[i]*max;

write(a[i]:4, task task)

end;

end.

2 уровень сложности

1. Написать программу, которая вводит массив из N вещественных чисел, а затем меняет местами наибольший и наименьший элементы массива. Протестировать программу на трёх произвольных тестах.

2. Дан одномерный массив A[N] (N=2k).

Найти max(a2,a4,….a2k)+min(a1,a3,…a2k-1). Разработать для программы проверочные тесты и доказать правильность её работы.

3. Дан одномерный массив A[N]. Удвоить минимальный элемент массива и уменьшить в два раза максимальный элемент массива. Протестировать программу на следующих исходных данных:

а) 3 5 7 2 1 9 -3

б) -4 7 8 2 3 7 2 3 5

1.

program mas_1;

const

n = 10;

var

a: array[1..n] of real;

max, min: real;

i, imax, imin: integer;

begin

writeln(taskВвод массиваtask);

randomize;

for i := 1 to n do

begin

a[i] := random * 20;

write(a[i]:4:2, task task)

end;

max := a[1]; imax := 1;

min := a[1]; imin := 1;

for i := 2 to n do

begin

if max

begin

max := a[i]; imax := i

end;

if min > a[i] then

begin

min := a[i]; imin := i

end;

end;

a[imin] := max; a[imax] := min;//обмен значений

writeln(taskВывод обработанного массиваtask);

for i := 1 to n do

write(a[i]:4:2, task task)

end.

2.

program mas_1;

const

k = 5;

var

a: array[1..k * 2] of integer;

max, min, i: integer;

begin

writeln(taskВвод массиваtask);

randomize;

for i := 1 to k * 2 do

begin

a[i] := random(20) + 5;

write(a[i]:4, task task)

end;

max := a[2]; min := a[1];

i := 4;

while i

begin

if max

if min > a[i - 1] then min := a[i - 1];

i := i + 2

end;

writeln;

writeln(taskmax=task, max, task min=task, min);

writeln(taskСумма = task, max + min)

end.

3.

program mas_3;

const

n = 9;

var

a: array[1..n] of integer;

max, min, i: integer;

begin

writeln(taskВвод элементов массиваtask);

for i := 1 to n do

read(a[i]);

max := a[1]; min := a[1];

for i := 2 to n do

begin

if max

if min > a[i] then min := a[i];

end;

writeln;

writeln(taskmax/2=task, max / 2:4:2, task min*2=task, min * 2);

end.

3 уровень сложности

1. Дан массив действительных чисел A[N].

Найти max(a1+a2n, a2+a2n-1,…,an+an+1). Протестировать программу на массивах размерностью 9 и 12 элементов.

2. Дан массив действительных чисел B[N]. Требуется умножить все его элементы на квадрат минимального элемента, если ak 0 и на квадрат максимального элемента, если ak

Пример

Массив: 2 3 5 -4 -2 4 5 (5 – максимальный элемент, -2 – минимальный)

Результат: 8 12 20 -100 -50 16 20

Протестировать программу на приведённом выше примере и на двух других произвольных тестах.

3. Дана последовательность из N различных чисел. Найти сумму её членов, расположенных между максимальным и минимальным элементами (в сумму включить и оба эти числа).

1.

В задании ошибка с индексами элементов. Скорей всего, предполагается найти максимальную сумму двух рядом стоящих элементов.

program max_1;

const

n = 12;

var

a: array [1..n] of real;

i: integer;

max: real;

begin

randomize;

for i := 1 to n do

begin

a[i] := random * 10;

write(a[i]:4:2, task task)

end;

max := a[1] + a[2];

for i := 2 to n - 1 do

if max

max := a[i] + a[i + 1];

writeln;

writeln(tasktask, max:4:2);

end.

2.

Для получения приведенного в задании результата в исходном массиве не должно быть -4, т.к. минимальный элемент -2.

Вводите массив: 2 3 5 4 -2 4 5, и получите приведенный результат.

program max_2;

const

n = 7;

var

a: array [1..n] of real;

i: integer;

max, min: real;

begin

writeln(taskввод массиваtask);

for i := 1 to n do

read(a[i]);

max := a[1]; min := a[1];

for i := 2 to n do

begin

if max

max := a[i];

if min > a[i] then

min := a[i]

end;

writeln(taskmax=task, max:4:2, task min=task, min:4:2);

for i := 1 to n do

begin

if a[i] > = 0 then

a[i] := a[i] * sqr(min)

else

a[i] := a[i] * sqr(max);

write(a[i]:4:2, task task);

end;

end.

3.

program max_3;

const

n = 10;

var

a: array [1..n] of integer;

i, max, min, imax, imin, s, c, b: integer;

begin

writeln(taskввод массиваtask);

for i := 1 to n do

read(a[i]);

max := a[1]; min := a[1];

imax := 1; imin := 1;

for i := 2 to n do

begin

if max

begin

max := a[i]; imax := i

end;

if min > a[i] then

begin

min := a[i]; imin := i

end;

end;

writeln;

writeln(taskmax=task, max, task min=task, min);

if imax > imin then

begin

c := imin; b := imax

end

else

begin

c := imax; b := imin

end;

s:=0;

for i := c to b do

s := s + a[i];

writeln(tasks=task, s);

end.

ЕК ЦОР: Часть 2, заключение, §6.1, ЦОР №7

Программа-конструктор алгоритмов.

Популярные решебники 9 класс Все решебники