Фрактальна графіка Фрактальна графіка обраховується як векторна, але відрізняється тим, що жодних об'єктів у пам'яті комп'ютера не зберігається. Зображення будується за рівнянням(або за системою рівнянь), тому нічого, крім формули, зберігати не потрібно. Змінивши коефіцієнти у рівнянні, отримують зовсім іншу картину. Найпростішим фрактальним об'єктом є фрактальний трикутник. Фрактальними властивостями володіють багато об'єктів живої і неживої природи. Звичайна сніжинка при збільшенні виявляється фрактальним об'єктом. Фрактальні алгоритми лежать в основі росту кристалів і рослин. Властивість фрактальної графіки моделювати образи живої природи обчисленням часто використовують для автоматичної генерації незвичних ілюстрацій. Фрактал ( лат. Fractus – складений із фрагментів) – це зображення, якескладаеться із подібних між собою елементів. Побудова фрактального малюнка може відбуватися за деяким алгоритмом або шляхом автоматичної генерації зображень за до обчислень за певними формулами. Зміна в алгоритмах або значень коефіцієнтів у формулах приводить до модифікації зображення. Фрактальну графіку часто використовують для графічного представлення даних під час моделювання деяких процесів, для автоматичної генерації абстрактних зображень, у розважальних програмах. Як і кожна графіка чи програма фрактальна графіка має свої переваги та недоліки. Переваги фрактальної графіки 1) Малі обсяги даних. 2) Простота модифікації зображень. 3) Можливість деталізації зображення. Недоліки фрактальної графіки: 1) Абстрактність зображень. 2) Необхідність використання досить складних математичних понять і формул.
// PascalABC.NET 3.1, сборка 1200 от 13.03.2016 const n=5; type Matrix=array[1..n,1..n] of integer;
procedure DummySchool(var a:Matrix); begin Writeln('Ввод элементов матрицы'); for var i:=1 to n do begin Write(n,' элементов строки ',i,': '); for var j:=1 to n do Read(a[i,j]); end; Writeln('Сформирована матрица ',n,'x',n); for var i:=1 to n do begin for var j:=1 to n do Write(a[i,j]:5); Writeln end end;
begin var B:Matrix; DummySchool(B); var sn:=0; var sp:=0; for var i:=1 to n do for var j:=1 to n do if B[i,j]<0 then sn+=B[i,j] else if B[i,j]>0 then sp+=B[i,j]; Writeln('Сумма отрицательных ',sn); Writeln('Сумма положительных ',sp) end.
Объяснение:
Все переносы считаем не как в 10 системе, а как в восьмиричной. Отталкиваясь от 8.