私は、各ユニットが前のユニットの10倍少ない時間の形式に基づいて、時間を提示する新しいシステムを思いつきました。これは標準の時間プレゼンテーションシステムではありません。このシステムでは、時間の人工単位を使用して、「ビット」、「デシビット」、「サンティビット」、「ミリビット」、「微生物」の時間を提示します。ビットは最大のユニットであり、マイクロビットは最小です。
1バイトに10デシビットがあり、1デシビットには10​​0万センチの1000万匹、100万の1000のマイクロバイトが10セミラートになります。同時に、1個のミシュレットは、標準システムの1/1000日、つまり86.4秒に対応します。
したがって、1ミリビットは、標準の時間システム、Centibitte -10日、デシビティ炎-100日、およびビット1000日で1日に対応することがわかります。
人工時間の標準への転送：
1ビット= 1000日≈2.7年
1デシビタ= 100日≈3.3ヶ月
1 Centibit = 10日
1ミリビット= 1日
1マイクロバイト= 86.4 = 1.44分
関数コードをC ++に書き込みます。これは、上記のシステムプレゼンテーションでSTDタイプ:: Stringを「@Microbites Bits/Decibits/Millibits/Microbits」のSTDタイプ:: Stringで返します。この関数の引数は、time_tタイプの数秒での時間です。
精神的実験を行います。たとえば、関数は引数123456789で呼び出されました。その後、関数の関数の結果は「@898.021 1/4/2/8」という行になります。
Я придумал новую систему представления времени, основанную на форме деления времени, где каждая единица в 10 раз меньше предыдущей. Это не стандартная система представления времени. В этой системе для представления времени используются искуственные единицы времени: "биты", "децибиты", "сантибиты", "миллибиты" и "микробиты". Биты - самая большая единица, а микробиты - самая маленькая.
В 1 бите 10 децибит, в 1 децибите 10 сантибит, в 1 сантибите 10 миллибит, в 1 миллибите 1000 микробит. При этом 1 микробит соответствует 1/1000 суток в стандартной системе, т.е 86.4 секунд.
Таким образом получается, что 1 миллибит соотвествует 1 суткам в стандартной системе времени, сантибит - 10 дням, децибит - 100 дням, а бит 1000 дням.
Перевод искуственных единиц времени в стандартные:
1 бит = 1000 суток ≈ 2.7 года
1 децибит = 100 суток ≈ 3.3 месяца
1 сантибит = 10 суткам
1 миллибит = 1 суткам
1 микробит = 86.4 = 1.44 минут
Напиши код функции на C++, которая бы возвращала текущее время типом std::string в представленной выше системе представления времени в формате "@микробиты биты/децибиты/миллибиты/микробиты". Аргументом этой функции будет время в секундах типа time_t.
Проведем мысленный эксперимент: допустим функция была вызвана с аргументом 123456789. Тогда, результатом выполнения функции будет строка "@898.021 1/4/2/8".