Π Π°Π±ΠΎΡ‚Π° с числовыми Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ часто Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° Ρ€Π°ΠΌΠΊΠΈ простых арифмСтичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Π’ спСцифичСских Π·Π°Π΄Π°Ρ‡Π°Ρ…, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ валидация ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… сумм, гСнСрация ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈΠ»ΠΈ парсинг ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠ², Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ доступ ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ разрядам числа. Вопрос ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ число Π½Π° Ρ†ΠΈΡ„Ρ€Ρ‹ Π² 1Π‘, являСтся классичСским ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ алгоритмичСской Π·Π°Π΄Π°Ρ‡ΠΈ, Ρ€Π΅ΡˆΠ°Π΅ΠΌΠΎΠΉ срСдствами встроСнного языка.

БущСствуСт нСсколько ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΊ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡŽ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ свои прСимущСства ΠΈ ограничСния. Π’Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° зависит ΠΎΡ‚ контСкста: Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹ с ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹ΠΌΠΈ массивами Π΄Π°Π½Π½Ρ‹Ρ…, Π³Π΄Π΅ Π²Π°ΠΆΠ½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΠΈΠ»ΠΈ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ скрипт для Π΅Π΄ΠΈΠ½ΠΎΡ€Π°Π·ΠΎΠ²ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². ПониманиС Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ структуры Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Число ΠΈ Π‘Ρ‚Ρ€ΠΎΠΊΠ° являСтся ΠΊΠ»ΡŽΡ‡ΠΎΠΌ ΠΊ написанию эффСктивного ΠΊΠΎΠ΄Π°.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрим Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнныС способы Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ чисСл. ΠœΡ‹ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ матСматичСский ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ с использованиСм дСлСния ΠΈ остатка, Π° Ρ‚Π°ΠΊΠΆΠ΅ строковый ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ часто оказываСтся Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΌ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… программистов. Π’Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹ вопросы ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ Π΄Ρ€ΠΎΠ±Π½Ρ‹Ρ… частСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚Π°Ρ‚ΡŒ источником скрытых ошибок Π² Π»ΠΎΠ³ΠΈΠΊΠ΅ вашСго прилоТСния.

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ выдСлСния разрядов

ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΈΠΉ способ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ†ΠΈΡ„Ρ€Π°ΠΌΠΈ числа ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ использованиС арифмСтичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Π’ основС этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π»Π΅ΠΆΠΈΡ‚ опСрация получСния остатка ΠΎΡ‚ дСлСния Π½Π° 10, которая Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ послСднюю Ρ†ΠΈΡ„Ρ€Ρƒ числа. Π—Π°Ρ‚Π΅ΠΌ число сокращаСтся ΠΏΡƒΡ‚Π΅ΠΌ цСлочислСнного дСлСния Π½Π° 10, ΠΈ процСсс повторяСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° исходноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ станСт Ρ€Π°Π²Π½Ρ‹ΠΌ Π½ΡƒΠ»ΡŽ.

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ этого Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π² ΠΊΠΎΠ΄Π΅ 1Π‘ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ†ΠΈΠΊΠ» Пока. Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ прСобразования Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ, связанной со строковыми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ.

Однако, ΠΏΡ€ΠΈ использовании матСматичСского ΠΌΠ΅Ρ‚ΠΎΠ΄Π° слСдуСт Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π΅Π΄Π΅Π»ΡŒΠ½ΠΎ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΊ порядку Ρ†ΠΈΡ„Ρ€. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌ Ρ†ΠΈΡ„Ρ€Ρ‹ с ΠΊΠΎΠ½Ρ†Π° (ΠΎΡ‚ ΠΌΠ»Π°Π΄ΡˆΠΈΡ… разрядов ΠΊ ΡΡ‚Π°Ρ€ΡˆΠΈΠΌ), ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ массив Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ†ΠΈΡ„Ρ€Ρ‹ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡ… записи Π² числС. Если порядок ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π΅Π½, потрСбуСтся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ опСрация рСвСрса массива ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΈΠΊΠΈ записи Π΄Π°Π½Π½Ρ‹Ρ….

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами. Если Π½Π° Π²Ρ…ΠΎΠ΄ подаСтся число с Π΄Ρ€ΠΎΠ±Π½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΊΡ€ΡƒΠ³Π»ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΈΠ»ΠΈ ΠΎΡ‚Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ Π΄Ρ€ΠΎΠ±Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ, ΠΈΠ½Π°Ρ‡Π΅ Ρ†ΠΈΠΊΠ» ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ бСсконСчным ΠΈΠ»ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΌ.

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π³Π΄Π΅ ΠΌΡ‹ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌ Ρ†ΠΈΡ„Ρ€Ρ‹. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ-счСтчик ΠΈΠ»ΠΈ индСкс массива ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ структуру Π΄Π°Π½Π½Ρ‹Ρ…. ИспользованиС Ρ‚ΠΈΠΏΠ° Массив ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ списка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ссли прСдполагаСтся дальнСйшая индСксация элСмСнтов ΠΏΠΎ Π½ΠΎΠΌΠ΅Ρ€Ρƒ разряда.

ΠΡŽΠ°Π½ΡΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с большими числами

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΎΡ‡Π΅Π½ΡŒ большими числами (ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‰ΠΈΠΌΠΈ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ 1Π‘) матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ ΠΏΠΎΡ‚Π΅Ρ€Π΅ точности. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях строковый ΠΌΠ΅Ρ‚ΠΎΠ΄ являСтся СдинствСнно Π²Π΅Ρ€Π½Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ.

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ числа Π² строку ΠΈ ΠΏΠΎΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±Ρ…ΠΎΠ΄

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΈ часто Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠΈ числа ΠΊ строковому Π²ΠΈΠ΄Ρƒ. Π’ языкС 1Π‘ это дСлаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(). ПослС ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ становится ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ символов, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΏΠΎ индСксу, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π‘Ρ€Π΅Π΄().

Π“Π»Π°Π²Π½ΠΎΠ΅ прСимущСство строкового ΠΌΠ΅Ρ‚ΠΎΠ΄Π° β€” сохранСниС порядка Ρ†ΠΈΡ„Ρ€. ΠŸΠ΅Ρ€Π²Π°Ρ Ρ†ΠΈΡ„Ρ€Π° строки соотвСтствуСт ΡΡ‚Π°Ρ€ΡˆΠ΅ΠΌΡƒ разряду числа, Ρ‡Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Π·Π°Π΄Π°Ρ‡ΠΈ, Π³Π΄Π΅ Π²Π°ΠΆΠ½Π° позиционная нотация (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ†ΠΈΡ„Ρ€Ρ‹ ИНН ΠΈΠ»ΠΈ Π±Π°Π½ΠΊΠ°). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, этот ΠΌΠ΅Ρ‚ΠΎΠ΄ автоматичСски ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ матСматичСскиС Π½ΡŽΠ°Π½ΡΡ‹ дСлСния, работая с Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ прСдставлСниСм числа.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² нСсСт Π² сСбС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ Число Π² Π‘Ρ‚Ρ€ΠΎΠΊΠ° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ выдСлСния памяти ΠΈ процСссорного Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π’ высоконагруТСнных систСмах, Π³Π΄Π΅ опСрация выполняСтся ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ Ρ€Π°Π· Π² сСкунду, это ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΡƒΠ·ΠΊΠΈΠΌ мСстом. Для Ρ€Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ эта Ρ€Π°Π·Π½ΠΈΡ†Π° Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½Π°.

  • πŸ”’ ΠŸΡ€ΡΠΌΠΎΠΉ доступ ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ разряду ΠΏΠΎ индСксу Π±Π΅Π· нСобходимости прохоТдСния Ρ†ΠΈΠΊΠ»Π°.
  • πŸ“ Π›Π΅Π³ΠΊΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ чисСл с Π²Π΅Π΄ΡƒΡ‰ΠΈΠΌΠΈ нулями, Ссли ΠΎΠ½ΠΈ сохранСны Π² строкС.
  • ⚑ Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ для слоТного Π°Π½Π°Π»ΠΈΠ·Π° структуры числа.

ΠŸΡ€ΠΈ использовании строкового ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Если число Π±Ρ‹Π»ΠΎ ΠΎΡ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ с раздСлитСлями Π³Ρ€ΡƒΠΏΠΏ разрядов (ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ ΠΈΠ»ΠΈ запятыми), эти символы Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΏΠ°Π΄ΡƒΡ‚ Π² строку. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π΅Π· Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΉ ΠΈΠ»ΠΈ ΠΎΡ‡ΠΈΡ‰Π°Ρ‚ΡŒ строку ΠΎΡ‚ Π»ΠΈΡˆΠ½ΠΈΡ… символов ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ.

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π‘Ρ‚Ρ€Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ() для удалСния ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² ΠΈΠ· строкового прСдставлСния числа, Ссли Π²Ρ‹ Π½Π΅ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Π² настройках Ρ€Π΅Π³ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ стандарта ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… чисСл ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… случаСв

Одной ΠΈΠ· частых ошибок ΠΏΡ€ΠΈ Ρ€Π°Π·Π±ΠΎΡ€Π΅ числа Π½Π° Ρ†ΠΈΡ„Ρ€Ρ‹ являСтся ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π½Π°ΠΊΠ° числа. Если Π²Ρ…ΠΎΠ΄Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅, строковоС прСдставлСниС Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ символ минуса Π² Π½Π°Ρ‡Π°Π»Π΅. ΠŸΡ€ΠΈ посимвольном ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π΅ этот символ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ ΠΊΠ°ΠΊ Ρ†ΠΈΡ„Ρ€Π° ΠΈΠ»ΠΈ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ прСобразования Ρ‚ΠΈΠΏΠ° ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ привСсти Π΅Π³ΠΎ ΠΊ числу.

Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚Π°ΠΊΠΈΡ… ситуаций рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠœΠΎΠ΄ΡƒΠ»ΡŒ() (ΠΈΠ»ΠΈ Abs() Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках), которая Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ числа. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈ Π·Π½Π°ΠΊ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΠ΅ выдСлСния разрядов.

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ внимания заслуТиваСт число ноль. Π’ матСматичСском Ρ†ΠΈΠΊΠ»Π΅ условиС продолТСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ часто строится Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ Β«ΠΏΠΎΠΊΠ° число большС нуля». Если исходноС число Ρ€Π°Π²Π½ΠΎ 0, Ρ†ΠΈΠΊΠ» ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΡΡ Π½ΠΈ Ρ€Π°Π·Ρƒ, ΠΈ массив Ρ†ΠΈΡ„Ρ€ останСтся пустым. НСобходимо ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ условиС Ρ†ΠΈΠΊΠ»Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ноль ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ обрабатывался ΠΊΠ°ΠΊ ΠΎΠ΄Π½Π° Ρ†ΠΈΡ„Ρ€Π°.

Π’Ρ…ΠΎΠ΄Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ВозмоТная ошибка
123 ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ [3, 2, 1] НСт
-456 Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ (Π±Π΅Π· ΠœΠΎΠ΄ΡƒΠ»ΡŒ) ["-", "4", "5", "6"] Ошибка Ρ‚ΠΈΠΏΠ° ΠΏΡ€ΠΈ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ "-"
0 Π¦ΠΈΠΊΠ» Пока Число > 0 [] (пусто) ΠŸΡ€ΠΎΠΏΡƒΡΠΊ Ρ†ΠΈΡ„Ρ€Ρ‹ 0
7.89 ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ БСсконСчный Ρ†ΠΈΠΊΠ» ΠŸΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ стСка

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ВсСгда провСряйтС Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° Ρ‚ΠΈΠΏ Число. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Ρ€Π°Π·Π±ΠΎΡ€Π° строку, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ нСчисловыС символы, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊruntime-ошибкС прСобразования Ρ‚ΠΈΠΏΠ°.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π° встроСнном языкС

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… мСстах ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, цСлСсообразно ΠΎΡ„ΠΎΡ€ΠΌΠΈΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ Ρ€Π°Π·Π±ΠΎΡ€Π° числа Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π­Ρ‚Π° функция ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π° Π² ΠΎΠ±Ρ‰Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅ с Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌ контСкстом ΠΈΠ»ΠΈ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹, Π² зависимости ΠΎΡ‚ области видимости, которая Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°.

Ѐункция Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ числовой Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ массив чисСл ΠΈΠ»ΠΈ массив строк. Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ массива чисСл ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ для Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΡ… матСматичСских вычислСний, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ массив строк ΡƒΠ΄ΠΎΠ±Π΅Π½ для отобраТСния ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈ. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ.

Ѐункция Π Π°Π·Π±ΠΈΡ‚ΡŒΠ§ΠΈΡΠ»ΠΎΠΠ°Π¦ΠΈΡ„Ρ€Ρ‹(Π˜ΡΡ…ΠΎΠ΄Π½ΠΎΠ΅Π§ΠΈΡΠ»ΠΎ)

// Π—Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ нСчисловых Ρ‚ΠΈΠΏΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ

Если Π’ΠΈΠΏΠ—Π½Ρ‡(Π˜ΡΡ…ΠΎΠ΄Π½ΠΎΠ΅Π§ΠΈΡΠ»ΠΎ) <> Π’ΠΈΠΏ("Число") Π’ΠΎΠ³Π΄Π°

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠŸΡƒΡΡ‚ΠΎΠΉΠœΠ°ΡΡΠΈΠ²;

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

Π§ΠΈΡΠ»ΠΎΠ”Π»ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ = ΠœΠΎΠ΄ΡƒΠ»ΡŒ(ΠžΠΊΡ€(Π˜ΡΡ…ΠΎΠ΄Π½ΠΎΠ΅Π§ΠΈΡΠ»ΠΎ, 0));

ΠœΠ°ΡΡΠΈΠ²Π¦ΠΈΡ„Ρ€ = Новый Массив;

// Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° нуля

Если Π§ΠΈΡΠ»ΠΎΠ”Π»ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ = 0 Π’ΠΎΠ³Π΄Π°

ΠœΠ°ΡΡΠΈΠ²Π¦ΠΈΡ„Ρ€.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(0);

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠœΠ°ΡΡΠΈΠ²Π¦ΠΈΡ„Ρ€;

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

// Π¦ΠΈΠΊΠ» выдСлСния Ρ†ΠΈΡ„Ρ€

Пока Π§ΠΈΡΠ»ΠΎΠ”Π»ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ > 0 Π¦ΠΈΠΊΠ»

ΠžΡΡ‚Π°Ρ‚ΠΎΠΊ = Π§ΠΈΡΠ»ΠΎΠ”Π»ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ % 10;

ΠœΠ°ΡΡΠΈΠ²Π¦ΠΈΡ„Ρ€.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(ΠžΡΡ‚Π°Ρ‚ΠΎΠΊ);

Π§ΠΈΡΠ»ΠΎΠ”Π»ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ = Π¦Π΅Π»(Π§ΠΈΡΠ»ΠΎΠ”Π»ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ / 10);

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

// РСвСрс массива для восстановлСния порядка

ΠœΠ°ΡΡΠΈΠ²Π¦ΠΈΡ„Ρ€.ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ();

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠœΠ°ΡΡΠΈΠ²Π¦ΠΈΡ„Ρ€;

ΠšΠΎΠ½Π΅Ρ†Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ

ИспользованиС Ρ‚Π°ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠ΄ основного Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° чистым ΠΈ понятным. Π’Ρ‹ скрываСтС ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, прСдоставляя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ простой интСрфСйс: Β«Π΄Π°ΠΉ число β€” ΠΏΠΎΠ»ΡƒΡ‡ΠΈ Ρ†ΠΈΡ„Ρ€Ρ‹Β». Π­Ρ‚ΠΎ соотвСтствуСт ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ программирования ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π°Π·Π±ΠΎΡ€Π°

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ оптимизация ΠΊΠΎΠ΄Π°

Вопрос ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ становится Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… объСмов Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² ΠΈΠ· прайс-листа ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π½Ρ‹Ρ… Π·Π°Π΄Π°Π½ΠΈΠΉ. Π’ Ρ‚Π°ΠΊΠΈΡ… сцСнариях Π΄Π°ΠΆΠ΅ микросСкундныС Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ быстрСС строкового, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ·Π±Π΅Π³Π°Π΅Ρ‚ Π°Π»Π»ΠΎΠΊΠ°Ρ†ΠΈΠΈ памяти ΠΏΠΎΠ΄ строковыС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Однако, Ρ€Π°Π·Π½ΠΈΡ†Π° становится Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎΠΉ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°Ρ… ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ. Для Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ ΡƒΡ‡Π΅Ρ‚Π° Ρ€Π°Π·Π½ΠΈΡ†Π° Π² 1-2 миллисСкунды Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ практичСского значСния, ΠΈ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ слСдуСт ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ читаСмости ΠΊΠΎΠ΄Π°.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Π·Π° счСт ΠΎΡ‚ΠΊΠ°Π·Π° ΠΎΡ‚ создания Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°. ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ созданиС массива Π½ΡƒΠΆΠ½ΠΎΠΉ Смкости (Ссли количСство Ρ†ΠΈΡ„Ρ€ извСстно Π·Π°Ρ€Π°Π½Π΅Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для ИНН ΠΈΠ»ΠΈ ΠžΠ“Π Π) ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ динамичСскоС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ памяти массива ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ элСмСнта.

  • βš™οΈ Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ Π²Ρ‹Π·ΠΎΠ²Π° тяТСлых Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° Ρ€Π°Π·Π±ΠΎΡ€Π° Ρ†ΠΈΡ„Ρ€.
  • πŸš€ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ массивы, Ссли ваша вСрсия ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ это ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚.
  • 🧠 ΠšΡΡˆΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹, Ссли функция вызываСтся ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ с ΠΎΠ΄Π½ΠΈΠΌΠΈ ΠΈ Ρ‚Π΅ΠΌΠΈ ΠΆΠ΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ.

ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ тСстов ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ инструмСнт Β«Π—Π°ΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈΒ», встроСнный Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€ 1Π‘. Он ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Ρ‚ΠΎΡ‡Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ участок ΠΊΠΎΠ΄Π° являСтся Β«ΡƒΠ·ΠΊΠΈΠΌ Π³ΠΎΡ€Π»Ρ‹ΡˆΠΊΠΎΠΌΒ», ΠΈ стоит Π»ΠΈ ΡƒΡΠ»ΠΎΠΆΠ½ΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π°Π΄ΠΈ gains Π² скорости.

πŸ“Š Какой ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ (Ρ‡Π΅Ρ€Π΅Π· остаток)
Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ (Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΡŽ)
Π“ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ
НС ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ эту Π·Π°Π΄Π°Ρ‡Ρƒ

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ примСнСния Π² бизнСс-Π»ΠΎΠ³ΠΈΠΊΠ΅

Π—Π°Ρ‡Π΅ΠΌ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΠ²Π°Ρ‚ΡŒ число Π½Π° Ρ†ΠΈΡ„Ρ€Ρ‹ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ систСмС? Одним ΠΈΠ· самых распространСнных случаСв являСтся расчСт ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ суммы для ИНН, ΠžΠ“Π Π ΠΈΠ»ΠΈ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠ² EAN-13. Алгоритмы ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ этих Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² прямо Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ доступа ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ разрядам числа для умноТСния Π½Π° вСсовыС коэффициСнты.

Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ β€” аналитичСская ΠΎΡ‚Ρ‡Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ. Руководству ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ΠΎΠ² ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ†ΠΈΡ„Ρ€Π΅ ИНН для опрСдСлСния Ρ„ΠΎΡ€ΠΌΡ‹ собствСнности ΠΈΠ»ΠΈ Ρ€Π΅Π³ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ принадлСТности. Π’ этом случаС Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΡ‚Π°Ρ€ΡˆΠ΅Π³ΠΎ разряда позволяСт быстро ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π² запросС ΠΈΠ»ΠΈ ΠΊΠΎΠ΄Π΅.

Π’Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π·Π°Π΄Π°Ρ‡Π°Ρ… Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ ΠΈΠ»ΠΈ случайных ΠΊΠΎΠ΄ΠΎΠ² подтвСрТдСния. Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ числа Π½Π° ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ позволяСт ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡˆΠΈΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΡ„Ρ€Ρ‹, Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΡ… ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ ΠΈΠ»ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π²ΠΎΠ΄ ΠΊΠΎΠ΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ячССк Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°ΠΌΠΈ ΡŽΡ€ΠΈΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΡ… Π»ΠΈΡ† (ИНН/ΠžΠ“Π Π) Ρ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈΡ… Π² полях Ρ‚ΠΈΠΏΠ° Π‘Ρ‚Ρ€ΠΎΠΊΠ°, Π° Π½Π΅ Число. Π­Ρ‚ΠΎ сохранит Π²Π΅Π΄ΡƒΡ‰ΠΈΠ΅ Π½ΡƒΠ»ΠΈ ΠΈ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ ΠΎΡ‚ нСобходимости лишнСй ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π·Π±ΠΎΡ€Π΅.

ПониманиС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Ρ†ΠΈΡ„Ρ€Π°ΠΌΠΈ, ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ возмоТности для создания Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΡ… ΠΈ ΡƒΠΌΠ½Ρ‹Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ…. ВмСсто ТСсткой привязки ΠΊ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΌ функциям, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ, Π΄Π°ΠΆΠ΅ ΡΠ°ΠΌΡƒΡŽ Π½Π΅ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ ΠΈ трансформации числовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

πŸ’‘

Π’Ρ‹Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° зависит ΠΎΡ‚ Π·Π°Π΄Π°Ρ‡ΠΈ: для ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΈ ΠΈ скорости β€” Ρ†ΠΈΠΊΠ» с остатком, для Π°Π½Π°Π»ΠΈΠ·Π° структуры ΠΈ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² β€” строковоС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅.

МоТно Π»ΠΈ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ число Π½Π° Ρ†ΠΈΡ„Ρ€Ρ‹ Π±Π΅Π· использования Ρ†ΠΈΠΊΠ»Π°?

Π”Π°, это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ рСкурсивный Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π² 1Π‘ Π³Π»ΡƒΠ±ΠΈΠ½Π° стСка ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π°, ΠΈ для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… чисСл это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ошибкС. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ спСцифичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π½ΠΎ это ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎ слоТно для Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ.

Как ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ (Π΄Ρ€ΠΎΠ±Π½Ρ‹Π΅)?

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Ρ€Π°Π·Π±ΠΎΡ€Π° Π½Π° Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для цСлочислСнных разрядов. Для Π΄Ρ€ΠΎΠ±Π½Ρ‹Ρ… чисСл Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ число Π½Π° Ρ†Π΅Π»ΡƒΡŽ ΠΈ Π΄Ρ€ΠΎΠ±Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… нСзависимо, Π»ΠΈΠ±ΠΎ просто ΠΎΡ‚Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ Π΄Ρ€ΠΎΠ±Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Π¦Π΅Π»(), Ссли ΠΎΠ½Π° Π½Π΅ Π²Π°ΠΆΠ½Π°.

ВлияСт Π»ΠΈ Ρ€Π΅Π³ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ стандарт Π½Π° Ρ€Π°Π·Π±ΠΈΠ²ΠΊΡƒ числа?

ΠŸΡ€ΠΈ матСматичСском ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ β€” Π½Π΅Ρ‚, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π°Π΄ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΈΠΏΠ°. ΠŸΡ€ΠΈ строковом ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ β€” Π΄Π°, функция Π‘Ρ‚Ρ€ΠΎΠΊΠ°() ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ тысяч (ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹) Π² зависимости ΠΎΡ‚ настроСк ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ парсингС.

Какой Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ?

РСкомСндуСтся Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Массив, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ позволяСт Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ количСство Ρ†ΠΈΡ„Ρ€. Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ списка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ‚Π°ΠΊΠΆΠ΅ допустим, Π½ΠΎ массив являСтся Π±ΠΎΠ»Π΅Π΅ лСгковСсной структурой для простых Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….