Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Electrosoul
0 / 0 / 0
Регистрация: 05.12.2011
Сообщений: 9
#1

Классы в С++ - C++

25.05.2012, 19:55. Просмотров 709. Ответов 2
Метки нет (Все метки)

Господа , программисты дано условие :
Создать класс типа - прямоугольник. Поля - высота и ширина. Функции-члены вычисляют площадь, периметр, устанавливает поля и возвращают значения. Функции-члены установки полей класса должны проверять корректность задаваемых параметров. Функция печати.
Программа :

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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
 
 
 
class rectangle
{ 
 private:
 float storona_a;
 float storona_b;
 public: 
 
 rectangle(float _a = 0, float _b=0);
 
 float get_storona_a() { return storona_a; }
 
 float get_storona_b() { return storona_b; }
 
 double get_ploshyad() { return storona_a * storona_b ; }
 
 double get_perimetr() { return 2 * (storona_a + storona_b); }
 
 bool set_storona_a(float _new_storona_a)
 {
     if (_new_storona_a < 0)
     return false;
     storona_a = _new_storona_a;
     return true;
 }
 
 bool set_storona_b(float _new_storona_b)
 {
     if (_new_storona_b < 0)
     return false;
     storona_b = _new_storona_b;
     return true;
 }
 
 
 
 void write_storona_a() { printf ("Storona a: %f \n", get_storona_a()); }
 void write_storona_b() { printf ("Storona b: %f \n", get_storona_b()); }
 
 void write_ploshyad() { printf ("Ploshyad: %f \n", get_ploshyad()); }
 void write_perimetr() { printf ("Perimetr: %f \n", get_perimetr()); }
};
 
rectangle::rectangle(float _a, float _b)
{
 if (_a > 0)
 storona_a = _a;
 else
 storona_a = 0;
 
 if (_b > 0)
 storona_b = _b;
 else
 storona_b = 0;
}
 
int main()
{
 rectangle MyRectangle;
 
 printf("Nachalnoe znachenie \n");
 
 MyRectangle.write_storona_a();
 MyRectangle.write_storona_b();
 
 printf("a = 10 b = 15 \n");
 
 MyRectangle.set_storona_a(10); 
 MyRectangle.set_storona_b(15);
 
 MyRectangle.write_storona_a();
 MyRectangle.write_storona_b();
 
 MyRectangle.write_ploshyad();
 MyRectangle.write_perimetr();
 
 printf(" a = -5 b = -10\n");
 
 MyRectangle.set_storona_a(-5); 
 MyRectangle.set_storona_b(-10);
 
 MyRectangle.write_storona_a();
 MyRectangle.write_storona_b();
 
 MyRectangle.write_ploshyad();
 MyRectangle.write_perimetr();
 
 getch();
}
Условие задачи мне не совсем понятно. Хотел узнать Правильно ли я ее решил. Заранее спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2012, 19:55     Классы в С++
Посмотрите здесь:

Классы в С++ - C++
Ребята, помогите пожалуйста. Я новичок в программировании, а сессия заканчивается. Нужно привести пример класса (С++): описание класса,...

классы с++ - C++
исправьте пожалуста: #include &lt;iostream&gt; using namespace std; class Money { private: long dollar; unsigned char cent; ...

Классы - C++
Всем привет! Очень прошу помочь написать программу на классы, для меня это нереально сложное задание, надеюсь на вас - не оставьте в беде,...

классы - C++
Нужно написать программу с помощью класса Пожалуйста нужна ваша помощь

Классы C++ - C++
Здравствуйте! Хочу обратиться к вам за помощью. Недавно начал изучать С++. Сейчас читаю книгу Дейтелов &quot;Как программировать на C++&quot;. ...

классы - C++
Всем привет!!! Нужна помощь!!! Необходимо описать класс стеки!!! Заранее благодарна за помощь!!!!

Классы!!! - C++
Помогите преобразовать листинг, чтобы получилась нормальная работающая программа!!! По заданию нужно каким-то образом циклы оформить в...

Классы - C++
программа ругается на std::getline подскажите как это исправить. Файл с заданием по которому написана программа и окна с ошибками вложены...

классы - C++
Какими свойствами обладает класс? если можно то своими словами!

Классы - C++
Привет. Помогите пожалуйста с задажей и если можно поскорей.Вот условие: В массиве А(N,M) элементы строк, начинающихся с отрицательного...

классы - C++
объясните, пожалуйста, как это можно реализовать: Один класс является основным, остальные — вспомогательные. Вспомогательные классы...

Классы - C++
Привет всем программистам. Вот уже полгода учу С++ и как бы все было относительно понятно (почти))), но вот щас дошел до классов и ничерта...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DU
1480 / 1056 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
25.05.2012, 20:41     Классы в С++ #2
ну можно сказать, что все правильно.
единственное, все методы, которые не меняют состояние класса желательно сделать константными. это все get и write функции.
можно еще добавить тотальную функцию write, которая бы печатала все параметры прямоугольника. чтобы не писать в мэине несколько штук. проще сразу одну позвать.
MrGluck
Модератор
Эксперт CЭксперт С++
7000 / 4171 / 595
Регистрация: 29.11.2010
Сообщений: 11,074
25.05.2012, 20:58     Классы в С++ #3
Ну, во-первых, классы - это С++, а ты используешь ввод/вывод с С-ей. Во-вторых, библиотеки также надо использовать с С++. В третьих, полу-русские - полу-английские слова не есть хорошо. Сторона - side. Мы же не говорим Я тебя Love.
Ну а те, кто говорят -
горите в аду, маргиналы!
Название: post-44-13356890618501.jpg
Просмотров: 97

Размер: 23.9 Кб
Yandex
Объявления
25.05.2012, 20:58     Классы в С++
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru