rytikovabs
?>

Почему возникает необходимость в дискретизации непрерывной информации?

Информатика

Ответы

yatania-popovich7
Цифровой мир дискретен. Между двумя любыми, сколь угодно близкими  числовыми значениями математик находит бесконечное количество чисел, но все равно нельзя сказать, что числами можно абсолютно точно представить непрерывное явление или процесс.
Зато можно представить такой процесс сколь угодно приближенным к реальному - надо только выбрать точки, в которых он описывается, довольно близко друг к другу. Выбрать их так, чтобы адекватно описать непрерывный процесс - это и есть задача дискретизации - процесса перевода непрерывной величины в некий набор числовых отсчетов.
dima-pashkovec
1. Определим наибольшее натуральное число, куб которого не превышает 2019. ∛2019 ≈ 12.6; отбрасывая дробную часть, получаем 12.
2. Выпишем набор натуральных чисел от 1 до 12 и их кубов:
1-1, 2-8, 3-27, 4-64, 5-125, 6-216, 7-343, 8-512, 9-729, 10-1000, 11-1331, 12-1728
3. Определим при "жадного" алгоритма набор кубов, дающий в сумме 2019 (из 2019 поочередно вычитаем.максимально возможные кубы):
2019-1728=291, 291-216=75, 75-64=11, 11-8=3, а 3 - это три раза по 1. Получаются кубы чисел 12, 6, 4, 2, 1, 1, 1 - всего СЕМЬ чисел.
4. Попытаемся улучшить найденное решение, отбрасывая те, которые найдут семь и более чисел.

Если взять число 11³=1331, то 2019-1331=688 и нужно составить его из кубов не более, чем 5 чисел.
688-512=176, 176-125=51, 51-27=24 ... и слишком длинно.
688-2×343=2, 2-1=1, 1-1=0 - 4 числа.
Улучшенное решение: 2019 = 11³+7³+7³+1³+1³

Лучшего решения нет.
mulyugina365
1. PascalABC.NET 3.3
const n=5;
begin
 writeln('До:');
 var a:=MatrRandom(n,n,-10,10); a.Println(5);
 var b:=a.ElementsWithIndexes.Select(k->k[2]>k[1]?0:k[0]).ToArray;
 writeln('После:');
 a:=MatrGen(n,n,(i,j)->b[i*n+j]); a.Println(5);
end.

Пример:
До:
   -7    3    8   -6   -5
   -2    6   -1   -6   -8
    5    7    2  -10    0
    9    3   -8    5   -6
   -4    1    1    0  -10
После:
   -7    0    0    0    0
   -2    6    0    0    0
    5    7    2    0    0
    9    3   -8    5    0
   -4    1    1    0  -10

2.
const n=5;
var 
a:array[1..n,1..n] of integer;
i,j:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
 begin
 for j:=1 to n do
  begin
   a[i,j]:=random(100);
   write(a[i,j]:4);
  end;
  writeln;
 end;
for i:=1 to n do
 for j:=i+1 to n do a[i,j]:=0;
writeln('Полученный массив:');
for i:=1 to n do
 begin
 for j:=1 to n do write(a[i,j]:4);
 writeln;
 end;
end.

Пример:
Исходный массив:
  62  25  21  54  22
  71  39  41  49  63
  26  93  50  79  35
  81  45  40  99  45
  46  87  63  36  15
Полученный массив:
  62   0   0   0   0
  71  39   0   0   0
  26  93  50   0   0
  81  45  40  99   0
  46  87  63  36  15

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Почему возникает необходимость в дискретизации непрерывной информации?
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

krasnova1977
chizhenkovd9
borisov
Vetroff-11
kronid12
smalltalkcoffee5
dailyan539
girra
boro-1973
filippovev1
grishin
westgti77105
Donleksa2016
igor-790
Татьяна_Вологжин
Выбери верный адрес ячейки. 39 PP E 54