Здравствуйте, AlexGin, Вы писали:
AG>Добрый день, уважаемые коллеги!
AG>Сегодня у меня ДР AG>Если мой возраст записать в виде десятичного числа, то получим некое дузначное число.
AG>Затем — поменяем местами цифры. AG>Получим правильное значение моего возраста в шестнадцатиричном виде.
AG>Вопрос: сколько лет мне стукнуло сегодня?
AG>P.S. Желательно показать код (на любом известном Вам языке), доказывающий Вашу правоту.
A*10+B=B*16+A
3A=5B
A=5 B=3
Здравствуйте, AlexGin, Вы писали:
AG>Добрый день, уважаемые коллеги!
AG>Сегодня у меня ДР AG>Если мой возраст записать в виде десятичного числа, то получим некое дузначное число.
AG>Затем — поменяем местами цифры. AG>Получим правильное значение моего возраста в шестнадцатиричном виде.
AG>Вопрос: сколько лет мне стукнуло сегодня?
AG>P.S. Желательно показать код (на любом известном Вам языке), доказывающий Вашу правоту.
Здравствуйте, D.Lans, Вы писали:
AG>>P.S. Желательно показать код (на любом известном Вам языке), доказывающий Вашу правоту.
DL>Python: DL>https://repl.it/@doctorlans/Determine-AlexGin-Age
Не кошерно. Надо на C++20 с помощью метапрограммирования сделать
Здравствуйте, kov_serg, Вы писали:
_>Здравствуйте, D.Lans, Вы писали:
AG>>>P.S. Желательно показать код (на любом известном Вам языке), доказывающий Вашу правоту.
DL>>Python: DL>>https://repl.it/@doctorlans/Determine-AlexGin-Age _>Не кошерно. Надо на C++20 с помощью метапрограммирования сделать
Можно и на том что счас есть:
#include <string>
#include <sstream>
#include <map>
#include <vector>
#include <algorithm> // std::for_each
#include <memory>
using namespace std;
using MAP_IH = map<int, string>;
using INT_VECTOR = vector<int>;
class CHexCount
{
public:
CHexCount();
~CHexCount();
MAP_IH& GetMapIntHex();
INT_VECTOR CalculateMagicNumbers();
private:
MAP_IH m_mapIntHex;
};
Задание не читал.
AG>Вопрос: сколько лет мне стукнуло сегодня? AG>P.S. Желательно показать код (на любом известном Вам языке), доказывающий Вашу правоту.
Здравствуйте, AlexGin, Вы писали:
AG>Добрый день, уважаемые коллеги!
AG>Сегодня у меня ДР AG>Если мой возраст записать в виде десятичного числа, то получим некое дузначное число.
AG>Затем — поменяем местами цифры. AG>Получим правильное значение моего возраста в шестнадцатиричном виде.
AG>Вопрос: сколько лет мне стукнуло сегодня?
AG>P.S. Желательно показать код (на любом известном Вам языке), доказывающий Вашу правоту.
SQL Server
DECLARE @s bigint = 10
, @e bigint = 100
;WITH
Z AS (SELECT 0 z FROM (VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14),(15)) T(n)),
Y AS (SELECT 0 z FROM Z a, Z b, Z c, Z d, Z e, Z f, Z g, Z h, Z i, Z j, Z k, Z l, Z m, Z n, Z o, Z p),
N AS (SELECT ROW_NUMBER() OVER (PARTITION BY 0 ORDER BY z) n FROM Y)
SELECT TOP 1 @s + n - 1 age FROM N /* ни в коем случае не ставить больше top 1 */
WHERE @s + n - 1 = (@s + n - 1) % 16 * 10 + (@s + n - 1) / 16
Здравствуйте, D.Lans, Вы писали:
DL>SQL Server DL>
DL>DECLARE @s bigint = 10
DL> , @e bigint = 100
DL>;WITH
DL>Z AS (SELECT 0 z FROM (VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14),(15)) T(n)),
DL>Y AS (SELECT 0 z FROM Z a, Z b, Z c, Z d, Z e, Z f, Z g, Z h, Z i, Z j, Z k, Z l, Z m, Z n, Z o, Z p),
DL>N AS (SELECT ROW_NUMBER() OVER (PARTITION BY 0 ORDER BY z) n FROM Y)
DL>SELECT TOP 1 @s + n - 1 age FROM N /* ни в коем случае не ставить больше top 1 */
DL>WHERE @s + n - 1 = (@s + n - 1) % 16 * 10 + (@s + n - 1) / 16
DL>
Postgres
SELECT age FROM generate_series(10, 99) AS age WHERE age = age%16*10 + age/16;
Вот такие задачки мой сын решал в третьем (!!) классе без всякого там заумного "программирования". Разве что про шестнадцатиричную систему он пока не знает — все задачки на перестановки цифр решались в привычной десятичной системе. А правильное решение привел коллега kov_serg.
Здравствуйте, Vlad_SP, Вы писали:
V_S>Вот такие задачки мой сын решал в третьем (!!) классе без всякого там заумного "программирования".
Значит — есть повод гордиться сыном!!!
V_S>Разве что про шестнадцатиричную систему он пока не знает — все задачки на перестановки цифр решались в привычной десятичной системе. А правильное решение привел коллега kov_serg.
ИМХО — правильных решений может быть более одного.
Коллеги kov_serg и vopl предоставили математическое решение.
При этом товарищ vopl составил для этого программку.
Все остальные — программировали решение методом подбора. Этот подход ИМХО также имеет право на жизнь
...
AG>Коллеги kov_serg и vopl предоставили математическое решение. AG>При этом товарищ vopl составил для этого программку.
AG>Все остальные — программировали решение методом подбора. Этот подход ИМХО также имеет право на жизнь
тут еще засада в том, что в наш век "цифровых технологий" написать на аналоговом листочке аналоговым карандашом чисто математическое решение, которое привел коллега kov_serg — занимает меньше времени, чем даже запуск сильно простой IDE (CodeBlocks, к примеру). А если не видно разницы — зачем платить больше тратить время?
Здравствуйте, Vlad_SP, Вы писали:
V_S>Здравствуйте, vopl,
V_S>тут еще засада в том, что в наш век "цифровых технологий" написать на аналоговом листочке аналоговым карандашом чисто математическое решение, которое привел коллега kov_serg — занимает меньше времени, чем даже запуск сильно простой IDE (CodeBlocks, к примеру). А если не видно разницы — зачем платить больше тратить время?
Ну, хз... Зависит от задачи и правильности выбора инструмента, на мой взгляд. Сколько лет прожил Диофант? На калькуляторе чик-чик-готово. А на бумажке я бы пыхтел с цифирями этими...
Здравствуйте, Vlad_SP, Вы писали:
V_S>Вот такие задачки мой сын решал в третьем (!!) классе без всякого там заумного "программирования". Разве что про шестнадцатиричную систему он пока не знает — все задачки на перестановки цифр решались в привычной десятичной системе.
Я своей дочке рассказал про системы счисления и научил конвертировать между DEC, BIN и HEX в её первом классе.