IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> задачка про конкурс в Москве., помогите решить до завтра
Nfsmaster
сообщение 9.02.2006 10:59
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 26
Пол: Мужской
Реальное имя: Денис

Репутация: -  0  +


конкурс песни в Москве. Там выступают 10 участников. каждый пел по 3 песни: новую песню о Москве, старую песню о Москве и песню московского композитора. каждая песня оценивалась жюри сообща целым числом из 10 баллов и выводился средний балл все 3 песен(вещественное число) Эти 4 результата выявлялись на табло кроме того зрители в зале отдавали артисту какое-либо место и это было 5 результатом. зрители конкурса после выступления в течении 5 минут могли позвонить дежруному и отдать свой голос. при подведении итогов подсчитывалось общее число позвонивших в течении концерта и расчитывался округленный до целого процент голосов телезрителей отданных каждому участнику который являлся 6 результатом. артист являлся победителем конкурса если: а) средний былл жюри не нижу 6 б) место определенное зрителями не больше пятого в) кол=во % позвонивших телезрителей не ниже семи. если артист становился победителем он получал приз от мэра, если новая песня о москве составляет не менее 30% от суммы баллов за 3 песни.


--------------------
Человек придумавший колесо был дураком, а человек придумавший остальные три был ГЕНИЕМ!:)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
klem4
сообщение 9.02.2006 17:41
Сообщение #2


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


В моем представлении это выглядит следующим образом, пока без вывода тыблицы на экран, и надо потестировать еще

uses crt;
const
n = 3;
m = 3;
type

TSinger = record
songs : array [1..m] of byte; // old, new, compose
sr : single;
usersPos : byte;
usersPrs : byte;
end;

TTable = array [1..n] of TSinger;

procedure ReadTable(var T : TTable; usrs : word);
var
i,j : byte;
onePrs : single;
begin
onePrs := usrs / 100;
for i := 1 to n do
with T[i] do begin
writeln('Артист N ',i);
writeln;
sr := 0;
writeln('Введите оцники за старую, новую, и песню М. копозитора о Москве :');
for j := 1 to m do begin
write('points[',j,']='); readln(songs[j]);
sr := sr + songs[j];
end;

writeln;

sr := sr / m;

write('На какое место артиста определила публика : '); readln(usersPos);

if usrs > 0 then begin
write('Сколько человек проголосовало по телефону : '); readln(usersPrs);
usrs := usrs - usersPrs;
usersPrs := round(usersPrs / onePrs);
end
else usersPrs := 0;
writeln;
end;
end;

function FindWinner(T : TTable) : byte;
var
i,j : byte;
win : boolean;
begin
win := false;
FindWinner := 0;
i := 1;
while (i <= n) and not(win) do
with T[i] do begin
win := true;
win := (sr > 6);
if win then begin
win := (usersPos <= 5);
if win then win := (usersPrs >= 7);
end;
if not(win) then inc(i) else FindWinner := i;
end;
end;

function GetPrize(T : TTable; win : byte) : boolean;
var
all,j : byte;
prs : byte;
prize : boolean;
begin
all := 0;
with T[win] do begin
for j := 1 to m do
all := all + songs[j];
prize := ((all / 100) * songs[2] >= 30);
end;
end;

var
Table : TTable;
users : word;
winner : byte;

begin

clrscr;

write('Сколько зрителей пишло на концерт :'); readln(users);

ReadTable(Table, users);

winner := FindWinner(Table);

if winner <> 0 then begin
write('Победитель - участник N ',winner);
if GetPrize(Table, winner) then write(' и он получает приз мэра');
end;

readln;
end.


Сообщение отредактировано: volvo - 2.11.2006 18:48


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Nfsmaster   задачка про конкурс в Москве.   9.02.2006 10:59
volvo   Ну, и где, собственно вопрос? Информации много, а ...   9.02.2006 11:04
Nfsmaster   в том то и дело что вопроса нет а я и решить то и ...   9.02.2006 11:12
Altair   То, что там написанно - "сказка", ...   9.02.2006 11:23
Nfsmaster   алгоритмы обработки? это что? :mega_chok:   9.02.2006 11:34
volvo   Nfsmaster, тебе же сказали, твой пост пока напомин...   9.02.2006 11:39
Nfsmaster   мдяяя...с удовольствием если бы знал...   9.02.2006 11:45
Гость   nfsmaster - я ну может тама надо узнать кто победи...   9.02.2006 15:51
Altair   Поверь, нам все равно, что там надо узнать. Это т...   9.02.2006 15:57
Гость   мне бы хотя бы что-то. еще и по екселю задали таку...   9.02.2006 16:00
Altair   да ты понимашь, мы бы рады чем то помочь, мы здес...   9.02.2006 16:01
Гость   понимаю. ну ладно. пусть будет мой первый вариант....   9.02.2006 16:05
Altair   Для начала вот тебе таблица, показывающая модель д...   9.02.2006 16:34
klem4   В моем представлении это выглядит следующим образо...   9.02.2006 17:41


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 12.08.2025 8:43
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"