mors3
15.11.2021 07:49

Система команд исполнителя Вычислитель состоит из двух команд, которым
присвоены номера:
1 - вычти 2
2 - умножь на 3
Первая из них уменьшает число на 2, вторая увеличивает число в 3 раза.
При записи алгоритмов для краткости указываются лишь номера команд.
Запишите алгоритм для исполнителя Вычислитель, содержащий не более 5 команд:
получения из числа 4 числа 94
Система команд исполнителя Конструктор состоит из двух команд, которым
присвоены номера:
1 - приписать 2
2 - разделить на 2
По первой из них к числу приписывается справа 2,
по второй число делится на 2.
Как будет преобразовано число 8, если исполнитель выполнит алгоритм 222112?
Некоторый алгоритм из одной цепочки символов получает новую цепочку
следующим образом. Сначала вычисляется длина исходной цепочки символов; если
она чётна, то в начало цепочки символов добавляется последний символ, а если нечётна
— в конец цепочки добавляется средний символ. В полученной цепочке символов
каждая буква заменяется буквой, следующей за ней в русском алфавите
(А — на Б, Б — на В и т. д., а Я — на А).
Получившаяся таким образом цепочка является результатом работы алгоритма.
Дана цепочка символов ДРУГ. Какая цепочка символов получится, если к данной
цепочке применить описанный алгоритм дважды (то есть применить алгоритм к
данной цепочке, а затем к результату вновь применить алгоритм)?
Русский алфавит:

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Яркий2017
27.09.2022 21:39
Одно из решений, возможно, не самое эффективное
#include <iostream>
#include <iomanip>
int main()
{
    using namespace std;

    //исходная последовательность
    const int N = 8;
    double Arr[N] = { 14.2, -3.4, 7.8, -3.1, 8.2, 98.22, -7, 12 };

    //вывод на экран исходной последовательности
    for (int i = 0; i < N; ++i)
        cout << Arr[i] << "  ";
    cout << endl;

    //подсчитаем количества отрицательных и неотрицательных элементов
    int kpos = 0;
    int kneg = 0;
    for (int i = 0; i < N; ++i)
        if (Arr[i] < 0)
            ++kneg;
        else
            ++kpos;

    //создадим массивы отрицательных и неотрицательных элементов
    double * ArrNeg = new double[kneg];
    double * ArrPos = new double[kpos];

    int kn = 0, kp = 0;
    for (int i = 0; i < N; i++)
        if (Arr[i] < 0)
            ArrNeg[kn++] = Arr[i];
        else
            ArrPos[kp++] = Arr[i];

    cout << "Enter a, b, c or d: ";
    char ch;
    cin >> ch;

    if (ch == 'a' || ch == 'b' || ch == 'c' || ch == 'd')
    {
        switch (ch)
        {
            //пункт а)
            case 'a':
                for (int i = 0; i < kneg; ++i)
                    Arr[i] = ArrNeg[i];
                for (int i = 0; i < kpos; ++i)
                    Arr[i + kneg] = ArrPos[i];
                break;

                //пункт б)
            case 'b':
                for (int i = 0; i < kneg; ++i)
                    Arr[i] = ArrNeg[--kn];
                for (int i = 0; i < kpos; ++i)
                    Arr[i + kneg] = ArrPos[i];
                break;

                //пункт в)
            case 'c':
                for (int i = 0; i < kneg; ++i)
                    Arr[i] = ArrNeg[i];
                for (int i = 0; i < kpos; ++i)
                    Arr[i + kneg] = ArrPos[--kp];
                break;

                //пункт г)
            case 'd':
                for (int i = 0; i < kneg; ++i)
                    Arr[i] = ArrNeg[--kn];
                for (int i = 0; i < kpos; ++i)
                    Arr[i + kneg] = ArrPos[--kp];
                break;
        }
    }
    else
        cout << "You entered wrong symbol\n";

    for (int i = 0; i < N; ++i)
        cout << Arr[i] << "  ";
    cout << endl;
    delete[] ArrNeg;
    delete[] ArrPos;
    return 0;
}
0,0(0 оценок)
Ответ:
Masha2281337
08.06.2020 11:56

1

Объяснение:

Программа выдаст "Yes" , если любое из условий сработает. Либо s будет больше 10, либо t больше A.

Мы сразу определяем сколько раз сработает первое условие: (10,2) , (11,12).

Получается нам осталось ещё, чтобы второе условие сработало 6 раз.

Мы видим, что если в переменную А записать число 1, то второе условие сработает на числах : (1,2) , (1,12) (-11,12) (-12,11) (10,10) (10,5)

В сумме с первым условием (s>10) получается, что программа выдаст "Yes" как раз 8 раз, не выполнится только ввод чисел (-11,-12)

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