У вас вопросы?
У нас ответы:) SamZan.net

40; blls[i]

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 28.12.2024

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 WindowsFormsApplication1 {

 public partial class Form1 : Form {

   public Form1() {

     InitializeComponent();

     balls = new Ball[30];

     Random r = new Random();

     for (int i = 0; i < balls.Length; i++) {

       var oldColors = balls.Take(i).Select(p => p.color).ToArray();

       balls[i] = new Ball();

       balls[i].X = r.Next(10, Width - 40);

       balls[i].Y = r.Next(10, Height - 50);

       while (true) {

         Color temp = Color.FromArgb(r.Next(0, 255), r.Next(0, 255), r.Next(0, 255));

         balls[i].color = temp;

         if (oldColors.Any(p => p.B == temp.B && p.G == temp.G && p.R == temp.R)) {

           continue;

         }

         break;

       }

     }

   }

   //A  colorA

   //B  colorB

   //colorB -> colorA

   public void megre(Color ca, Color temp) {

     for (int i = 0; i < balls.Length; i++) {

       Ball p = balls[i];

       if (p.color.B == temp.B && p.color.G == temp.G

         && p.color.R == temp.R) {

         p.color = ca;

       }

     }

   }

   public bool needMegre() {

     Ball p = balls[0];

     Color temp = p.color;

     for (int i = 1; i < balls.Length; i++) {

       if (balls[i].color != temp) {

         return true;

       }

     }

     return false;

   }

   public void getMinDistIndex(out int index1, out int index2) {

     double minDist = -1;

     index1 = -1;

     index2 = -1;

     for (int i = 0; i < balls.Length; i++) {

       for (int j = 0; j < balls.Length; j++) {

         if (i == j) {

           continue;

         }

         if (balls[i].color == balls[j].color) {

           continue;

         }

         double curDist = getDist(i, j);

         if (minDist == -1) {

           minDist = curDist;

           index1 = i;

           index2 = j;

         } else if (curDist < minDist) {

           minDist = curDist;

           index1 = i;

           index2 = j;

         }

       }

     }

   }

   public double getDist(int i, int j) {

     return (balls[i].X - balls[j].X) * (balls[i].X - balls[j].X)

            + (balls[i].Y - balls[j].Y) * (balls[i].Y - balls[j].Y);

   }

   public Ball[] balls;

   

   private void Form1_Paint(object sender, PaintEventArgs e) {

     for (int i = 0; i < links.Count;i++ ) {

       int x1 = balls[links[i].index1].X;

       int y1 = balls[links[i].index1].Y;

       int x2 = balls[links[i].index2].X;

       int y2 = balls[links[i].index2].Y;

       e.Graphics.DrawLine(Pens.Black, x1, y1, x2, y2);

     }

     for (int i = 0; i < balls.Length; i++) {

         balls[i].draw(e.Graphics);

       }

   }

   private void Form1_MouseDown(object sender, MouseEventArgs e) {

     if (e.Button == MouseButtons.Right) {

       if (needMegre() == false) {

         MessageBox.Show("дерево найдено");

         return;

       }

       int index1;

       int index2;

       getMinDistIndex(out index1, out index2);

       megre(balls[index1].color, balls[index2].color);

       GraphLink newLine = new GraphLink()

       {index1 = index1, index2 = index2};

       links.Add(newLine);

       Invalidate();

     }

   }

   List<GraphLink> links = new List<GraphLink>();

 }

 class GraphLink {

   public int index1;

   public int index2;

 }

 public class Ball {

   public int X;

   public int Y;

   public Color color;

   public void draw(Graphics g) {

     g.FillEllipse(new SolidBrush(color), X - 5, Y - 5, 10, 10);

   }

 }

}




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 WindowsFormsApplication1 {

 public partial class Form1 : Form {

   public Form1() {

     InitializeComponent();

     balls = new Ball[60];

     Random r = new Random();

     for (int i = 0; i < balls.Length; i++) {

       var oldColors = balls.Take(i).Select(p => p.color).ToArray();

       balls[i] = new Ball();

       balls[i].X = r.Next(10, Width - 40);

       balls[i].Y = r.Next(10, Height - 50);

       while (true) {

         Color temp = Color.FromArgb(r.Next(0, 255), r.Next(0, 255), r.Next(0, 255));

         balls[i].color = temp;

         if (oldColors.Any(p => p.B == temp.B && p.G == temp.G && p.R == temp.R)) {

           continue;

         }

         break;

       }

     }

   }

   //A  colorA

   //B  colorB

   //colorB -> colorA

   public void megre(Color ca, Color temp) {

     for (int i = 0; i < balls.Length; i++) {

       Ball p = balls[i];

       if (p.color.B == temp.B && p.color.G == temp.G

         && p.color.R == temp.R) {

         p.color = ca;

       }

     }

   }

   public bool needMegre() {

     Ball p = balls[0];

     Color temp = p.color;

     for (int i = 1; i < balls.Length; i++) {

       if (balls[i].color != temp) {

         return true;

       }

     }

     return false;

   }

   public void getMinDistIndex(out int index1, out int index2) {

     double minDist = -1;

     index1 = -1;

     index2 = -1;

     for (int i = 0; i < balls.Length; i++) {

       for (int j = 0; j < balls.Length; j++) {

         if (i == j) {

           continue;

         }

         if (balls[i].color == balls[j].color) {

           continue;

         }

         double curDist = getDist(i, j);

         if (minDist == -1) {

           minDist = curDist;

           index1 = i;

           index2 = j;

         } else if (curDist < minDist) {

           minDist = curDist;

           index1 = i;

           index2 = j;

         }

       }

     }

   }

   public double getDist(int i, int j) {

     return (balls[i].X - balls[j].X) * (balls[i].X - balls[j].X)

            + (balls[i].Y - balls[j].Y) * (balls[i].Y - balls[j].Y);

   }

   public Ball[] balls;

   

   private void Form1_Paint(object sender, PaintEventArgs e) {

     for (int i = 0; i < links.Count;i++ ) {

       int x1 = balls[links[i].index1].X;

       int y1 = balls[links[i].index1].Y;

       int x2 = balls[links[i].index2].X;

       int y2 = balls[links[i].index2].Y;

       e.Graphics.DrawLine(Pens.Black, x1, y1, x2, y2);

     }

     for (int i = 0; i < balls.Length; i++) {

         balls[i].draw(e.Graphics);

       }

   }

   private void Form1_MouseDown(object sender, MouseEventArgs e) {

     if (e.Button == MouseButtons.Right) {

       if (needMegre() == false) {

         MessageBox.Show("дерево найдено");

         return;

       }

       int index1;

       int index2;

       getMinDistIndex(out index1, out index2);

       megre(balls[index1].color, balls[index2].color);

       GraphLink newLine = new GraphLink()

       {index1 = index1, index2 = index2};

       links.Add(newLine);

       Invalidate();

     }

   }

   List<GraphLink> links = new List<GraphLink>();

   private void timer1_Tick(object sender, EventArgs e) {

     if (needMegre() == false) {

       timer1.Enabled = false;

       return;

     }

     int index1;

     int index2;

     getMinDistIndex(out index1, out index2);

     megre(balls[index1].color, balls[index2].color);

     GraphLink newLine = new GraphLink() { index1 = index1, index2 = index2 };

     links.Add(newLine);

     Invalidate();

   }

 }

 class GraphLink {

   public int index1;

   public int index2;

 }

 public class Ball {

   public int X;

   public int Y;

   public Color color;

   public void draw(Graphics g) {

     g.FillEllipse(new SolidBrush(color), X - 5, Y - 5, 10, 10);

   }

 }

}



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 WindowsFormsApplication1 {

 public partial class Form1 : Form {

   public Form1() {

     InitializeComponent();

     balls = new Ball[60];

     Random r = new Random();

     for (int i = 0; i < balls.Length; i++) {

       var oldColors = balls.Take(i).Select(p => p.color).ToArray();

       balls[i] = new Ball();

       balls[i].X = r.Next(5, panel1.Width - 5);

       balls[i].Y = r.Next(5, panel1.Height - 5);

       while (true) {

         Color temp = Color.FromArgb(r.Next(0, 255), r.Next(0, 255), r.Next(0, 255));

         balls[i].color = temp;

         if (oldColors.Any(p => p.B == temp.B && p.G == temp.G && p.R == temp.R)) {

           continue;

         }

         break;

       }

     }

   }

   //A  colorA

   //B  colorB

   //colorB -> colorA

   public void megre(Color ca, Color temp) {

     for (int i = 0; i < balls.Length; i++) {

       Ball p = balls[i];

       if (p.color.B == temp.B && p.color.G == temp.G

         && p.color.R == temp.R) {

         p.color = ca;

       }

     }

   }

   public bool needMegre() {

     Ball p = balls[0];

     Color temp = p.color;

     for (int i = 1; i < balls.Length; i++) {

       if (balls[i].color != temp) {

         return true;

       }

     }

     return false;

   }

   public void getMinDistIndex(out int index1, out int index2) {

     double minDist = -1;

     index1 = -1;

     index2 = -1;

     for (int i = 0; i < balls.Length; i++) {

       for (int j = 0; j < balls.Length; j++) {

         if (i == j) {

           continue;

         }

         if (balls[i].color == balls[j].color) {

           continue;

         }

         double curDist = getDist(i, j);

         if (minDist == -1) {

           minDist = curDist;

           index1 = i;

           index2 = j;

         } else if (curDist < minDist) {

           minDist = curDist;

           index1 = i;

           index2 = j;

         }

       }

     }

   }

   public double getDist(int i, int j) {

     return (balls[i].X - balls[j].X) * (balls[i].X - balls[j].X)

            + (balls[i].Y - balls[j].Y) * (balls[i].Y - balls[j].Y);

   }

   public Ball[] balls;

   private void panel1_Paint(object sender, PaintEventArgs e) {

     for (int i = 0; i < links.Count;i++ ) {

       int x1 = balls[links[i].index1].X;

       int y1 = balls[links[i].index1].Y;

       int x2 = balls[links[i].index2].X;

       int y2 = balls[links[i].index2].Y;

       e.Graphics.DrawLine(Pens.Black, x1, y1, x2, y2);

     }

     for (int i = 0; i < balls.Length; i++) {

         balls[i].draw(e.Graphics);

       }

   }

   private void panel1_MouseDown(object sender, MouseEventArgs e) {

     if (e.Button == MouseButtons.Right) {

       if (needMegre() == false) {

         MessageBox.Show("дерево найдено");

         return;

       }

       int index1;

       int index2;

       getMinDistIndex(out index1, out index2);

       megre(balls[index1].color, balls[index2].color);

       GraphLink newLine = new GraphLink()

       {index1 = index1, index2 = index2};

       links.Add(newLine);

       panel1.Invalidate();

     }

   }

   List<GraphLink> links = new List<GraphLink>();

   private void timer1_Tick(object sender, EventArgs e) {

     if (needMegre() == false) {

       timer1.Enabled = false;

       return;

     }

     int index1;

     int index2;

     getMinDistIndex(out index1, out index2);

     megre(balls[index1].color, balls[index2].color);

     GraphLink newLine = new GraphLink() { index1 = index1, index2 = index2 };

     links.Add(newLine);

     Invalidate();

   }

 }

 class GraphLink {

   public int index1;

   public int index2;

 }

 public class Ball {

   public int X;

   public int Y;

   public Color color;

   public void draw(Graphics g) {

     g.FillEllipse(new SolidBrush(color), X - 5, Y - 5, 10, 10);

   }

 }

}



F(x) = (x, y)

{(X,Y)} = задам график

(r, f) – полярная система координат

(r, f, тетта)


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 WindowsFormsApplication1 {

 public partial class Form1 : Form {

   public Form1() {

     InitializeComponent();

     balls = new Ball[60];

     Random r = new Random();

     for (int i = 0; i < balls.Length; i++) {

       var oldColors = balls.Take(i).Select(p => p.color).ToArray();

       balls[i] = new Ball();

       balls[i].X = r.Next(5, panel1.Width - 5);

       balls[i].Y = r.Next(5, panel1.Height - 5);

       while (true) {

         Color temp = Color.FromArgb(r.Next(0, 255), r.Next(0, 255), r.Next(0, 255));

         balls[i].color = temp;

         if (oldColors.Any(p => p.B == temp.B && p.G == temp.G && p.R == temp.R)) {

           continue;

         }

         break;

       }

     }

   }

   //A  colorA

   //B  colorB

   //colorB -> colorA

   public void megre(Color ca, Color temp) {

     for (int i = 0; i < balls.Length; i++) {

       Ball p = balls[i];

       if (p.color.B == temp.B && p.color.G == temp.G

         && p.color.R == temp.R) {

         p.color = ca;

       }

     }

   }

   public bool needMegre() {

     Ball p = balls[0];

     Color temp = p.color;

     for (int i = 1; i < balls.Length; i++) {

       if (balls[i].color != temp) {

         return true;

       }

     }

     return false;

   }

   public void getMinDistIndex(out int index1, out int index2) {

     double minDist = -1;

     index1 = -1;

     index2 = -1;

     for (int i = 0; i < balls.Length; i++) {

       for (int j = 0; j < balls.Length; j++) {

         if (i == j) {

           continue;

         }

         if (balls[i].color == balls[j].color) {

           continue;

         }

         double curDist = getDist(i, j);

         if (minDist == -1) {

           minDist = curDist;

           index1 = i;

           index2 = j;

         } else if (curDist < minDist) {

           minDist = curDist;

           index1 = i;

           index2 = j;

         }

       }

     }

   }

   public double getDist(int i, int j) {

     return (balls[i].X - balls[j].X) * (balls[i].X - balls[j].X)

            + (balls[i].Y - balls[j].Y) * (balls[i].Y - balls[j].Y);

   }

   public Ball[] balls;

   public float getY(float X) {

     return (float)Math.Sin(X);

   }

   private void panel1_Paint(object sender, PaintEventArgs e) {

     List<PointF> points = new List<PointF>();

     for (float x = -(float)Math.PI; x < Math.PI; x += 0.2F) {

       PointF newP = new PointF(x, getY(x));

       points.Add(newP);

     }

     GraphPainter p = new GraphPainter();

     p.draw(points.ToArray(), e.Graphics, panel1.Width, panel1.Height);

     /*

     for (int i = 0; i < links.Count;i++ ) {

       int x1 = balls[links[i].index1].X;

       int y1 = balls[links[i].index1].Y;

       int x2 = balls[links[i].index2].X;

       int y2 = balls[links[i].index2].Y;

       e.Graphics.DrawLine(Pens.Black, x1, y1, x2, y2);

     }

     for (int i = 0; i < balls.Length; i++) {

         balls[i].draw(e.Graphics);

       }

      * */

   }

   private void panel1_MouseDown(object sender, MouseEventArgs e) {

     if (e.Button == MouseButtons.Right) {

       if (needMegre() == false) {

         MessageBox.Show("дерево найдено");

         return;

       }

       int index1;

       int index2;

       getMinDistIndex(out index1, out index2);

       megre(balls[index1].color, balls[index2].color);

       GraphLink newLine = new GraphLink() { index1 = index1, index2 = index2 };

       links.Add(newLine);

       panel1.Invalidate();

     }

   }

   List<GraphLink> links = new List<GraphLink>();

   private void timer1_Tick(object sender, EventArgs e) {

     if (needMegre() == false) {

       timer1.Enabled = false;

       return;

     }

     int index1;

     int index2;

     getMinDistIndex(out index1, out index2);

     megre(balls[index1].color, balls[index2].color);

     GraphLink newLine = new GraphLink() { index1 = index1, index2 = index2 };

     links.Add(newLine);

     Invalidate();

   }

 }

 class GraphPainter {

   //0, 3, 8

   //0, 3/8, 8/8

   //[a..b]

   //[0..b-a]+a

   //[0..1]*(b-a)+a

   //(a-min)/(max-min)

   //[0..maxDrawX]

   //[0..1]*MaxDrawX

   public void draw(PointF[] points, Graphics g, int maxDrawX, int maxDrawY) {

     float minX = points.Select(p => p.X).Min();

     float maxX = points.Select(p => p.X).Max();

     for (int i = 0; i < points.Length; i++) {

       if (maxX == minX) {

         points[i].X = 0.5F;

       } else {

         points[i].X = (points[i].X - minX) / (maxX - minX);

       }

       points[i].X = points[i].X * maxDrawX;

     }

     float minY = points.Select(p => p.Y).Min();

     float maxY = points.Select(p => p.Y).Max();

     for (int i = 0; i < points.Length; i++) {

       if (maxY == minY) {

         points[i].Y = 0.5F;

       } else {

         points[i].Y = (points[i].Y - minY) / (maxY - minY);

         points[i].Y = 1 - points[i].Y;

       }

       points[i].Y = points[i].Y * maxDrawY;

     }

     for (int i = 0; i < points.Length - 1; i++) {

       g.DrawLine(Pens.Black, points[i], points[i + 1]);

     }

   }

 }

 class GraphLink {

   public int index1;

   public int index2;

 }

 public class Ball {

   public int X;

   public int Y;

   public Color color;

   public void draw(Graphics g) {

     g.FillEllipse(new SolidBrush(color), X - 5, Y - 5, 10, 10);

   }

 }

}


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 WindowsFormsApplication1 {

 public partial class Form1 : Form {

   public Form1() {

     InitializeComponent();      

   }      

   public float getY(float X) {

     return (float)Math.Sin(X);

   }

   public float delta = 0;

   private void panel1_Paint(object sender, PaintEventArgs e) {

     List<PointF> points = new List<PointF>();

     for (float x = -(float)Math.PI ; x < Math.PI; x += 0.2F) {

       PointF newP = new PointF(x, getY(x + delta));

       points.Add(newP);

     }

     GraphPainter p = new GraphPainter();

     p.draw(points.ToArray(), e.Graphics, panel1.Width, panel1.Height);

   }

   private void timer1_Tick(object sender, EventArgs e) {

     delta = delta + 0.1F;

     panel1.Invalidate();

   }

 }

 class GraphPainter {

   //0, 3, 8

   //0, 3/8, 8/8

   //[a..b]

   //[0..b-a]+a

   //[0..1]*(b-a)+a

   //(a-min)/(max-min)

   //[0..maxDrawX]

   //[0..1]*MaxDrawX

   public void draw(PointF[] points, Graphics g, int maxDrawX, int maxDrawY) {

     float minX = points.Select(p => p.X).Min();

     float maxX = points.Select(p => p.X).Max();

     for (int i = 0; i < points.Length; i++) {

       if (maxX == minX) {

         points[i].X = 0.5F;

       } else {

         points[i].X = (points[i].X - minX) / (maxX - minX);

       }

       points[i].X = points[i].X * maxDrawX;

     }

     float minY = points.Select(p => p.Y).Min();

     float maxY = points.Select(p => p.Y).Max();

     for (int i = 0; i < points.Length; i++) {

       if (maxY == minY) {

         points[i].Y = 0.5F;

       } else {

         points[i].Y = (points[i].Y - minY) / (maxY - minY);

         points[i].Y = 1 - points[i].Y;

       }

       points[i].Y = points[i].Y * maxDrawY;

     }

     for (int i = 0; i < points.Length - 1; i++) {

       g.DrawLine(Pens.Black, points[i], points[i + 1]);

     }

   }

 }

}




1. Тема Сущность функции и границы кредита
2. Реферат- Проект участка цеха с детальной разработкой единичного технологического процесса изготовления детали Картер
3. Показатели 2009 2010 2011
4. Тема- Зарождение социологии в России и формирование различных направлений
5. Анализ труда и заработной платы в учреждениях здравоохранения
6. Холодная война была в самом разгаре
7. задание на поиск информации в глобальной компьютерной сети Интернет
8. Реферат- Правовое регулирование страхования
9. Реферат- Решение в системе управления
10. Компьютерные технологии
11. Учет нематериальных активов1
12. реферат дисертації на здобуття наукового ступеня кандидата технічних наук Київ 2003
13. F рядом с именами
14. Финансовая отчетность и анализ ее основных показателей
15. Going nd responsible nd diligent
16. Назначение и классификация МСА
17. правової норми її особливості у порівнянні з іншими правовими нормами
18. Дзёмон - японский неоли
19. она никогда не полагалась на безопасность носимой ею короныrdquo;
20. Айкай 21 Общая характеристика предприятия ООО Айкай 16 2