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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2009, 10:07   #1
mistermakc
 
Регистрация: 24.01.2009
Сообщений: 4
По умолчанию Уважаемые, помогите пожалуйста с такой задачкой

Используя ООП, опишите выборы. Пример объекта:кандидат
фамилия кандидата и количество набранных голосов).
Всего избирателей 2000. Составить метод, определяющий,
избран ли кто-нибудь из кандидатов или необходимо проводить
повторные выборы
(должно быть набрано 1/3 голосов от общего количества).
Дополнительные свойства и методы объектов приветствуются
mistermakc вне форума Ответить с цитированием
Старый 03.06.2009, 10:51   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Показывай что сам сделал.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.06.2009, 11:23   #3
mistermakc
 
Регистрация: 24.01.2009
Сообщений: 4
По умолчанию

над этим нужно еще работать... но увы уже не знаю что (

Program Pr_2;
type
TChelovek = object
Name:string;

Procedure load (n:string);
end;
Tkandidat = object (TChelovek)
golos:real;
Procedure load (n:string;g:integer);
function Getgolos:real;

end;
procedure TChelovek.load;
begin
name:=n;
end;

procedure TKandidat.load;

begin
TChelovek.load (n);
inherited load (n);
golos:=g;
end;
function TKandidat.Getgolos:real;
var
GetG:real;
begin
GetG:=golos;
if GetG > (1/3*2000) then writeln ('Proshel') else writeln ('Ne proshel');
end;
var
k:TKandidat;
n:string; g:integer;

Begin
write ('Familia kandidata: ');readln(n);
write ('Golosa: ');readln(g);
k.load (n,g);
k.GetGolos;
readln;
End.
mistermakc вне форума Ответить с цитированием
Старый 03.06.2009, 12:21   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну начало логичное.
Теперь так:
Код:
Vibory=object
 Kandidaty:array[<Тут сколько кандидатов>] of TKandidat
 Function Proverka:Boolean
end;

 Function Vibory.Proverka:Boolean
var i:byte;
begin
 Proverka:=false;
 for i:=0 to Колво-кандидатов do
  if Kandidaty[i].golos<>0 then begin
   Proverka:=true;
   Exit;
  end;
end;
т.е. Оформляем массив (или потом список сделай) кандидатов, Создаем есстесственно их (это сам сделаешь), даем каждому голоса.
И этой функой проверяем - Если у всех кандидатов голоса 0 то вернет False иначе True.

Смысл ясень?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.06.2009, 16:58   #5
mistermakc
 
Регистрация: 24.01.2009
Сообщений: 4
По умолчанию

спасибо большое, теперь понятно
mistermakc вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Уважаемые ТОВАРИЩИ! ПОМОГИТЕ ПОЖАЛУЙСТА! Роман91 Паскаль, Turbo Pascal, PascalABC.NET 3 15.05.2009 11:02
Помогите пожалуйста с задачкой yogupt Помощь студентам 2 14.05.2009 18:05
Уважаемые программисты помогите пожалуйста Paul_AG Общие вопросы C/C++ 10 28.03.2009 21:56
Уважаемые программисты, помогите пожалуйста, с чего начать? irbiss Свободное общение 2 30.03.2008 19:53