Изучение среды разработки MS Visual Studio С#. Классы

Автор работы: Пользователь скрыл имя, 22 Мая 2013 в 17:36, лабораторная работа

Краткое описание

Постановка задачи:
Найти минимальный элемент массива.
Постановка задачи:
Составить описание класса прямоугольников со сторонами, параллельными осям координат. Предусмотреть возможность перемещения прямоугольников на плоскости, изменение размеров и построения прямоугольника, являющегося общей частью (пересечением) двух прямоугольников.

Содержание

Лабораторная работа №1
Изучение среды разработки MS Visual Studio С#
Лабораторная работа №2
Классы
Лабораторная работа №3
Иерархия классов
Лабораторная работа №4
Разработка программ в оконном режиме. Формы
Лабораторная работа №5
Графика

Вложенные файлы: 1 файл

Отчёт по ООП.doc

— 163.00 Кб (Скачать файл)

 

Лабораторная работа №1

Изучение среды разработки MS Visual Studio С#

 

Постановка  задачи:

Найти минимальный элемент  массива.

 

 

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace ConsoleApplication2

{

    class Program

    {

        static void Main(string[] args)

        {

            const int n = 5;

            string name;

            Console.WriteLine("Hello FIT");

            name = Console.ReadLine();

            int[] array1 = new int[n] { 1, 3, 5, -7, 9 };

            int min = array1[0];

            for (int i = 0; i < n; i++)

            {

                if (array1[i] < min) min = array1[i];

            }

            Console.WriteLine("Минимальный элемент ={0}",min);

              

          

              

 

            Console.WriteLine("Программу разработал:" + name);

            Console.ReadLine();

        }

 

 

 

 

 

 

 

 

 

 

 

 

Лабораторная работа №2

Классы

 

Постановка  задачи:

Составить описание класса прямоугольников со сторонами, параллельными осям координат. Предусмотреть возможность перемещения прямоугольников на плоскости, изменение размеров и построения прямоугольника, являющегося общей частью (пересечением) двух прямоугольников.

 

Результат:

 

 

using System;

namespace lab2_v7

{

    class Program

    {

        static void Main(string[] args)

 

 

        {

            Console.WriteLine("Программа для работы  с представлением прямоугольника");

            Console.WriteLine("Введите координаты левого нижнего угла прямоугольника");

            double x1 = Double.Parse(Console.ReadLine());

            double y1 = Double.Parse(Console.ReadLine());

            Console.WriteLine("Введите высоту и ширину прямоугольника");

            double h1 = Double.Parse(Console.ReadLine());

            double w1 = Double.Parse(Console.ReadLine());

            Square s1 = new Square(x1, y1, h1, w1);

            Console.WriteLine("Исходный прямоугольник "+ s1);

 

            Console.WriteLine("Введите координаты левого нижнего угла 2-го прямоугольника");

            double x2 = Double.Parse(Console.ReadLine());

            double y2 = Double.Parse(Console.ReadLine());

            Console.WriteLine("Введите высоту и ширину 2-го прямоугольника");

            double h2 = Double.Parse(Console.ReadLine());

            double w2 = Double.Parse(Console.ReadLine());

            Square s2 = new Square();//Пример работы с конструктором без параметров

            s2.x = x2;

            s2.y = y2;

            s2.Height = h2;

            s2.Width = w2;

            Console.WriteLine("Пересечение этих прямоугольников {0}", s1.NewSquare(s2));

            Console.WriteLine("Сдвинем первий прямоугольник");

            //Добавление X

            s1.left(2);

            //Добавление Y

            s1.top(1);

            Console.WriteLine("Новый прямоугольник {0}", s1);

 

            Console.Read();

 

 

        }

    }

    class Square                //Класс, описывающий прямоугольник

    {

        private double height, //Высота

                       width;  //Ширина

        //Координаты

        public double x,       //Координата X левого нижнего угла

                      y;       //Координата Y левого  нижнего угла

        //Конструктор с параметрами(координаты  левого нижнего угла, высота, ширина)

        public Square(double Xp, double Yp, double H, double W){

            height=H; //Присвоить высоту

            width=W;  //Присвоить ширину

            x=Xp;     //Присвоить координату X

            y=Yp;     //Присвоить координату Y

 

        }

 

        //Конструктор без параметров

        public Square(){

            height=0; //Присвоить высоту=0

            width=0;  //Присвоить ширину=0

            x=0;      //Присвоить координату X=0

            y=0;      //Присвоить координату Y=0

 

        }

 

        public double Height{  //Свойство для работы  с высотой прямоугольника

            set

            {

                height=value;  //Присвоить значение  высоте

            }

            get

            {

                return height;//Возвратить значение высоты

            }

        }

 

        public double Width{   //Свойство для  работы с шириной прямоугольника

            set

            {

                width=value;  //Присвоить значение шириной

            }

            get

            {

                return width;//Возвратить значение ширины

            }}

 

        //Получение прямоугольника(пересечение  2-х прямоугольников)

        public Square NewSquare(Square s) {

            Square NewS = new Square();

            double x1 = x;     //

            double y1 = y;

            double x3 = x + width; //

            double y3 = y + height; //

            double Sx1 = s.x;       //

            double Sy1 = s.y ; //

            double Sx3 = s.x + s.width; //

            double Sy3 = s.y + s.height; //

            NewS.x = Math.Max(x1, Sx1);

            NewS.y = Math.Max(y1, Sy1);

 

            NewS.Height = Math.Abs(Math.Min(y3, Sy3) - NewS.y);

            NewS.Width = Math.Abs(Math.Min(x3, Sx3) - NewS.x);

 

            return NewS;

        }

 

        public override string ToString()

        {             //Получить текстоваое представление (координаты левого нижнего угла, высота, длина)

            return "(" + x + ";" + y + ")  " + "["+height+";"+width+"]";

        }

 

        //Сдвинуть влево

        public void left(double x) {

            this.x -= x;

        }

        //Сдвинуть вправо

        public void right(double x)

        {

            this.x += x;

        }

        //Сдвинуть вверх

        public void top(double y)

        {

            this.y += y;

        }

        //Сдвинуть вниз

        public void down(double y)

        {

            this.y -= y;

        }

}

}

 

 

 

 

 

Лабораторная работа №3

Иерархия классов

 

Постановка  задачи:

Описать класс "склад" содержащий закрытый массив товаров. Обеспечить следующие возможности: Вывод информации о товаре по номеру с помощью индекса; Вывод на экран информации о товаре, название которого введено с клавиатуры; если таких товаров нет, выдать соответствующее сообщение.

 

Результат:

 

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace Классы_Склад_1_лаб

{

   class Program

   {

     

      static void Main(string[] args)

      {

         List<Store> skl = new List<Store>(); // Список объектов класса Store

         while (true)

         {

           

 

            Console.WriteLine("Ввести товар в базу (1)\nВывести все товары на складе (2)\nВывести данные о товаре  по номеру (3)\nВывести данные о  товаре по названию(4)\nВыход (5)\n");

            Console.WriteLine("\nВведите необходимое действие: ");

            int key;

            key = Convert.ToInt32(Console.ReadLine());

 

            if (key == 1)

            {

               insert(skl);         

               key = 0;

            }

            if (key == 2)

            {

               Print(skl);

               key = 0;

            }

            if (key == 3)

            {

               Console.WriteLine("Введите номер товара");

               int num = Convert.ToInt32(Console.ReadLine());

               if (byNum(skl, num) != null)

               {

                  Store s = byNum(skl, num);

                  Console.WriteLine("Номер товара: {0} Название товара: {1} Кол-во на складе: {2} Дата поставки: {3} \n", s.Number, s.Name, s.Count, s.Date);

               }

               else

                  Console.WriteLine("Товар с таким номером  отсутствует на складе");

               key = 0;

            }

            if (key == 4)

            {

               Console.WriteLine("Введите номер товара");

               string num = Console.ReadLine();

               if (byName(skl, num) != null)

               {

                  Store s = byName(skl, num);

                  Console.WriteLine("Номер товара: {0} Название товара: {1} Кол-во на складе: {2} Дата поставки: {3} \n", s.Number, s.Name, s.Count, s.Date);

               }

               else

                  Console.WriteLine("Товар с таким названием  отсутствует на складе");

               key = 0;

            }

            if (key == 5)

               break;

            Console.ReadLine(); // пауза

         }        

      }

     

      // функция добавления товара на склад

      static void insert(List<Store> skl)

      {

         Console.WriteLine("Номер товара: ");

         int Num = Convert.ToInt32(Console.ReadLine());

         Console.WriteLine("Название товара: ");

         string Name = Console.ReadLine();

         Console.WriteLine("Кол-во на складе: ");

         int Count = Convert.ToInt32(Console.ReadLine());

         Console.WriteLine("Дата поставки: ");

         int Date = Convert.ToInt32(Console.ReadLine());

 

         skl.Add(new Store(Num, Name, Count, Date)); // Добавляем в список

      }

 

      // Функция выводит все товары

      static void Print(List<Store> skl)

      {

        

         foreach (Store s in skl)

         {

            Console.WriteLine("Номер товара: {0} Название товара: {1} Кол-во на складе: {2} Дата поставки: {3} \n",s.Number,s.Name,s.Count,s.Date);

         }

      }

 

      // Функция возвращает обьект Store по номеру товара

      static Store byNum(List<Store> skl, int num)

      {

         foreach (Store s in skl)

         {

            if (s.Number == num)

               return s;                       

         }

         return null;

      }

 

      // Функция возвращает обьект Store по названию товара

      static Store byName(List<Store> skl, string name)

      {

         foreach (Store s in skl)

         {

            if (s.Name == name)

               return s;

         }

         return null;

      }

   }

 

   class Store

   {

      public Store(int number,string name, int count, int date)

      {

         Number = number;

         Name = name;

         Count = count;

         Date = date;

      }

      public int Number; // Номер товара

      public string Name; // Название товара

      public int Count; // Кол-во товара на складе

      public int Date; // дата поставки

   }

}

 

 

 

 

 

 

 

 

Лабораторная работа №4

Разработка программ в оконном режиме. Формы

 

Постановка  задачи:

Написать программу, содержащую сведения о команде спортивных соревнований: команда, название, игроки. Использовать экранную  форму.

 

 

Результат:

 

 

 

Form1.cs

 

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;

using System.IO;

 

namespace laba_komandi

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

 

        private void button1_Click(object sender, EventArgs e)

        {

            Form2 f = new Form2();

            if (f.ShowDialog() == DialogResult.OK)

            {

                MessageBox.Show("Готово");

            }

        }

 

        private void button2_Click(object sender, EventArgs e)

        {

            string content = File.ReadAllText("teams.txt");

            content = content.Replace("‼", " - Результат: ");

            textBox1.Text = content;

        }

    }

}

 

Form1.Designer.cs

 

namespace laba_komandi

{

    partial class Form1

    {

        /// <summary>

        /// Требуется переменная конструктора.

        /// </summary>

        private System.ComponentModel.IContainer components = null;

 

        /// <summary>

        /// Освободить все используемые  ресурсы.

        /// </summary>

        /// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>

        protected override void Dispose(bool disposing)

        {

            if (disposing && (components != null))

            {

                components.Dispose();

            }

            base.Dispose(disposing);

        }

 

        #region Код, автоматически созданный конструктором форм Windows

 

        /// <summary>

        /// Обязательный метод для поддержки  конструктора - не изменяйте

        /// содержимое данного метода  при помощи редактора кода.

        /// </summary>

        private void InitializeComponent()

        {

            this.button1 = new System.Windows.Forms.Button();

            this.button2 = new System.Windows.Forms.Button();

            this.textBox1 = new System.Windows.Forms.TextBox();

            this.SuspendLayout();

            //

            // button1

            //

            this.button1.Location = new System.Drawing.Point(12, 12);

            this.button1.Name = "button1";

            this.button1.Size = new System.Drawing.Size(140, 23);

            this.button1.TabIndex = 0;

            this.button1.Text = "Добавить команду";

            this.button1.UseVisualStyleBackColor = true;

            this.button1.Click += new System.EventHandler(this.button1_Click);

            //

            // button2

            //

            this.button2.Location = new System.Drawing.Point(158, 12);

            this.button2.Name = "button2";

            this.button2.Size = new System.Drawing.Size(166, 23);

            this.button2.TabIndex = 1;

            this.button2.Text = "Показать список команд";

            this.button2.UseVisualStyleBackColor = true;

            this.button2.Click += new System.EventHandler(this.button2_Click);

            //

            // textBox1

            //

            this.textBox1.Location = new System.Drawing.Point(12, 41);

            this.textBox1.Multiline = true;

            this.textBox1.Name = "textBox1";

            this.textBox1.ReadOnly = true;

            this.textBox1.Size = new System.Drawing.Size(508, 244);

            this.textBox1.TabIndex = 2;

            //

            // Form1

            //

            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);

            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;

            this.ClientSize = new System.Drawing.Size(532, 297);

            this.Controls.Add(this.textBox1);

Информация о работе Изучение среды разработки MS Visual Studio С#. Классы