Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.12.2011, 11:11   #1
Alexar Makken
Пользователь
 
Регистрация: 15.11.2010
Сообщений: 19
Печаль Создание класса "Число" и методов

Определите класс Число, хранящий в поле данных целое число. Для этого класса реализуйте метод, выводящий в зависимости от знака (+ или ‑) этого числа результат 0 (отрицательный) или 1 (положительный). Реализуйте также метод Sum так, чтобы при сложении объекта с целым числом значе*ния поля данных увеличивалось на это число, а при сложении объек*та с другим объектом этого же класса поле данных уменьшалось. Осуществить проверку всех методов.

Не могу понять как реализовать метод Sum. Вот наработки:
Код:
unit Unit1;
 
interface
type
TNumber = class
fCn: integer;
constructor Create(Cn:integer);
function Proverka:byte;
function Sum:integer;
end;
implementation
 
uses Unit2;
constructor TNumber.Create(Cn:integer);
  begin
    fCn:= Cn;
  end;
function TNumber.Proverka:byte;
begin
  if fCn>0 then
  Result:=1
  else Result:=0;
end;
function TNumber.Sum:integer;
 
end.
Alexar Makken вне форума Ответить с цитированием
Старый 05.12.2011, 11:33   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Код:
TNumber = class
fCn: integer;
constructor Create(Cn:integer);
function Proverka:byte;
procedure Sum(addvalue:integer); overload; 
// чтобы при сложении объекта с целым числом значе*ния поля данных увеличивалось на это число
procedure Sum(decvalue: TNumber); overload;
// а при сложении объек*та с другим объектом этого же класса поле данных уменьшалось
end;
overload указание компилятору что ДВА ОДИНАКОВЫХ имени (Sum) это нормально.
Ну и написать реализацию обоих методов.
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 05.12.2011, 12:27   #3
Alexar Makken
Пользователь
 
Регистрация: 15.11.2010
Сообщений: 19
По умолчанию

Спасибо!
Хотел ещё спросить вот задал методы, правильно или нет:
Код:
procedure TNumber.Sum(addvalue:integer);
begin
  fCn:=fCn + abs(addvalue);
end;
procedure TNumber.Sum(decvalue: TNumber);
begin
  fCn:=fCn - abs(decvalue);
end;
Alexar Makken вне форума Ответить с цитированием
Старый 05.12.2011, 13:26   #4
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
Хотел ещё спросить вот задал методы, правильно или нет:
А вы попробуйте
1. скомпилировать (Ctrl +F9).
если ошибок нет, то почти хорошо. можно двигаться дальше.
2. написать тестовое задание(программу) и проверить результаты.
Цитата:
Осуществить проверку всех методов.
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 05.12.2011 в 13:29.
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести название соответствующей карты вида "шестерка бубен", "дама червей","туз треф" и т.п. воваава Помощь студентам 3 01.12.2011 12:50
"Число в p-ичной системе счисления. Перевести число в q-ичную систему" и не только :) Zinder Паскаль, Turbo Pascal, PascalABC.NET 4 10.04.2010 14:20
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
Создание класса "Трехмерный вектор" steel_may Помощь студентам 1 09.05.2009 12:29
Delphi. Создание нового класса, его "предков". Krechet Помощь студентам 0 26.04.2009 15:52