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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.12.2012, 14:02   #1
DannyFile
Новичок
Джуниор
 
Регистрация: 05.12.2012
Сообщений: 5
По умолчанию Олимпиадная работа 2011-2012 года

Для обнаружения судов противника есть некоторая система обнаружения, состоящая из трех наблюдательных станций, находящихся на берегу. Каждая из станций выдает пеленг - угол на обнаруженное судно отсчитываемое от направления на север по часовой стрелке. Из-за погрешности линии пеленга никогда не пересекаются в одной точке . Считается, что судно находится в геометрическом центре этого треугольника. Требуется написать программу, которая по трем пеленгам определяет пеленг и расстояние относительно второй станции.

Последний раз редактировалось DannyFile; 05.12.2012 в 14:13. Причина: Задача 1. "Пеленг судов"
DannyFile вне форума Ответить с цитированием
Старый 05.12.2012, 14:09   #2
DannyFile
Новичок
Джуниор
 
Регистрация: 05.12.2012
Сообщений: 5
По умолчанию

Телефонный номер называется "шахматным", если его цифры набираются на телефонном кнопочном номеронабирателе ходом шахматного коня. Написать программу. подсчитывающую, сколько можно набрать различных семизначных "шахматных" номеров, начинающихся с заданной цифры.

Последний раз редактировалось DannyFile; 05.12.2012 в 14:14. Причина: Задача 2 "Шахматный номер"
DannyFile вне форума Ответить с цитированием
Старый 05.12.2012, 14:09   #3
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

...а пожалуйста? И наработки?

Цитата:
Телефонный номер называется "шахматным", если его цифры набираются на телефонном кнопочном номеронабирателе ходом шахматного коня. Написать программу. подсчитывающую, сколько можно набрать различных семизначных "шахматных" номеров, начинающихся с заданной цифры.
каков, а
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 05.12.2012, 14:12   #4
DannyFile
Новичок
Джуниор
 
Регистрация: 05.12.2012
Сообщений: 5
По умолчанию

Всем известны правила игры в города: первый игрок называет произвольный город, следующий - город, который начинается на ту же букву, на которую заканчивается название первого города, и т.д. Аналогичным образом можно играть не в названия городов, а например в названия животных.
Задан список допустимых для описанной игры слов, слова в нём могут повторяться. Напишите программу, определяющую, в каком порядке в процессе игры должны быть названы слова из списка, чтобы каждое слово было использовано ровно столько раз, сколько оно в нём встречается.

Последний раз редактировалось DannyFile; 05.12.2012 в 14:14. Причина: Игра в города
DannyFile вне форума Ответить с цитированием
Старый 05.12.2012, 14:18   #5
DannyFile
Новичок
Джуниор
 
Регистрация: 05.12.2012
Сообщений: 5
По умолчанию

Номер из N цифр называется счастливым, если между его цифрами можно расставить знаки + и - так, что полученное выражение станет равным 0. Не ставить никакого знака между цифрами нельзя. Лидирующие нули в номере допускаются.
Требуется написать программу,которая определит, счастливый ли заданный номер.

З.Ы.: пожалуйста

Последний раз редактировалось DannyFile; 05.12.2012 в 14:18. Причина: Счастливые номера
DannyFile вне форума Ответить с цитированием
Старый 05.12.2012, 14:30   #6
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

...знаете, наглость не всегда города берет. Один вопрос - одна тема.

Где наработки?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 05.12.2012, 15:30   #7
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Вот вам ребята новый задачник "ЗАды для Олимпийцев от ОЛЕНпийцев"
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 06.12.2012, 00:51   #8
DannyFile
Новичок
Джуниор
 
Регистрация: 05.12.2012
Сообщений: 5
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
...знаете, наглость не всегда города берет. Один вопрос - одна тема.

Где наработки?
Собственно, прошу прощение за некорректное оформление постов. Писал задачи прямо во время их получения на скорость.

У меня стойкое ощущение, что задачи составлены некорректно. Порой не ясны, какие данные требуются от пользователя и в каком виде (вводятся вручную или подгружаются из файла). Так же организатор не предоставил образцы безукоризненного решения и тест-кейсы для проверки работы программы.

Так вот, по теме первой задачи, например.
Собственно у нас есть три точки (пеленгатора), расположенные производным треугольником, при том с каждой из этих точек можно получить только угол по часовой стрелке отн. севера.
Каким образом можно найти расстояние от геом. центра до 2 точки, если получаемая фигура получается в целом масштабируемая, а значит при известных лишь вышеупомянутых сигналов из 3-х точек, мы можем получить абсолютно любое расстояние.

Как считаете, стоит ли здесь вводить систему координат и какие данные требуется вводить пользователю?
DannyFile вне форума Ответить с цитированием
Старый 08.12.2012, 17:12   #9
three_cats
Форумчанин
 
Аватар для three_cats
 
Регистрация: 27.09.2012
Сообщений: 175
Счастье

Код:
// Телефонный номер называется "шахматным", если его цифры набираются на телефонном кнопочном номеронабирателе ходом шахматного коня.
// Написать программу. подсчитывающую, сколько можно набрать различных семизначных "шахматных" номеров, начинающихся с заданной цифры.
uses crt;
var i,variants:integer;
begin
// 1 2 3
// 4 5 6
// 7 8 9
//   0

// 1-8 1-6
// 2-7 2-9
// 3-4 3-8
// 4-3 4-9 4-0
// 6-7 6-1 6-0
// 7-2 7-6
// 8-1 8-3
// 9-4 9-2
// То есть, у всех, кроме '5' - по 2 варианта.
// Ну и пожалуйста!

for i:=1 to 7 do
if ((i = 6) or (i = 4)) then variants:=variants+i*3 else
variants:=variants+i*2;

writeln('Количество вариантов = ', variants);


end.
Замечу, что это количество вариантов для всех чисел кроме "5" при "5" будет 0.
Никто

мой блог

Последний раз редактировалось three_cats; 08.12.2012 в 17:24.
three_cats вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ЛЧ - 2011-2012. Битва прогнозистов - сезон первый. Bustle Свободное общение 66 09.12.2011 01:41
олимпиадные задачи 2011-2012 evgeniyvol Паскаль, Turbo Pascal, PascalABC.NET 3 08.12.2011 22:49