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

Палиндромом назовем число, состоящее не менее чем из 2-х символов или цифр, одинаково читающееся как слева направо, так и наоборот. например, число «1221» является палиндромом, а число «1224» – нет. назовем палиндромом-1016 число, являющееся палиндромом в десятичном и шестнадцатеричном представлении. количество палиндромов-1016 среди первых десяти миллионов натуральных чисел составит…

👇
Ответ:
sashasas12365
sashasas12365
08.09.2020
ответ: 22
Вариант на C++, но программа долго выполняется; как оптимизировать, я пока не знаю.

#include <iostream>
#include <sstream>
#include <string>
int main()
{
    int k = 0;    //счетчик 1016палиндромов
   
    for (int i = 16; i <= 10000000; i++)
    {
        int temp = i;

        std::stringstream ss;   //перевод 10чного числа в 16чную строку
        ss << std::hex << temp;
        std::string temp16(ss.str());

        //проверяем, является ли 16чное число палиндромом
        bool t16 = true;
        int left_index = 0;
        int right_index = temp16.size() - 1;
        while (left_index < right_index)
            if (temp16[left_index++] != temp16[right_index--])
                t16 = false;

        if (t16)
        {
            bool t10 = true;
            std::ostringstream ost;   //перевод 10чного числа в строку
            ost << temp;
            std::string temp10 = ost.str();

            //проверяем, является ли 10чное число палиндромом
            int left_index = 0;
            int right_index = temp10.size() - 1;
            while (left_index < right_index)
                if (temp10[left_index++] != temp10[right_index--])
                    t10 = false;

            if (t10)
                k = k + 1;
        }
    }
   
    std::cout << "Number of 1016-palindroms: " << k << std::endl;
    return 0;
}
4,8(47 оценок)
Открыть все ответы
Ответ:
Хорошо, давайте решим эту задачу шаг за шагом.

Шаг 1: Ввод координат точки А
Объяснение: Нам нужно получить значения координат x и y для точки А. Это можно сделать с помощью ввода с клавиатуры.

Пример кода на языке Python:
```python
x = float(input("Введите значение x для точки А: "))
y = float(input("Введите значение y для точки А: "))
```

Шаг 2: Проверка, лежит ли точка А в области
Объяснение: Для этого мы должны сравнить значения y, полученные путем вычисления уравнения параболы у=2-х^2 и значения y=-2. Если y находится в промежутке между -2 и y(x), значит, точка А лежит в области, иначе - не лежит.

Пример кода на языке Python:
```python
parabola_y = 2 - x**2

if -2 <= y <= parabola_y:
print("Точка А лежит в области")
else:
print("Точка А не лежит в области")
```

Шаг 3: Обоснование ответа и пояснение решения
Объяснение: В этой задаче мы сначала получаем координаты точки А с помощью ввода с клавиатуры. Затем вычисляем значение y для параболы у=2-х^2, используя значение x, введенное пользователем. Затем мы проверяем, лежит ли значение y в промежутке между -2 и найденным значением параболы. Если условие выполняется, то выводим сообщение, что точка А лежит в области, иначе говорим, что точка А не лежит в области.

Надеюсь, эта информация была понятной для тебя. Если у тебя возникнут еще вопросы, не стесняйся задавать!
4,6(28 оценок)
Ответ:
Шакира228
Шакира228
08.09.2020
Хорошо, давайте разберем этот вопрос пошагово и найдем ответ.

Шаг 1: Определение массива
Первым делом нужно определить, что такое массив. Массив - это структура данных, которая позволяет хранить набор элементов одного типа. В данном случае, у нас есть массив arr, который содержит шесть элементов: 5, 12, 15, 7, 3 и 2.

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

Можно создать две переменные, например, max1 и max2, и присвоить им стартовые значения, равные самым маленьким числам (-∞). Затем пройти по всем элементам массива, и если элемент больше max1, присвоить max1 значение этого элемента, а старое значение max1 - значение max2. Если же элемент меньше max1, но больше max2, присвоить max2 значение этого элемента. Продолжать эту проверку для каждого элемента массива.

Шаг 3: Сложение двух наибольших элементов
Теперь, когда мы нашли два наибольших элемента массива (max1 и max2), нужно сложить их, чтобы получить искомую сумму.

Шаг 4: Решение и ответ
Применяем описанный алгоритм для массива из изображения:

1. Инициализируем переменные max1 и max2 (-∞).
2. Проходим по каждому элементу массива:
- Проверяем элемент 5 и видим, что он больше max1 (-∞). Присваиваем max1 значение 5.
- Проверяем элемент 12 и видим, что он больше max1 (5). Присваиваем max1 значение 12 и предыдущее значение max1 (5) - max2.
- Продолжаем эту проверку для всех элементов: 15, 7, 3 и 2.
- Когда доходим до последнего элемента 2, видим, что он меньше max1 (15), но больше max2 (3). Присваиваем max2 значение 2.
3. Теперь, когда мы проверили все элементы массива, имеем максимальные значения max1 = 15 и max2 = 12.
4. Складываем max1 и max2: 15 + 12 = 27.
5. Полученный результат 27 является суммой двух наибольших элементов массива arr.

Итак, сумма двух наибольших элементов массива arr равна 27.
4,5(60 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ