пятница, 3 апреля 2015 г.

Задача 3. Классы в С/С++. (Делай с нами! Шаг 1)



Сообщение для всех, кто не сдал задачу №3! Делайте параллельно другим задачам вместе со мной! Кстати, задачу №2 можно делать аналогично.

Задание 3.   

1)      Основательно изучите лекционный материал. Обратите внимание на примеры реализации классов.
2)      Напишите программу, реализующую Вашу задачу. При этом:

a)      Спроектируйте (опишите) класс.
b)      Описание класса сделать в заголовочном файле, описание методов и функцию main- в двух других файлах.
c)      После вызова конструктора обязательно вызовите метод, печатающий значения полей (для проверки)
d)      В функции  main определите несколько объектов (экземпляров класса). Продемонстрируйте решение задачи, во-первых, только с помощью вызова различных методов объекта (объектов) и, во-вторых, с помощью друга класса. 


Пробуем новую методику разработки задачи:

  • Я буду показывать действия маленькими шагами на своей задаче.
  • А вы делаете то же действие в своей задаче и публикуете на странице  Консультации: задачи по теме "Классы"
  • Я комментирую, отвечаю на вопросы, исправляю ошибки.
  • Проходим следующий шаг. И т.д.  


Итак, шаг 1.
Моя задача очень похожа на ваши:
"Описать класс круг с центром в точке (х0,у0) и радиусом R. Методы: расчет периметра и площади. Друг класса определяет, пересекаются ли два круга."

1. Внимательно читаем задачу и выявляем данные класса: у меня это данные для круга x,y,R и данные, которые нужно рассчитать: P и S. Определяем тип: у меня все -действительные.
2. Для начала мы напишем только две функции класса: конструктор и метод Show для печати на экран. Причем:
  • Конструктор называется как класс и его имя не имеет типа.Запланируем для него параметры, которые зададут начальные значения данных x,y,R
  • Метод Show бестиповый и параметров не имеет.
3.Создаем пустой проект (консольное приложение). Добавляем в него заголовочный файл:
#include <iostream>
using namespace std;

class Krug
{
    float x,y,R,P,S;
    public:
    Krug(float x0,float y0,float R0);
    void Show(void);
};

4. Добавляем в проект файл .cpp, в котором будет описание функций:
#include "Kl.h"
Krug::Krug(float x0,float y0,float R0)
  {  x=x0; y=y0; R=R0;}

 void Krug:: Show(void)
 {cout<<"Show";}

5. Добавляем в проект файл с функцией main c описанием двух объектов в виде вызова конструктора

#include "Kl.h"
void main()
{
Krug o1(1,2,3),o2(4,5,6);
}

6.Строим проект, исправляем синтаксические ошибки, запускаем проект.
Если всё нормально, программа запустится, но на экран ничего не выдаст.

Конец Шага 1.
Можно задавать вопросы.

Жду отчетов на странице Консультации: задачи по теме "Классы"

Комментариев нет:

Отправить комментарий