В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
Yulia2107
Yulia2107
26.08.2022 03:36 •  Информатика

Дмитрий Джойстиков любит геометрию. Он предложил одноклассникам такую задачу. На плоскости дан набор N (N<=1000) точек с целочисленными
координатами одноклассникам Дмитрия найти треугольник
наибольшей площади с вершинами в этих точках, одна из сторон которого
лежит на оси OX.
Если такого треугольника не существует, программа должна вывести ноль.

Напишите на питоне программу


Дмитрий Джойстиков любит геометрию. Он предложил одноклассникам такую задачу. На плоскости дан набор

Показать ответ
Ответ:
ezdar04
ezdar04
16.07.2021 07:07

Лишние словосочетание выделено жирным шрифтом :

а. Формирование у пользователей компьютера навыков грамотной постановки задач, возникающих в практической деятельности, для их решения с компьютера.

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

в. Формирование у пользователей компьютера навыков печати десятипалым методом.

г. Формирование у пользователей компьютера умения грамотно интерпретировать результаты решения практических задач с компьютеров и применять эти результаты в практической деятельности.

0,0(0 оценок)
Ответ:
Nastya171167
Nastya171167
30.03.2022 10:40

//Обьявляем дополнительные переменные и главный массив, а также два дополнительных - они будут "половинками".

var

 a, b, c: array [1..100] of longint;

 i, min, n, j, t: longint;

begin

 //Читаем количество элементов в нашем массиве.

 readln(n);

 

 //Читаем массив.

 for i := 1 to n do read(a[i]);

 

 //Заполняем первую "половинку".

 for i := 1 to n div 2 do b[i] := a[i];

 

 //Заполняем вторую "половинку". Но раз это уже вторая "половинка" главного массива, то и

 //цикл теперь должен начинаться со второй части массива, а заканчиваться уже в его конце.

 for i := n div 2 + 1 to n do c[i - n div 2] := a[i];

 

 //Теперь отсортируем первую "половинку" методом выбора. Идея этого метода

 //основывается на том, что мы ищем минимальный среди неотсортированных элемент,

 //а затем аем его с тем, который стоит сразу после отсортированных.

 for i := 1 to (n - 1) div 2 do

 begin

   min := i;

   for j := i + 1 to n div 2 do

     if b[min] > b[j] then

       min := j;

   if min <> i then begin

     t := b[i];

     b[i] := b[min];

     b[min] := t;

   end;

 end;

 

 //Затем вторую точно также, только стоит обратить внимание на сравнения.

 //Так как надо отсортировать по убыванию, то теперь сравнение перед "swap"-ом

 //будет другим.

 for i := 1 to (n - 1) div 2 do

 begin

   min := i;

   for j := i + 1 to n div 2 do

     if c[min] < c[j] then

       min := j;

   if min <> i then begin

     t := c[i];

     c[i] := c[min];

     c[min] := t;

   end;

 end;

 

 //А теперь по очереди выводим готовые "половинки", не забывая ставить

 //пробел после вывода каждого элемента.

 for i := 1 to n div 2 do write(b[i], ' ');

 for i := 1 to n - n div 2 do write(c[i], ' ');

end.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота