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

Инициализация класса, возврат значений - C++

Восстановить пароль Регистрация
Другие темы раздела
C (СИ) Реверс строки http://www.cyberforum.ru/cpp-beginners/thread1494890.html
#include <stdio.h> #define MAXLINE 1000 int getline(char line, int lim); void reverse(char from, int lim); main() { int i, p; int len; char line;
C++ После выполнения (завершения) функции test переменная умрет, а что будет с переменной в Result? class abc { public: int argc; char **argv; char **azColName; }; std::list<abc> Result; http://www.cyberforum.ru/cpp-beginners/thread1494884.html
Задача по ООП C++
Помогите решить задачу. Есть следующий набор типов документов: 1. Паспорт. Атрибуты: Фамилия, Имя, отчество, Номер, Серия, Дата выдачи. 2. Свидетельство о регистрации брака. Атрибуты: Дата регистрации, Орган регистрации, Паспорт мужа, Паспорт Жены. Написать программу по вводу и редактированию этих данных. Использовать ООП. В программе (БД) должно быть предусмотрено, что...
C++ Ошибка: Run-Time Check Failure #3 - The variable 'i' is being used without being initialized
в чём ошибка (просьба подправить) #include "stdafx.h" #include <math.h> #include <iostream> #include <fstream> using namespace std; int factorial(int n) { int result = 1; for ( int i = 2; i <= n; i++ ) {
C++ Сохранение файла под указанным пользователем именем http://www.cyberforum.ru/cpp-beginners/thread1494875.html
у меня есть функция, которая сохраняет редактируемый файл и выходит: void shift_f10(char *filename) { FILE *f1; /*Редактируемый файл*/ int i,j; /*Счетчики*/ unsigned char buf; /*Буферная строка для считывания из файла*/ WORD attrib; /*Атрибуты ячеек экранного буфера*/ COORD position; /*Кординаты начала вывода (атрибутов)*/ DWORD numattrib; /*Количество...
C++ Объясните пожалуйста объявление функции вне main #include <iostream> #include <string> bool poly(std::string str) { unsigned int k = str.length(); for(unsigned int i = 0; i < str.length() / 2; ++i) { if(str != str) return false; --k; подробнее

Показать сообщение отдельно
Vodmis
1 / 1 / 0
Регистрация: 18.10.2012
Сообщений: 15
07.07.2015, 20:17     Инициализация класса, возврат значений
Сама задача:
Реализовать класс Rectangle. Класс должен хранить координаты, а так же длину и ширину прямоугольника. Предусмотреть инициализацию данного класса через конструктор по умолчанию и с помощью координат двух противоположных вершин. Общими должны быть методы, которые возвращают координаты прямоугольника (x1, x2, y1, y2), длину, ширину, площадь, а также методы позволяющие изменять координаты, длину и ширину прямоугольника и выполнять масштабирование.

Как сделать инициализацию класса через конструктор по умолчанию и с помощью координат двух противоположных точек?
И метод для возвращения данных правильный?


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
#include <stdio.h>
#include <conio.h>
#include <math.h>
using namespace std;
class rectangle
{ private:
    int x1,x2,y1,y2,length,width,square;
public:
    rectangle ();
    void vivod();
    void change (int a1,int b1,int a2,int b2);
    void mashtab(int k);
    void dw(int d,int w);
    int getzn();
    };
    rectangle::rectangle()
    {
        x1=4;
        y1=5;
        x2=-4;
        y2=-5;
        length=x1-x2;
        width=y1-y2;
    }
    void rectangle::vivod ()
    {
      square=length*width;
      printf ("\nKoordinati pryamoygolnika \nx1=%d\ny1=%d\nx2=%d\ny2=%d",x1,y1,x2,y2);
      printf ("\nDlina=%d\nShirina=%d\nPloshad dannogo pryamoygolnika=%d\n",length,width,square);
    }
   void rectangle::change (int a1,int b1,int a2,int b2)
   {
  x1=a1;
  y1=b1;
  x2=a2;
  y2=b2;
length=x1-x2;
 width=y1-y2;
}
void rectangle::mashtab(int k)
{
length=length*k;
width=width*k;
x2=x1+length;
y2=y1+width;
}
void rectangle::dw(int d,int w)
{
    length=d;
    width=w;
    x2=x1+length;
    y2=y1+width;
}
int rectangle::getzn()
{
    return x1, x2, y1, y2, length, width, square;
}
int main()
{  int a1,b1,a2,b2,k,d,w,square;
    rectangle newRec;
    newRec.vivod();
    printf ("\nVvedite svoi dannie x1,y1,x2,y2:\n");
    scanf ("%d %d %d %d",&a1,&b1,&a2,&b2);
    newRec.change(a1,b1,a2,b2);
    newRec.vivod();
    printf ("\nVvedite novoe znacheniya d=\n");
    scanf ("%d",&d);
    printf ("Vvedite novoe znacheniya w=\n");
    scanf ("%d",&w);
     newRec.dw(d,w);
     newRec.vivod();
    printf ("\nVvedite koefficent mastabirovaniya:\n");
    scanf ("%d",&k);
    newRec.mashtab(k);
    newRec.vivod();
    getch();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru