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

На тему- Дослідження опису та використання класів Виконав- с.

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

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

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

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

от 25%

Подписываем

договор

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

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

Міністерство освіти та науки України

Національний Авіаційний Університет

Інститут компютерних технологій

Факультет компютерних наук

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

З дисципліни: «Обєктно орієнтована парадигма»

На тему: «Дослідження опису та використання класів»

 

 Виконав: студент ФКН 106

Матюшко.О.В

Перевірив: Нечай О.С.

Київ 2008

Мета роботи: вивчити опис класів. Навчитися створювати, використовувати та знищувати об’єкти класів.

Завдання:

  1.  Вивчити опис класу в мові програмування С++.
  2.  Вивчити механізми створення використання та знищення об’єктів класів в мові програмування С++.
  3.  Вивчити опис класу в мові програмування С#.
  4.  Вивчити механізми створення використання та знищення об’єктів класів в мові програмування С#.
  5.  Напишіть програму на мові С++ для дослідження опису та використання класу.
  6.  Напишіть програму на мові С# для дослідження опису та використання класу.
  7.  

№ варіанта

Опис класу

Завдання

Клас

Опис складових членів

15

С++

Рядки

Значення рядка (символи), конструктор з параметрами, деструктор, метод обчислення довжини, метод зсуву рядка праворуч на один символ (тобто останній символ на перше місце), метод виведення рядка

Описати клас, об’єкт; вивести рядок; обчислити та вивести довжину

11

С#

Відрізки

Координати початку та кінця, конструктор з параметрами, деструктор, методи обчислення довжини та кута між віссю ОY, метод виведення даних

Описати клас, об’єкт; вивести дані об’єкту; обчислити і вивести довжину та кут з віссю ОХ

C++

class String

{

private:

char* str;

int length;

 

void calcLength();

public:

String(char*);

~String();

void sortString();

int getLength();

void show();

};

#include <iostream>

#include "lab1.h"

using namespace std;

void main()

{

char* temp = "Sasha";

String myStr(temp);

cout<<"Length:"<<myStr.getLength()<<endl;

myStr.show();

myStr.sortString();

myStr.show();

}

#include "lab1.h"

#include <iostream>

String::String(char* tempStr)

{

str = new char();

str = tempStr;

calcLength();

}

String::~String()

{

std::cout<<"Delete String"<<std::endl;

}

void String::calcLength()

{

int i;

for(i = 0; str[i] != '\0'; i++);

length = i;

}

void String::sortString()

{

char temp[256];

char tmp;

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

{

 temp[i] = str[i];

}

temp[length] = '\0';

for(int i =length-1; i>=0; i--)

{

  tmp = temp[length];

  temp[i+1] = temp[i];

   }

temp[0] = tmp;

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

{

 std::cout<<temp[i];

}

std::cout<<std::endl;

}

int String::getLength()

{

return length;

}

void String::show()

{

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

{

 std::cout<<str[i];

}

std::cout<<std::endl;

}

C#

using System;

using System.Collections.Generic;

using System.Text;

namespace TestConsole

{

   namespace laba_1_11

   {

       class Program

       {

           static void Main(string[] args)

           {

               point a, b;

               

               Console.WriteLine("Please enter coordinate A(x, y, z):");

               Console.Write("Ax :");

               a.x = (int.Parse(Console.ReadLine()));

               Console.Write("Ay :");

               a.y = (int.Parse(Console.ReadLine()));

               Console.Write("Az :");

               a.z = (int.Parse(Console.ReadLine()));

               Console.WriteLine("Please enter coordinate B(x, y, z):");

               Console.Write("Bx :");

               b.x = (int.Parse(Console.ReadLine()));

               Console.Write("By :");

               b.y = (int.Parse(Console.ReadLine()));

               Console.Write("Bz :");

               b.z = (int.Parse(Console.ReadLine()));

               coordinate myCoordinate = new coordinate();

               

               double forSide = Math.Pow((Math.Pow((a.x - b.x),2) + Math.Pow((a.y - b.y),2) + Math.Pow((a.z - b.z),2)),0.5);

               myCoordinate.setSide(forSide);

               double forCorner = (a.y-b.y)/ myCoordinate.getSide();

               double forCorner1 = Math.Acos(forCorner) * (180 / 3.141592653558);

               myCoordinate.setCorner(forCorner1);

               Console.Write("Side  :\t" + myCoordinate.getSide());

               Console.Write("\nCorner:\t" + myCoordinate.getCorner());

               

               int f;

               f = Console.Read();

           }

       }

   }

   //-----------------------

   namespace laba_1_11

   {

       struct point

       {

           public int x;

           public int y;

           public int z;

       }

   }

   //----------------------

   namespace laba_1_11

   {

       class coordinate

       {

           private double side;

           private double corner;

           public coordinate()

           {

           }

           ~coordinate()

           {

           }

           public void setSide(double _side)

           {

               side = _side;

           }

           public double getSide()

           {

               return side;

           }

           public void setCorner(double _corner)

           {

               corner = _corner;

           }

           public double getCorner()

           {

               return corner;

           }

       }

   }

}

Висновок. В даній лабораторній роботі я навчився описувати класи, створювати, використовувати та знищувати об’єкти класів.




1. реферат дисертації на здобуття наукового ступеня кандидата біологічних наук Ялта 2007
2. реферат дисертації на здобуття наукового ступеня кандидата педагогічних наук Харків ~
3. Информационное общество общество особое не известное истории
4. Геоінформаційні системи як системи вивчення аналізу та оцінки впливу екологічних факторів на навколишнє середовище
5. Электрические цепи постоянного и переменного тока.html
6. Славянские вертикали 2014 1
7. Договор строительного подряда в Российской Федерации
8. Лабораторная работа- Определение внешних спецификаций программ с помощью HIPO-технологии
9. Понятие опасностей в жизнедеятельности человека
10. О некоторых вопросах государственной регистрации юридических лиц