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

Сколько различных цифр восьмеричной записи числа 2^102 + 2^100 + 2^85 + 2^17 исполнитель калькулятор преобразует число на экране. У исполнителя есть две команды, которым присвоены номера:
1. Прибавить
2. Прибавить 2
Программа для исполнителя Калькулятор - это последовательность команд. Сколько существует программ, для которых при исходном числе 1 результатом является число 13 и при этом траектория вычислений содержит число 7?​

👇
Ответ:
3Belchonok3
3Belchonok3
30.04.2023

(см. объяснение)

Объяснение:

Ниже показано решение на различных языках программирования + аналитический метод.

Java:

System.out.println(BigInteger.valueOf(2).pow(102).add(BigInteger.valueOf(2).pow(100)).add(BigInteger.valueOf(2).pow(85)).add(BigInteger.valueOf(2).pow(17)).toString(8));

Pascal:

##

var res: BigInteger := BigInteger.Add(BigInteger.Add(BigInteger.Add(BigInteger.Pow(BigInteger.Parse('2'),102),BigInteger.Pow(BigInteger.Parse('2'),100)),BigInteger.Pow(BigInteger.Parse('2'),85)),BigInteger.Pow(BigInteger.Parse('2'),17));

 var s: string := '';

 while(not res.IsZero) do

 begin

   s:= BigInteger.Remainder(res,8).ToString+s;

   res:= BigInteger.Divide(res,BigInteger.Parse('8'));

 end;

 writeln(s);

Python:

a = 2**102+2**100+2**85+2**17

s = ''

while(a>0):

   s=str(a%8)+s

   a//=8

print(s)

Аналитический метод:

Нужно представить все, как <число>*8^[степень]. Заметим, что:

2^{102} + 2^{100} + 2^{85} + 2^{17}=8^{34}+2*8^{33}+2*8^{28}+4*8^{5}

Результат полученный во всех случаях одинаковый:

12000020000000000000000000000400000

Это означает, что всего в числе встречается 4 различные цифры.

Задание выполнено!

4,4(24 оценок)
Открыть все ответы
Ответ:
Sergay121
Sergay121
30.04.2023

ответ: В) Тип данных

Объяснение: В принципе, может быть и тип переменных, но!

По порядку. А и Г отметаются — не существует типа текста, а тип программы не решает ничего. Тип переменных и тип данных по идее — синонимы, но тип переменной в данном случае, как я думаю — имеются в виду ключевые слова.

В том же JS есть переменные типа const — константы, переменные типа let и var.

Типы переменных не определяют информацию, которую допустимо записать в переменную. Они определяют видимость переменной, возможность изменить содержимое и т. п. А вот информацию определяют типы данных. В языках со строгой типизацией переменные определяются с ещё одним словом, например в C или Java переменную объявляют так:

int f = 1

И код f = "text" приведёт к ошибке — типизация строгая или, как говорят ещё явная.

Если говорить о JS, то там неявная типизация, или нестрогая, однако если копать ещё глубже, то в JS типизация не неявная, а утиная (да-да, ещё один тип). Есть много типов данных, например integer, BigInt, Object, symbol, string, Time и пр. И можно записать в переменную любой тип данных, а потом на любой поменять. Код

var f = 1

f = "text"

Не улетит с ошибкой, можно даже сделать

f = new Object

И всё будет нормально)

Если я правильно понял вопрос, то там про это). Кстати, говоря по правильному, есть ещё много типизаций, те про которые сейчас вспомнил:

Статическая;

Динамическая;

Сильная;

Слабая;

Явная;

Неявная;

Утиная.

Вроде бы всё) Удачи!

4,5(42 оценок)
Ответ:
aleshibin
aleshibin
30.04.2023
Var
    a: array[1..10]of integer;
    i, k, n: integer;

begin
    Writeln('Исходный массив:');
    Randomize;
    for i := 1 to 10 do
    begin
        a[i] := Random(51) - 25;
        Write(a[i], ' ');
    end;
    Writeln;
    
    n := 0;
    k := 0;
    for i := 10 downto 1 do
        if a[i] > 0 then
        begin
            k := k + 1;
            if k = 2 then n := i;
        end;
    
    if k = 0 then
        Writeln('В массиве нет положительных элементов!')
    else
        Writeln('Предпоследний положительный элемент: a[', n, '] = ', a[n]);
    
    Readln;
end.
4,6(6 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ