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

ТЕМА Розробка програми на базі класів та об~єктів Виконав

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

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

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

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

от 25%

Подписываем

договор

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

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

ЖИТОМИРСЬКИЙ ВІЙСЬКОВИЙ ІНСТИТУ ім. С.П. КОРОЛЬОВА

НАЦІОНАЛЬНОГО АВІАЦІЙНОГО УНІВЕРСИТЕТУ

Кафедра  №  9

ЗВІТ

з лабораторної роботи № 6

з навчальної дисципліни ТЕХНОЛОГІЇ ПРОГРАМУВАННЯ

МОДУЛЬ 6. Об’єктно-орієнтоване програмування в С#

ТЕМА. Розробка програми на базі класів та об’єктів

Виконав                                              студент 301 групи Шевчук А.В.

Перевірив                                           ст.викл.каф.№9 Томашевський В.В.

 

Мета: надати студентам практичних навичок в основах технології НЕТ програмування, ознайомитися з основами синтаксису мови Сі шарп, способами створення класів та об’єктів, їх конструкцією, основними компонентами, способами використання. Дослідити процес створення програмного забезпечення на основі об’єктно-орієнтоване підходу програмування.

Завдання на лабораторну роботу

Розробка програми на базі класів та об’єктів – кожний клас, що розробляється, повинен, як правило, містити наступні елементи: приховані поля, конструктори з параметрами і без параметрів, методи; властивості, індексатори; переобтяження операцій. Функціональні елементи класу повинні забезпечувати несуперечливий, повний, мінімальний і зручний інтерфейс класу. Виключення наявними бути повинні.

Варіант 8

Написати клас, що реалізовує тип даних «матриця дійсних чисел» і роботу з ними.

Клас повинен реалізовувати наступні операції над матрицями:

  1.  Складання, віднімання(як  з іншою матрицею так і з числом)
  2.  Операції порівняння на рівність/нерівність
  3.  Операції обчислення транспонованої матриці
  4.  Доступ до елементу по індексах

Написати ПО, що демонструє всі розробленні елементи класу.


Текст програми

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace ConsoleApplication1

{

   class matrix

   {

    public   int aaaaaaaa=0, bbbbbbbbb=0;

       int [,] now ;int[,] m; bool s = true;

       public matrix ()

       {

           Console.Write("Vvedite razmernost masiva\n");

           Console.WriteLine("Vvedite kol riadkov");

           aaaaaaaa = int.Parse(Console.ReadLine());

           Console.WriteLine("Vvedite kol stolbcov");

           bbbbbbbbb = int.Parse(Console.ReadLine());

           m = new int[aaaaaaaa,bbbbbbbbb];

       }

       public void zap(){

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

               for (int j = 0; j < bbbbbbbbb; j++) m[i, j] = Convert.ToInt32(Console.ReadLine());

               }

       public void vuv(){

           for (int i = 0; i < aaaaaaaa; i++){Console.WriteLine ("\n");

               for (int j = 0; j < bbbbbbbbb; j++) Console.Write("\t"+m[i,j]);

               }}

       public static matrix operator +(matrix a, matrix b)

       {

           for (int i = 0; i < a.aaaaaaaa; i++)

               for (int j = 0; j < a.bbbbbbbbb; j++)

                   a.m[i, j] += b.m[i, j];

           

           return a; }

       public static matrix operator +(matrix m, int b)

       {

           for (int i = 0; i <m.aaaaaaaa; i++)

               for (int j = 0; j < m.bbbbbbbbb; j++)

                   m.m[i, j] += b; return m;

       }

       public static matrix operator -(matrix a, matrix b)

       {

           for (int i = 0; i < a.aaaaaaaa; i++)

               for (int j = 0; j < a.bbbbbbbbb; j++)

                   a.m[i, j] += b.m[i, j];

           return a;

       }

       public static matrix operator -(matrix m, int b)

       {

           for (int i = 0; i < m.aaaaaaaa; i++)

               for (int j = 0; j < m.bbbbbbbbb; j++)

                   m.m[i, j] -= b; return m;

       }

       public void srav(matrix b)

       {

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

               for (int j = 0; j <bbbbbbbbb; j++)

               {

                   if (m[i, j] != b.m[i, j]) s = false;

                   break;

                  

               }

           Console.WriteLine("\nEsli vuvoditsa 'false' to matrici ne ravni\nEsli vivoditsa 'true' to matrici ravni\n\n\n     " + s.ToString());

       }

       public void trans()

       {

            now = new int[bbbbbbbbb,aaaaaaaa];

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

                for (int j = 0; j < bbbbbbbbb; j++) now[i, j] = m[j, i];

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

            {

                Console.WriteLine("\n");

                for (int j = 0; j < bbbbbbbbb; j++) Console.Write("\t" + now[i, j]);

            }

         }

       public int[] this[int i,int j]

       {

           get

           {

               if (i < 0 && j < 0 || i>aaaaaaaa&& j>bbbbbbbbb) throw new Exception("Введіть коректний індекс");

               else

               {

                   int[]mas={m[i,j]};

                   return mas;

               }

           }

           set

           {

               if (i < 0 && j < 0 || i > aaaaaaaa && j > bbbbbbbbb) throw new Exception("Введіть коректний індекс");

               else

               { int[] mas = value;

               }

           }

       }

   }

}

   class Program

   {

       static void Main(string[] args)

       {

           matrix m = new matrix();

           matrix n = new matrix();

           m.zap();

           Console.WriteLine();

           n.zap();

           Console.WriteLine("\nVvedena matrica");

           m.vuv();

           Console.WriteLine("\nVvedena matrica");

           n.vuv();

           Console.WriteLine();

           m.srav(n);

           Console.WriteLine();

           m += n;

           Console.WriteLine("\nMatrica posle dobavlenia drugoi matrici");

           m.vuv();

           Console.WriteLine();

           

           m += 5;

           Console.WriteLine("\nMatrica posle dobavlenia chisla");

           m.vuv();

           Console.WriteLine();

           Console.WriteLine("\nMatrica posle transponovki");

           m.trans();

           Console.WriteLine("\nВведите номера желаемого ;) елемента :");

           int ol, lo;

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

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

           Console.WriteLine("element=" + m[ol, lo][0]);           

           Console.ReadLine();

       }

   }


Ескіз роботи

Висновок

Було розроблено програма, яка включає в себе клас для роботи з одновимірними масивами (див. умову). В ході написання було отримано розуміння структури класу та його складових. Поставлене завдання було виконано.




1. ГОРЯЧИХ ТОЧЕК НА БАЛКАНАХ В.
2. Расчет приемника наземной обзорной РЛС
3. задание для 11 класса на 12 декабря
4. Об общих началах местного самоуправления и местного хозяйства в СССР
5. Уфимский государственный нефтяной технический университет Филиал ГОУ ВПО УГНТУ в г
6. Гендерные особенности рекламы на предприятиях сферы сервиса1
7. ва одна из шести йог Наропы перенос сознания как например перенос сознания из тела в сферу будды Амитабы в
8. Никомахова этика
9. Економіка праці і соціальнотрудові відносини підготувала к.html
10. либо область жизни общества где бы не использовались современные способы обработки и передачи информации