М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
НАСТЯ7539
НАСТЯ7539
21.04.2021 04:13 •  Информатика

Хитрая сортировка

Пусть у нас есть следующий список, в котором элементы -- tuple из строк:

items = [('one', 'two'), ('three', 'four'), ('five', 'six'), ('string', 'a')]
Мы хотим отсортировать этот список по последней букве второго элемента каждого tuple, т.е. получить такой список:

sorted_items = [ ('string', 'a'), ('one', 'two'), ('three', 'four'), ('five', 'six'),]
Что нужно вставить вместо "###" в следующем выражении, чтобы получить сортировку?

sorted_items = sorted(items, key=lambda x: ###)

P.S. в ответе не должно фигурировать слово 'len'

Как можно использовать команду for в lambda функции?

👇
Открыть все ответы
Ответ:
12АлИк34
12АлИк34
21.04.2021
//Pascal

//1)
var
  A: array [1..8] of integer;
  i: byte;
  sum: integer;
  Arifm: real;
begin
  writeln('Заполнение массива.');
  sum := 0;
  for i := 1 to 8 do
  begin
    write('A[',i,'] = ');
    readln(A[i]);
    sum := sum + A[i];
  end;
  Arifm := sum/8;
  writeln('Среднее арифметическое всех элементов = ', Arifm);
  writeln;
  writeln('Элементы меньше среднего арифметического.');
  for i := 1 to 8 do
    if A[i] < Arifm then
      write(A[i]:4);
  writeln; readln;       
end. 

//2)
var
  A: array [1..8] of integer;
  i: byte;
  sum: integer;
  Arifm: real;
begin
  writeln('Заполнение массива.');
  sum := 0;
  for i := 1 to 8 do
  begin
    write('A[',i,'] = ');
    readln(A[i]);
    if i mod 2 <> 0 then
      sum := sum + A[i];
  end;
  Arifm := sum/4;
  writeln('Среднее арифметическое элементов с нечетн. индексами = ', Arifm);
  readln;
end.

1.найти в массиве те элементы, значение которых меньше среднего арифметического, взятого от всех эле
1.найти в массиве те элементы, значение которых меньше среднего арифметического, взятого от всех эле
4,7(35 оценок)
Ответ:
AlisaLisa005
AlisaLisa005
21.04.2021
// PascalABC.NET 3.3, сборка 1583 от 25.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  Writeln(ReadSeqIntegerWhile(t->t<>0).Where(t->t.IsEven).Sum)
end.

Пример
-65 973 571 -101 426 326 207 -85 850 551 713 340 766 0
2708

begin
  Writeln(ReadSeqIntegerWhile(t->t<>0).Where(t->t.IsEven).Count)
end.

Пример
-65 973 571 -101 426 326 207 -85 850 551 713 340 766 0
5

begin
  Writeln(ReadSeqIntegerWhile(t->t<>0).Aggregate(Biginteger(1),(x,y)->x*y))
end.

Пример
-65 973 571 -101 426 326 207 -85 850 551 713 340 766 0
-775118121479521866390147967800000
4,5(51 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ