Возможность исправления искаженных информационных данных, повышенная помехоустойчивость благодаря специальным методам кодирования информационных данных, возможность сжатия информационных данных, возможность передачи информационных данных по одному каналу от различных источников
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println; var k:=ReadInteger('Введите число-дубликат для удаления:'); var id:=a.FindIndex(t->t=k); if id>-1 then a:=a[:id+1]+a[id+1:].Where(t->t<>k).ToArray; a.Println end.
Четырехзначные восьмеричные числа - это числа в диапазоне от 1111₈ до 7777₈ Мы можем поступить двояким 1) перевести оба числа в десятичную систему счисления и таким образом определить диапазон чисел, которые (предположительно) надо суммировать. 2) перевести оба числа в шестнадцатиричную систему и записать диапазон шестнадцатиричными числами (в Паскале их можно указывать). Мне больше по душе второй вариант, потому что он не требует расчетов на калькуляторе или "в столбик". 1111₈ = 1 001 001 001₂ = 10 0100 1001₂ = 249₁₆ 7777₈ = 111 111 111 111₂ = 1111 1111 1111 = FFF₁₆ Осталось решить вопрос о том, как отобрать числа, у которых в восьмеричном коде последняя не пятерка. Вспомним перевод числа из десятичной системы в восьмеричную: мы делим на 8, выписывая остатки, в потом записываем из в обратном порядке. Следовательно, последней цифрой числа будет остаток от самого первого деления. И это дает нам правило отбора чисел: остаток от деления числа на 8 не должен равняться 5.
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin ReadSeqIntegerWhile(t->t<>0) .Where(t->t.Between($249,$FFF) and (t mod 8 <>5)).Sum.Println end.