С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
 Аватар для Кир
20 / 20 / 0
Регистрация: 04.03.2010
Сообщений: 130

Использование интерфейсов

01.03.2011, 19:21. Показов 1776. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Реализовать иерархию классов из индивидуального задания. Определить и использовать интерфейс IFigure (Фигура). В интерфейс включить методы вычисления площади (если это возможно) и объема (если это возможно) фигуры, а также свойства, связанные с соответствующими данными классов.

Фигура - Точка - Линия - Круг
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.03.2011, 19:21
Ответы с готовыми решениями:

Разработка интерфейсов, использование механизма наследования интерфейсов и применение их в программах
Имеется код, необходимо реализовать, и протестировать эти интерфейсы IComparable (сравнимый), ICloneable (клонируемый). Помогите...

Использование интерфейсов
Реализовать иерархию классов из индивидуального задания. Определить и использовать интерфейс IFigure (Фигура). В интерфейс включить методы...

Использование интерфейсов
Реализовать иерархию классов Фигура - Круг – Квадрат (данные-координаты). Определить и использовать интерфейс IFigure (Фигура). В...

8
Шаровик затейник
 Аватар для Crudelis
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
01.03.2011, 22:05
тут усё есть Использование интерфейсов
0
 Аватар для Кир
20 / 20 / 0
Регистрация: 04.03.2010
Сообщений: 130
03.03.2011, 09:08  [ТС]
вот с точкой с линией как то получилось а вот Круг никак не магу

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace lab_7
{
    public interface IFigura
    {
        double X1 //свойства по x
        {
            set;
            get;
        }
        double Y1 //свойства по y
        {
            set;
            get;
        }
        void vvod(); // метод ввода
        double S(); // метод вычисления площади
        double V(); // метод вычисления объема
    }
    public class Tochka : IFigura
    {
        private double x1;
        // свойства класса Tochka
        public double X1
        {
            set //задаём
            {
                x1 = value;
            }
            get //получаем
            {
                return x1;
            }
        }
        private double y1;
        public double Y1
        {
            set
            {
                y1 = value;
            }
            get
            {
                return y1;
            }
        }
 
        public Tochka(double x1, double y1) //конструктор класса Tochka
        {
            this.x1 = x1;
            this.y1 = y1;
        }
        public void vvod() //определяем метод ввода координат первой точки
        {
            Console.WriteLine("Введите координату точки по х1");
            x1 = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Введите координату точки по y1");
            y1 = Convert.ToDouble(Console.ReadLine());
        }
        public double S() //определяем метод вычисления площади
        {
            return 0;
        }
        public double V() //определяем метод вычисления объёма
        {
            return 0;
        }
        public override string ToString()
        {
            return String.Format("Точка с координатами {X1={0};Y1={1};}", x1, y1);
        }
    }
 
    public class Line : Tochka
    {
        private double x2;
        public double X2
        {
            set
            {
                x2 = value;
            }
            get
            {
                return x2;
            }
        }
        private double y2;
        public double Y2
        {
            set
            {
                y2 = value;
            }
            get
            {
                return y2;
            }
        }
        public Line(double x1, double y1, double x2, double y2)
            : base(x1, y1) //конструктор класса Line
        {
            this.x2 = x2;
            this.y2 = y2;
        }
        public void vvod()
        {
            base.vvod(); //вызываем метод ввода из Tochka
            Console.WriteLine("Введите координату по х2"); //вводим координаты второй точки
            x2 = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Введите координату по y2");
            y2 = Convert.ToDouble(Console.ReadLine());
        }
        public override string ToString() //переопределяем ToString()
        {
            return String.Format("Линия имеет координаты \n(x1={0};y1={1};)\n(x2={2};y2={3};)", X1, Y1, x2, y2);
        }
    }
 
 
    class Program
    {
        static void Main(string[] args)
        {
            Line line = new Line(0, 0, 0, 0); //объявляем экземпляр класса Line
            line.vvod(); //вызываем метод ввода координат из line
            Console.WriteLine(line); //вызываем переопределый метод ToString из line
            Console.ReadKey();
        }
    }
}
Добавлено через 34 минуты
Ну хоть кто подскажите

Добавлено через 2 часа 2 минуты
Помогите !
 Комментарий модератора 
Используйте теги форматирования кода!


Добавлено через 15 часов 19 минут
Неужели никто не может помочь ?
0
Mobile Developer
 Аватар для lifestyle
238 / 234 / 18
Регистрация: 10.05.2009
Сообщений: 917
04.03.2011, 00:12
в чем проблема-то
класс круг нследует линию
один конец лини это центр круга, сама линия-длина линии по сути это радиус вот и все- пиши.
а вообще читай соседний топик и пользуйся поиском на сайте+ выше привели ссылку на подобный топик.
0
Шаровик затейник
 Аватар для Crudelis
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
04.03.2011, 01:35
на всякий случай
0
 Аватар для Кир
20 / 20 / 0
Регистрация: 04.03.2010
Сообщений: 130
04.03.2011, 08:47  [ТС]
Да я всё это пробывал но прога не пашет попробуйте вы очень срочно нада сегодня
0
Mobile Developer
 Аватар для lifestyle
238 / 234 / 18
Регистрация: 10.05.2009
Сообщений: 917
04.03.2011, 10:37
Цитата Сообщение от Кир Посмотреть сообщение
Да я всё это пробывал но прога не пашет попробуйте вы очень срочно нада сегодня
а ты попробуй правильный код написать , с имплементацией и обдумать каждую написаную строку кода. и почитай лдитературу/гугл по интерфейсам-под лежачий камень вода не течет, да и ответы тебе уже дали, а что бы за тебя что то сделали это во фриланс.
0
25 / 25 / 5
Регистрация: 11.11.2009
Сообщений: 56
04.03.2011, 11:04
Примерно так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
using System;
 
namespace ConsoleApplication7
{
    public interface IFigura
    {
        object X1 //свойства по x
        {
            set;
            get;
        }
        object Y1 //свойства по y
        {
            set;
            get;
        }
        void vvod(); // метод ввода
        double S(); // метод вычисления площади
        double V(); // метод вычисления объема
    }
 
    public class Tochka : IFigura
    {
        private double x1;
        // свойства класса Tochka
        public object X1
        {
            set //задаём
            {
                x1 = (double)value;
            }
            get //получаем
            {
                return x1;
            }
        }
        private double y1;
        public object Y1
        {
            set
            {
                y1 = (double)value;
            }
            get
            {
                return y1;
            }
        }
 
        public Tochka(double x1, double y1) //конструктор класса Tochka
        {
            this.x1 = x1;
            this.y1 = y1;
        }
        public Tochka()
            : this(0, 0)
        {
 
        }
 
        public void vvod() //определяем метод ввода координат первой точки
        {
            Console.WriteLine("Введите координату точки по х1");
            x1 = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Введите координату точки по y1");
            y1 = Convert.ToDouble(Console.ReadLine());
        }
        public double S() //определяем метод вычисления площади
        {
            return 0;
        }
        public double V() //определяем метод вычисления объёма
        {
            return 0;
        }
        public override string ToString()
        {
            return String.Format("Точка с координатами {{X1={0};Y1={1};}}", x1, y1);
        }
    }
 
    public class Line : IFigura
    {
        public Line(double x1, double y1, double x2, double y2)
        //конструктор класса Line
        {
            X1 = new Tochka(x1, y1);
            Y1 = new Tochka(x2, y2);
        }
 
        private Tochka x1;
        public object X1
        {
            get { return x1; }
            set { x1 = (Tochka)value; }
        }
 
        private Tochka y1;
        public object Y1
        {
            get { return y1; }
            set { y1 = (Tochka)value; }
        }
 
        public void vvod()
        {
            Console.WriteLine("Введите координаты 1-й точки");
            x1 = new Tochka();
            x1.vvod();
            Console.WriteLine("Введите координаты 2-й точки");
            y1 = new Tochka();
            y1.vvod();
        }
 
        public double S()
        {
            return 0;
        }
 
        public double V()
        {
            return 0;
        }
 
        public override string ToString() //переопределяем ToString()
        {
            return String.Format("Линия имеет координаты \n(x1={0};y1={1};)\n(x2={2};y2={3};)", X1, Y1, x2, y2);
        }
    }
 
    internal class Circle : IFigura
    {
        private Tochka x1;
 
        public object X1
        {
            get { return x1; }
            set { x1=(Tochka) value; }
        }
 
        private double y1;
        public object Y1
        {
            get { return y1; }
            set { y1 = (double) value; }
        }
 
        public void vvod()
        {
            Console.WriteLine("Введите координату центра");
            x1 = new Tochka();
            x1.vvod();
            Console.WriteLine("Введите радиус");
            y1 = Convert.ToDouble(Console.ReadLine());
        }
 
        public double S()
        {
            return 2*Math.PI*y1*y1;
        }
 
        public double V()
        {
            return 0;
        }
    }
 
    class Program
    {
        static void Main(string[] args)
        {
            Line line = new Line(0, 0, 0, 0); //объявляем экземпляр класса Line
            line.vvod(); //вызываем метод ввода координат из line
            Console.WriteLine(line); //вызываем переопределый метод ToString из line
            Console.ReadKey();
        }
    }
}
1
 Аватар для Кир
20 / 20 / 0
Регистрация: 04.03.2010
Сообщений: 130
04.03.2011, 15:32  [ТС]
ExkaliBur: спасибо но вывода нету : всё перепробывал не пашет хот тресни
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.03.2011, 15:32
Помогаю со студенческими работами здесь

Использование интерфейсов C#
нужна помощь необходимо описать правила использования интерфейсов.

Использование интерфейсов
Реализовать иерархию классов. Определить и использовать интерфейс IFigure (Фигура). В интерфейс включить методы вычисления площади (если...

Использование интерфейсов
Реализовать иерархию классов Квадрат – Треугольник. Вместо абстрактного класса определить и использовать интерфейс. В интерфейс включить...

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

Использование интерфейсов и параметризованных коллекций
Интерфейс содержит только сигнатуры методов, свойств, событий или индексаторов. Класс или структура, которые реализуют интерфейс, должны...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru