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

У исполнителя Омега две команды, которым присвоены номера: 1. прибавь 4;
2. умножь на b
(b — неизвестное натуральное число; b ≥ 2).
Выполняя первую из них, Омега увеличивает число на экране на 4, а выполняя вторую, умножает это число на b. Программа для исполнителя Омега — это последовательность номеров команд. Известно, что программа 12111 переводит число 9 в число 77. Определите значение b.

У исполнителя Квадратор две команды, которым присвоены номера:
1. прибавь 1
2. возведи в квадрат
Первая из них увеличивает число на экране на 1, вторая возводит его во вторую степень.
Составьте алгоритм получения из числа 3 числа 84, содержащий не более 5 команд. В ответе запишите только номера команд.

Показать ответ
Ответ:
Kimbra8
Kimbra8
18.03.2021 16:55
#include <algorithm>
#include <iostream>
#include <vector>

bool ToLess(int a, int b) {
    return a > b;
}

int main() {
    int count;
    std::cin >> count;
    std::vector<int> vectorOfNombers(count);
    for (size_t i = 0; i != count; ++i) {
        std::cin >> vectorOfNombers[i];
    }

    sort(vectorOfNombers.begin(), vectorOfNombers.begin() + count / 2 - 1);           sort(vectorOfNombers.begin() + count / 2, vectorOfNombers.end(), ToLess);

    for (size_t i = 0; i != count; ++i) {
          std::cout << vectorOfNombers[i] << " ";
     }
}
0,0(0 оценок)
Ответ:
MiraukiTokugava
MiraukiTokugava
18.03.2021 16:55
//Обьявляем дополнительные переменные и главный массив, а также два дополнительных - они будут "половинками".
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];
 
  //Теперь отсортируем первую "половинку" методом выбора. Идея этого метода
  //основывается на том, что мы ищем минимальный среди неотсортированных элемент,
  //а затем просто swap-аем его с тем, который стоит сразу после отсортированных.
  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-бота