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

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

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

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

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

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9.  
  10. namespace Triangle   //Пространство имен
  11. {
  12.     class Program
  13.     {
  14.         static void Main(string[] args);      // Точка входа в программу
  15.         public class Graphics
  16.             public class Pen
  17.             public partial class Triangle : Triangle;
  18.                 const N:int=10;
  19.     {
  20.         public Triangle()
  21.         {
  22.  
  23.             Graphics g = CreateGraphics();
  24.             float p;
  25.             float  ax, bx, cx, ay, by, cy;     //Задаем координаты точек внешнего треугольника
  26.             ax = 50;
  27.             bx = 75;
  28.             cx = 100;
  29.             ay = 100;
  30.             by = 200;
  31.             cy = 100;
  32.  
  33.  
  34.             {
  35. ax = ax + (bx - ax) * p;      ay = ay + (by - ay) * p;
  36. bx = bx + (cx - bx) * p;      by = by + (cy - ay) * p;
  37. cx = ax + (bx - ax) * p;      cy = ay + (by - ay) * p;
  38. graphics.DrawLine(new Pen(Color.Black, 2), ax, ay, bx, by);
  39. graphics.DrawLine(new Pen(Color.Black, 2), bx, by, cx, cy);
  40. graphics.DrawLine(new Pen(Color.Black, 2), cx, cy, ax, ay);

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


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

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

6   голосов , оценка 3.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы