Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/42: Рейтинг темы: голосов - 42, средняя оценка - 4.52
1 / 1 / 2
Регистрация: 22.09.2012
Сообщений: 9

Снежинка Коха (исправить приведенный код)

24.09.2012, 22:28. Показов 8155. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
48
49
50
51
52
53
54
55
56
57
58
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace koh1
{
    public partial class Form1 : Form
    {
        private Pen pen1;
        private Graphics gr;
        private int uroven;
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            pen1 = new Pen(Color.Green, 1);
            gr = CreateGraphics();
            var p1 = new PointF(100, 100);
            var p2 = new PointF(400, 100);
            var p3 = new PointF(250, 300);
            gr.Clear(Color.White);
            gr.DrawLine(pen1, p1, p2);
            gr.DrawLine(pen1, p2, p3);
            gr.DrawLine(pen1, p3, p1);
            //Console.ReadLine();
            gr.Clear(Color.White);
            Fractal(p1, p2, p3, 2);
            Fractal(p2, p3, p1, 2);
            Fractal(p3, p1, p2, 2);
        }
        private void Fractal(PointF p1, PointF p2, PointF p3, int n)
        {
            if (n > 0)
            {
                var p4 = new PointF((p2.X + 2 * p1.X) / 3, (p2.Y + 2 * p1.Y) / 3);
                var p5 = new PointF(p1.X + p2.X, p1.Y + p2.Y);
                var ps = new PointF((p1.X + p2.X) / 2, (p1.Y + p2.Y) / 2);
                var pn = new PointF((4 * ps.X - p3.X) / 3, (4 * ps.Y - p3.Y) / 3); 
 
                Fractal(p4, pn, p5, n - 1);
                Fractal(pn, p5, p4, n - 1);
                Fractal(p1, p4, new PointF((2 * p1.X + p3.X) / 3, (2 * p1.Y + p3.Y) / 3), n - 1);
                Fractal(p5, p2, new PointF((2 * p2.X + p3.X) / 3, (2 * p2.Y + p3.Y) / 3), n - 1);
            }
            return n;
        }
        
    }
 
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.09.2012, 22:28
Ответы с готовыми решениями:

Рандомизированная снежинка коха
можете помочь исправит код , чтобы снежинка коха, стала рандомной, т.е. нужно чтоб ее форма была рандомной , спасибо кто помог using...

Фракталы. Рандомизированная снежинка Коха
Ребят, будьте так любезны, пожалуйста написать программу в c# (рандомизированная снежинка коха) пожалуйста

Построение Анти-Снежинки Коха (Снежинка Коха внутрь) на языке Pascal.
Нужно построить антиснежинку Коха. Имеется код построения обычной снежинки Коха через линии треугольника. Кто-нибудь может помочь? ...

3
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
25.09.2012, 10:47
Цитата Сообщение от Sapiuntop Посмотреть сообщение
исправить приведенный код
А в чем проблема?
0
1 / 1 / 2
Регистрация: 22.09.2012
Сообщений: 9
25.09.2012, 18:00  [ТС]
Всем спасибо я уже сам нашел ошибку.

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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace koh1
{
    public partial class Form1 : Form
    {
       static Pen pen1;
       static Graphics gr;
       static Pen pen2;
       
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            pen1 = new Pen(Color.Green, 1);
            pen2 = new Pen(Color.White, 1);
            gr = CreateGraphics();
            var p1 = new PointF(100, 100);
            var p2 = new PointF(400, 100);
            var p3 = new PointF(250, 300);
            gr.DrawLine(pen1, p1, p2);
            gr.DrawLine(pen1, p2, p3);
            gr.DrawLine(pen1, p3, p1);
            
            Fractal(p1, p2, p3, 5);
            Fractal(p2, p3, p1, 5);
            Fractal(p3, p1, p2, 5);
        }
        static int Fractal(PointF p1, PointF p2, PointF p3, int n)
        {
            if (n > 0)
            {
                
                    var p4 = new PointF((p2.X + 2 * p1.X) / 3, (p2.Y + 2 * p1.Y) / 3);
                    var p5 = new PointF((2*p2.X + p1.X)/3, (p1.Y + 2*p2.Y)/3);
                    var ps = new PointF((p2.X + p1.X) / 2, (p2.Y + p1.Y) / 2);
                    var pn = new PointF((4 * ps.X - p3.X) / 3, (4 * ps.Y - p3.Y) / 3);
 
                    gr.DrawLine(pen1, p4, pn);
                    gr.DrawLine(pen1, p5, pn);
                    gr.DrawLine(pen2, p4, p5);
                   
                    Fractal(p4, pn, p5, n - 1);
                    Fractal(pn, p5, p4, n - 1);
                    Fractal(p1, p4, new PointF((2 * p1.X + p3.X) / 3, (2 * p1.Y + p3.Y) / 3), n - 1);
                    Fractal(p5, p2, new PointF((2 * p2.X + p3.X) / 3, (2 * p2.Y + p3.Y) / 3), n - 1);
                
            }
            return n;
        }
        
    }
 
}
0
9 / 8 / 2
Регистрация: 08.12.2019
Сообщений: 102
17.12.2019, 23:13
Visual Basic
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
Sub Ìàêðîñ1()
    x0 = 300: y0 = 300: r = 270: k = 10
    cir x0, y0, r
    rec x0, y0, r, k, 1
End Sub
 
Sub rec(x0, y0, r, k, n)
     pi = 3.14
     a = pi / k
     r1 = r / (1 + Sin(a))
     r2 = r - r1
     aa = 2 * a
     For i = aa To 2 * pi Step aa
        X = x0 + r1 * Cos(i)
        Y = y0 + r1 * Sin(i)
        cir X, Y, r2
        If n < 10 Then rec X, Y, r2, k, n + 1
    Next i
End Sub
 
Sub cir(x0, y0, r)
    Dim F As Shape
    Set F = ActiveDocument.Shapes.AddShape(9, x0 - r, y0 - r, 2 * r, 2 * r)
    F.Fill.Visible = msoFalse
    F.Line.Weight = 0.5
    F.Line.ForeColor.RGB = RGB(0, 0, 0)
End Sub
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.12.2019, 23:13
Помогаю со студенческими работами здесь

Снежинка Коха
Привет Всем ! В общем, у меня есть программа, которая рисует кривую Коха........Мне нужно построить снежинку Коха......там в принципе тоже...

Снежинка Коха
Задание заключается в том, чтобы построить снежинку с помощью рекурсии. Есть замечательная программа на Паскале. Вот код program...

Снежинка коха
В универе задали лабу. задание следующее: &quot;построение снежинки коха&quot;. Дело в том, что пошаговое объяснение есть, но писал его видимо...

Снежинка Коха
Задание заключается в том, чтобы построить снежинку с помощью рекурсии. Есть замечательная программа на Паскале. Вот код program...

снежинка коха
Нужно в Mathematica сделать снежинку коха. Получилось только это: points = {{1.0, 0.0}}; koch := Join.#/3 + {1/3, 0}) &amp;...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru