Нарисовать треугольник Серпинского - C#

Узнай цену своей работы

Формулировка задачи:

Помогите создать треугольник Серпинского, Нужен код желательно с пояснением. Я только начала учить с#. Шаг 0. Начало. Шаг 1. Задать координаты исходного треугольника. Шаг 2. Задать глубину вложенности, т.е. сколько треугольников необходимо нарисовать внутри исходного треугольника. Шаг 3. Нарисовать исходный треугольник. Шаг 4. По формулам x = x1 + ( x2 –x1) P, y = y1 + ( y2 – y1) P определить координаты следующего вложенного треугольника при условии, что Р = 0,5.

Решение задачи: «Нарисовать треугольник Серпинского»

textual
Листинг программы
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 Triangle   //Пространство имен
{
    class Program
    {
        static void Main(string[] args);      // Точка входа в программу
        public class Graphics
            public class Pen
            public partial class Triangle : Triangle;
                const N:int=10;
    {
        public Triangle()
        {
 
            Graphics g = CreateGraphics();
            float p;
            float  ax, bx, cx, ay, by, cy;     //Задаем координаты точек внешнего треугольника
            ax = 50;
            bx = 75;
            cx = 100;
            ay = 100;
            by = 200;
            cy = 100;
 
 
            {
ax = ax + (bx - ax) * p;      ay = ay + (by - ay) * p;
bx = bx + (cx - bx) * p;      by = by + (cy - ay) * p;
cx = ax + (bx - ax) * p;      cy = ay + (by - ay) * p;
graphics.DrawLine(new Pen(Color.Black, 2), ax, ay, bx, by);
graphics.DrawLine(new Pen(Color.Black, 2), bx, by, cx, cy);
graphics.DrawLine(new Pen(Color.Black, 2), cx, cy, ax, ay);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.5 из 5
Похожие ответы