Класи , об’єкти та простори іменв в С

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра програмного забезпечення

Інформація про роботу

Рік:
2009
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Інформаційні технології
Група:
ПІ

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА" Інститут комп’ютерних наук та інформаційних технологій Кафедра програмного забезпечення ЗВІТ До лабораторної роботи № 2 На тему: “ Класи , об’єкти та простори іменв в С#” З дисципліни : "Програмне забезпечення мережевих технологій " Лектор: Проф. каф. ПЗ Мельник Р.А. Львів – 2009 Тема: класи , об’єкти та простори іменв в С#. Мета: освоїти елементи програмування мовою C# при розробленні класів та методів C#. Завдання до лабораторної роботи Створити C# програму декілька кульок, що рухаються на площині. Створити C# програму : формування графів. .Створити C# програму введення та перетворенння даних. Створити C# програму генерацій та опрацювання псевдо випадкових послідовностей Код програми 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 PZMT_2 { public partial class Form1 : Form { int X = 100,i=0,j=0; int Y= 100; int radius = 350; int [] BallsX = new int[50]; int [] BallsY = new int[50]; int [] Nap = new int[50]; int[] cnt = new int[50]; SolidBrush[] randcol = new SolidBrush[50]; Random Napryam = new Random(); Random R = new Random(); Random Rh = new Random(); Random Rw = new Random(); Random Rcol = new Random(20); Points [] mas = new Points[50]; int N=2; Graphics gr; //------------------------------------------- //Функція ля малювання кульок void Draw(Graphics gr, int x, int y, SolidBrush randcol) { gr.FillEllipse(randcol, x, y, 50, 50); } //------------------------------------------------------ //Функція заповнення масиву координат void Generate(int N) { Random Coord = new Random(); for (int i = 0; i < N; i++) { BallsX[i] = Coord.Next(50, pictureBox1.Width - 50); BallsY[i] = Coord.Next(50, pictureBox1.Height - 50); SolidBrush col = new SolidBrush(Color.FromArgb(Rcol.Next())); randcol[i] = col; } } public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private void pictureBox1_Click(object sender, EventArgs e) { } //------------------------------------------------ //some variables initialize //execute timer private void button1_Click(object sender, EventArgs e) { for (int i = 0; i < N; i++) { Nap[i] = 1; cnt[i] = 1; } N = int.Parse(textBox1.Text); gr = Graphics.FromHwnd(pictureBox1.Handle); gr.FillRectangle(new SolidBrush(Color.White), 0, 0, pictureBox1.Width, pictureBox1.Height); Generate(N); timer1.Interval = 50; timer1.Start(); } //----------------------------------------------- //Is circle in area? bool IsInArea(int X, int Y) { if (X <= 50) return false; else if (Y <= 50) return false; else if (X >= pictureBox1.Width - 50) return false; else if (Y >= pictureBox1.Height - 50) return false; else return true; } //------------------------------------------------ //таймер private void timer1_Tick(object sender, EventArgs e) { Animation(); } //---------------------------------------------- //Рух кульок void Animation() { gr = Graphics.FromHwnd(pictureBox1.Handle); gr.FillRectangle(new SolidBrush(Color.White), 0, 0, pictureBox1.Width, pictureBox1.Height); for (int i = 0; i < N; i++) { if (cnt[i] == 30) { Nap[i] = Napryam.Next(1, 8); cnt[i] = 0; } cnt[i]++; if (Nap[i] == 1) { BallsX[i]++; BallsY[i]++; } if (Nap[i] == 8) { BallsX[i]--; BallsY[i]--; } if (Nap[i] == 3) { BallsX[i]++; BallsY[i]--; } if (Nap[i] == 6) { BallsX[i]--; BallsY[i]++; } if (Nap[i] == 5) { BallsX[i]++; } if (Nap[i] == 2) { BallsY[i]++; } if (Nap[i] == 4) { BallsX[i]--; } if (Nap[i] == 7) { BallsY[i]--; } if (IsInArea(BallsX[i], BallsY[i])) Draw(gr, BallsX[i], BallsY[i], randcol[i]); else Nap[i] = 9 - Nap[i]; } } //--------------------------------------- //Псевдовипадкові послідовності private void button2_Click(object sender, EventArgs e) { int Nmas = int.Parse(textBoxNmas.Text); double[] posl = new double[Nmas]; double tmp2; int tmp, remainder; posl[0] = double.Parse(textBoxXpoch.Text); for (int i = 0; i < Nmas-1; i++) { tmp = (int)(Math.Pow(posl[i],2) * 1000000); remainder = tmp % 10000; tmp2 = (double)remainder / 10000; posl[i + 1] = tmp2; } for (int i = 0; i < Nmas; i++) { richTextBox2.Text = richTextBox2.Text + posl[i].ToString() + " "; } //------------------------------------------------- Graphics grHist = Graphics.FromHwnd(pictureBoxHist.Handle); grHist.FillRectangle(new SolidBrush(Color.White), 0, 0, pictureBoxHist.Width, pictureBoxHist.Height); //------------------------------------------------- double dl = 0.1; double j,b; int a = 0; int cnt; double h = (double)Nmas / 1000; double tmp3; for (j=0; j<1; j = j + dl) { b = j+dl; cnt = 0; for (i=0; i<Nmas; i++) { if (posl[i]>j) if(posl[i]<=b) cnt++; } tmp3 = 200 - cnt / h; grHist.DrawRectangle(new Pen(Color.Red),(20 * a), (int)tmp3, 20, 200-(int)tmp3); a++; } } private void buttonData_Click(object sender, EventArgs e) { double a; a = double.Parse(textBoxEnter.Text); richTextBox3.Text = richTextBox3.Text + a.ToString() + " "; } //------------------------------------- //Створення графу private void button5_Click(object sender, EventArgs e) { Random coordGraph = new Random(); Graphics grGraph = Graphics.FromHwnd(pictureBox4.Handle); int Npoints = int.Parse(textBox16.Text); Points Mas = new Points(Npoints); for (int i = 0; i < Npoints; i++) { Mas.setX(i, coordGraph.Next(1, pictureBox4.Width)); Mas.setY(i, coordGraph.Next(1, pictureBox4.Height)); } grGraph.FillRectangle(new SolidBrush(Color.White), 0, 0, pictureBox4.Width, pictureBox4.Height); for (int i = 0; i < Npoints-1; i++) grGraph.DrawLine(new Pen(Color.Black), Mas.getX(i), Mas.getY(i), Mas.getX(i+1), Mas.getY(i+1)); grGraph.DrawLine(new Pen(Color.Black), Mas.getX(Npoints-1), Mas.getY(Npoints-1), Mas.getX(0), Mas.getY(0)); } private void label1_Click(object sender, EventArgs e) { } private void label20_Click(object sender, EventArgs e) { } private void label6_Click(object sender, EventArgs e) { } private void buttonData_Click_1(object sender, EventArgs e) { double a; int b; bool c; a = double.Parse(textBoxEnter.Text); richTextBox3.Text = richTextBox3.Text + "Експоненціальний формат - " + a.ToString("e") + "\n"; richTextBox3.Text = richTextBox3.Text + "Дробовий формат - " + a.ToString("g") + "\n"; b = (int)a; richTextBox3.Text = richTextBox3.Text + "Ціле число - " + b.ToString("g") + "\n"; } public class Points { private int [] x; private int [] y; public Points (int i) { x = new int[i]; y = new int[i]; } public int getX(int i) {return x[i];} public int getY(int i) { return y[i];} public void setX(int i, int a) { x[i] = a; } public void setY(int i, int a) { y[i] = a; } } private void groupBox1_Enter(object sender, EventArgs e) { } private void pictureBox3_Click(object sender, EventArgs e) { } private void pictureBox4_Click(object sender, EventArgs e) { } private void button6_Click(object sender, EventArgs e) { Close(); } private void button7_Click(object sender, EventArgs e) { Close(); } private void button3_Click(object sender, EventArgs e) { Close(); } } } Протокол роботи програми    Висновок: Я ознайомився із основними особливостями миви С#,. Також мною було реалізовано програмний продук, що демонструє засвоєння мною основних елементів вищевказаної мови і їх практичне використання.
Антиботан аватар за замовчуванням

28.01.2013 17:01-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!