Нарисовать треугольник Серпинского - 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);

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

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

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