|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.10.2008, 23:26 | #1 |
Пользователь
Регистрация: 24.10.2008
Сообщений: 32
|
проверьте моё решение
вот условие а ниже моё решение
проверьте Имя входного файла: a.in Имя выходного файла: a.out Максимальное время работы на одном тесте: 1 секунда Максимальный объем используемой памяти: 64 мегабайта В настольном теннисе в результате каждой подачи разыгрывается одно очко. Подача переходит от игрока к игроку каждые 5 подач, т.е. первые пять раз подает первый игрок, затем 5 раз - второй, затем снова первый и т.д. Партия играется до тех пор, пока кто-нибудь из игроков не наберет 21 очко. Тот, кто набрал 21 очко, признается победителем, и игра заканчивается. Вася и Петя играли в игру, и забыли, кто должен подавать в данный момент. Однако они помнят, что первую подачу делал Вася, и счет в настоящий момент a:b (a очков у Васи и b очков у Пети). Напишите программу, которая по данным a и b будет определять, чья подача или устанавливать, что игра закончена. Формат входных данных Вводятся два числа a и b. Числа соответствуют реальному счету, т.е. оба числа целые, от 0 до 21 и не равны 21 одновременно. Формат выходных данных Выведите одно из четырех сообщений: * Vasya serves - если сейчас должен подавать Вася * Petya serves - если сейчас должен подавать Петя * Vasya wins - если игра завершена и выиграл Вася * Petya wins - если игра завершена и выиграл Петя Примеры a.in a.out 4 1 Petya serves 15 0 Petya serves 21 12 Vasya wins вот моё решение прошло 30 тестов из 45. какие тесты могли не пройти? program tennis; var t,f:text; a,b,n:integer; c:string; begin assign(f,'a.in'); reset(f); while not eoln(f) do read(f,a,b); {read(f,b);} n:=a+b; if a<>21 then begin if n mod 10=0 then c:='Vasya serves' else c:='Petya serves'; end; if a=21 then c:='Vasya wins'; if b=21 then c:='Petya wins'; close(f); assign(t,'a.out'); rewrite(t); write(t,c); if (a>21) or (b>21) or (a<0) or (b<0) then rewrite(t); close(t); end.
___________________________________ ____________
ВОН ВЫГНАТЬ ПРОКЛЯТЫХ СПАММЕРОВ! |
25.10.2008, 00:42 | #2 |
Студентик :)
Пользователь
Регистрация: 29.09.2008
Сообщений: 84
|
Интересно, а чего вы решили что вот это строка
Код:
Возьмём например счёт 2:2 Сумма = 4 4 mod 10 =4 , но подаёт то ведь Петя ещё, а у вас подавал бы Вася, неправильный алгоритм проверки, надо что-нибудь подейственнее... Ну и проверку Код:
Времени сейчас нету придумывать алгоритм проверки... Последний раз редактировалось lexus_ilia; 25.10.2008 в 00:45. |
25.10.2008, 00:47 | #3 |
Студентик :)
Пользователь
Регистрация: 29.09.2008
Сообщений: 84
|
Есть идея сделать через проверку if
Код:
Последний раз редактировалось lexus_ilia; 25.10.2008 в 01:13. |
25.10.2008, 01:11 | #4 |
Студентик :)
Пользователь
Регистрация: 29.09.2008
Сообщений: 84
|
Короче держи свою задачу:
Код:
|
25.10.2008, 09:26 | #5 |
Пользователь
Регистрация: 24.10.2008
Сообщений: 32
|
огромное спасибо
___________________________________ ____________
ВОН ВЫГНАТЬ ПРОКЛЯТЫХ СПАММЕРОВ! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проверьте задачку | {StaN} | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 04.07.2008 13:20 |
Помогите переделать и проверьте | Mokriy | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 22.05.2008 17:26 |
Проверьте код ! | Михаил Юрьевич | Общие вопросы Delphi | 7 | 08.02.2008 09:32 |
Проверьте пожалуйста код | forumu | Помощь студентам | 1 | 27.12.2007 21:49 |
как поставить иконку в моё приложение? | steck | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 16.05.2007 18:12 |