Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/55: Рейтинг темы: голосов - 55, средняя оценка - 4.95
0 / 0 / 0
Регистрация: 28.01.2014
Сообщений: 19

Треугольник Серпинского (рекурсия)

01.06.2015, 16:32. Показов 11274. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть ли обобщенный алгоритм рисования этих треугольников. Метод хаоса не подходит.
Застрял на 3 итерации.
Построить треугольник Серпинского
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.06.2015, 16:32
Ответы с готовыми решениями:

Изобразить треугольник Серпинского
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using...

Построить треугольник Серпинского
В общем нам нужно построить треугольник серпинского.Если кто-то сможет дать подсказки буду очень благодарен:) ну или сделать его.это будет...

Треугольник Серпинского - исправить код
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using...

6
Эксперт .NETАвтор FAQ
 Аватар для Storm23
10425 / 5155 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
01.06.2015, 17:48
Лучший ответ Сообщение было отмечено piko14 как решение

Решение

piko14,
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Windows.Forms;
 
namespace WindowsFormsApplication293
{
    public partial class Form1 : Form
    {
        private GraphicsPath path = new GraphicsPath();
 
        public Form1()
        {
            InitializeComponent();
 
            SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer | ControlStyles.ResizeRedraw | ControlStyles.UserPaint, true);
 
            path = new GraphicsPath();
            BuildSerpinsky(path, new PointF(-200, 60), new PointF(0, -150), new PointF(200, 60), 7);
        }
 
        protected override void OnPaint(PaintEventArgs e)
        {
            e.Graphics.SmoothingMode = SmoothingMode.HighQuality;
            e.Graphics.TranslateTransform(Width / 2, Height / 2);
            e.Graphics.DrawPath(Pens.Black, path);
        }
 
        void BuildSerpinsky(GraphicsPath path, PointF p1, PointF p2, PointF p3, int iterations)
        {
            path.AddLine(p1, p2);
            path.AddLine(p2, p3);
            path.CloseFigure();
 
            iterations--;
            if(iterations > 0)
            {
                var p12 = new PointF(p1.X + (p2.X - p1.X) / 2, p1.Y + (p2.Y - p1.Y) / 2);
                var p23 = new PointF(p2.X + (p3.X - p2.X) / 2, p2.Y + (p3.Y - p2.Y) / 2);
                var p13 = new PointF(p1.X + (p3.X - p1.X) / 2, p1.Y + (p3.Y - p1.Y) / 2);
 
                BuildSerpinsky(path, p1, p12, p13, iterations);
                BuildSerpinsky(path, p12, p2, p23, iterations);
                BuildSerpinsky(path, p13, p23, p3, iterations);
            }
        }
    }
}
2
1 / 1 / 0
Регистрация: 26.05.2020
Сообщений: 9
27.05.2020, 13:51
а что значит iterations-- в этом коде объясните пожалуйста
0
 Аватар для ViterAlex
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
27.05.2020, 13:58
NStigeyti, это глубина построения.
1
1 / 1 / 0
Регистрация: 26.05.2020
Сообщений: 9
28.05.2020, 18:38
path.AddLine(p1, p2);
path.AddLine(p2, p3);
path.CloseFigure();
а что это значит и делает?
0
 Аватар для ViterAlex
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
28.05.2020, 18:49
NStigeyti, ты в справку принципиально не заглядываешь?
0
1 / 1 / 0
Регистрация: 26.05.2020
Сообщений: 9
28.05.2020, 18:51
в справке написано либо сложно либо непонятно а от людей которые понимают что это получить ответ проще и понятней
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.05.2020, 18:51
Помогаю со студенческими работами здесь

Нарисовать куб, каждая грань которого - ковер Серпинского
Добрый день! Имеется следующая задача: необходимо нарисовать куб, каждая грань которого - ковер Серпинского. Я отдельно рисовал куб,...

Рекурсия серпинского
Здравствуйте, нужна помощь в данном задании, заранее спасибо!

Треугольник Серпинского
Дан треугольник Серпинского. (Одинаковые) события надо выделить (одинаковыми) цветами. Добавлено через 1 минуту используя это ...

Треугольник Серпинского
Скажите пожалуйста что не так с кодом? Ругается на имя Serp. unit Unit1; interface uses Windows, Messages, SysUtils,...

треугольник Серпинского
Помогите пожалуйста написвть программу построения треугольника Серпинского с подробным описанием каждого действия


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru