Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Боулинг - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин  
Мир MS Excel » Работа и общение » Мозговой штурм » Боулинг (подсчет очков)
Боулинг
MCH Дата: Четверг, 02.01.2014, 19:43 | Сообщение № 1
Группа: Админы
Ранг: Старожил
Сообщений: 2003
Репутация: 751 ±
Замечаний: ±

Возможно, многие умеют играть в боулинг и знают, как подсчитываются очки.
Если нет, то правила под спойлером.

В ячейках A2:An – находятся числа, обозначающие количество сбитых кеглей за каждый совершенный бросок.
Требуется написать формулу, которая определит количество набранных очков.
Количество бросков может быть разным (от 11 до 21). Формула должна автоматически определять количество бросков и корректно считать очки.
Т.к. достаточно трудно решить все одной формулой (я не знаю как это сделать), то добавил два дополнительных столбца – номер очередного фрейма и номер удара в фрейме, (не совсем корректно получается, т.к. бонусные удары не являются очередным фреймом, а формула может их определить как 11 и 12 фрейм, но на расчет это не должно влиять, а для уменьшения промежуточных формул дополнительных проверок не делал).
Для усложнения задачи можно не ссылаться на значения в столбце B (номер очередного фрейма).
Для проверки формулы подсчитал очки при разных исходах игры.
К сообщению приложен файл: bowling.xls (32.0 Kb)


Сообщение отредактировал MCH - Четверг, 02.01.2014, 19:44
 
Ответить
СообщениеВозможно, многие умеют играть в боулинг и знают, как подсчитываются очки.
Если нет, то правила под спойлером.

В ячейках A2:An – находятся числа, обозначающие количество сбитых кеглей за каждый совершенный бросок.
Требуется написать формулу, которая определит количество набранных очков.
Количество бросков может быть разным (от 11 до 21). Формула должна автоматически определять количество бросков и корректно считать очки.
Т.к. достаточно трудно решить все одной формулой (я не знаю как это сделать), то добавил два дополнительных столбца – номер очередного фрейма и номер удара в фрейме, (не совсем корректно получается, т.к. бонусные удары не являются очередным фреймом, а формула может их определить как 11 и 12 фрейм, но на расчет это не должно влиять, а для уменьшения промежуточных формул дополнительных проверок не делал).
Для усложнения задачи можно не ссылаться на значения в столбце B (номер очередного фрейма).
Для проверки формулы подсчитал очки при разных исходах игры.

Автор - MCH
Дата добавления - 02.01.2014 в 19:43
Pelena Дата: Пятница, 03.01.2014, 13:48 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19185
Репутация: 4420 ±
Замечаний: ±

Excel 365 & Mac Excel
[offtop]Не иначе Михаил встречал Новый год в боулинг клубе :D [/offtop]


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщение[offtop]Не иначе Михаил встречал Новый год в боулинг клубе :D [/offtop]

Автор - Pelena
Дата добавления - 03.01.2014 в 13:48
SkyPro Дата: Пятница, 03.01.2014, 16:21 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
[offtop]А почему в прошедшем времени? :)


skypro1111@gmail.com
 
Ответить
Сообщение[offtop]А почему в прошедшем времени? :)

Автор - SkyPro
Дата добавления - 03.01.2014 в 16:21
Russel Дата: Воскресенье, 05.01.2014, 13:00 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1394
Репутация: 320 ±
Замечаний: 0% ±

Excel 2010
Текущий счет в отдельном столбце:
Код
=ЕСЛИ(B2<11;A2+D1;D1)+ЕСЛИ(B2=B3;ЕСЛИ(A2+A3=10;A4;0);0)+ЕСЛИ(И(B2<11;C2=1;A2=10);A3+A4;0)


PS Схема подсчета очков несколько нестандартная :D


QIWI 9173973973
 
Ответить
СообщениеТекущий счет в отдельном столбце:
Код
=ЕСЛИ(B2<11;A2+D1;D1)+ЕСЛИ(B2=B3;ЕСЛИ(A2+A3=10;A4;0);0)+ЕСЛИ(И(B2<11;C2=1;A2=10);A3+A4;0)


PS Схема подсчета очков несколько нестандартная :D

Автор - Russel
Дата добавления - 05.01.2014 в 13:00
AndreTM Дата: Понедельник, 06.01.2014, 04:31 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 500 ±
Замечаний: 0% ±

2003 & 2010
Вот если честно - то достаточно расположить результаты в два столбца (первый-второй удары фрейма), и тогда формула рисуется легко (поскольку диапазон будет фиксированным :) - и номер фрейма, и номер удара, соответственно, заданы уже расположением данных). После этого останется биться только за минимальное количество знаков...

А вот если Миша захотел, чтобы мы повыделывались над длинными формулами (ибо номер фрейма и номер удара всё равно надо будет вычислять), то я, пожалуй, пас... Ибо пока практического смысла в таких расчётах не вижу. Так-то, конечно, вижу, где можно это использовать - но не в праздники же ломать голову :D


Skype: andre.tm.007
Donate: Qiwi: 9517375010
 
Ответить
СообщениеВот если честно - то достаточно расположить результаты в два столбца (первый-второй удары фрейма), и тогда формула рисуется легко (поскольку диапазон будет фиксированным :) - и номер фрейма, и номер удара, соответственно, заданы уже расположением данных). После этого останется биться только за минимальное количество знаков...

А вот если Миша захотел, чтобы мы повыделывались над длинными формулами (ибо номер фрейма и номер удара всё равно надо будет вычислять), то я, пожалуй, пас... Ибо пока практического смысла в таких расчётах не вижу. Так-то, конечно, вижу, где можно это использовать - но не в праздники же ломать голову :D

Автор - AndreTM
Дата добавления - 06.01.2014 в 04:31
MCH Дата: Понедельник, 06.01.2014, 17:59 | Сообщение № 6
Группа: Админы
Ранг: Старожил
Сообщений: 2003
Репутация: 751 ±
Замечаний: ±

Вот если честно - то достаточно расположить результаты в два столбца (первый-второй удары фрейма), и тогда формула рисуется легко

Хорошо, Андрей,
Меняю расположение данных по твоему предложению
Нужно одной формулой посчитать количество очков в партии.
Есть формула в 130 знаков (учитывая =)

Для первоначального файла есть формула менее 100 знаков (и написать ее было проще)
К сообщению приложен файл: bowling3.xls (27.0 Kb)
 
Ответить
Сообщение
Вот если честно - то достаточно расположить результаты в два столбца (первый-второй удары фрейма), и тогда формула рисуется легко

Хорошо, Андрей,
Меняю расположение данных по твоему предложению
Нужно одной формулой посчитать количество очков в партии.
Есть формула в 130 знаков (учитывая =)

Для первоначального файла есть формула менее 100 знаков (и написать ее было проще)

Автор - MCH
Дата добавления - 06.01.2014 в 17:59
AndreTM Дата: Вторник, 07.01.2014, 08:24 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 500 ±
Замечаний: 0% ±

2003 & 2010
Я располагал данные немного по-другому (бонусные удары - в следующей за десятым фреймом строке, а не в третий столбик данных...)
Формула получилась на 101 100 82 знака.

Для первоначального файла есть формула менее 100 знаков (и написать ее было проще)
Я предполагал, что опираться надо на данные только первого столбца. Если же эта формула использует данные не только из A2:An, но и из второго/третьего столбца (B,C), то это "не совсем честно" :) , поскольку эти данные тоже надо как-то рассчитать. Либо внести руками, что увеличивает объём исходной информации. И хотя в моём варианте расположения эти "данные" тоже присутствуют (как я и указывал), - но в "скрытом" виде B)
А вот если всё же эта формула менее чем за 100 знаков считает нужную сумму только из последовательности результатов ударов - вот тут можно подумать...


Skype: andre.tm.007
Donate: Qiwi: 9517375010


Сообщение отредактировал AndreTM - Вторник, 07.01.2014, 13:36
 
Ответить
СообщениеЯ располагал данные немного по-другому (бонусные удары - в следующей за десятым фреймом строке, а не в третий столбик данных...)
Формула получилась на 101 100 82 знака.

Для первоначального файла есть формула менее 100 знаков (и написать ее было проще)
Я предполагал, что опираться надо на данные только первого столбца. Если же эта формула использует данные не только из A2:An, но и из второго/третьего столбца (B,C), то это "не совсем честно" :) , поскольку эти данные тоже надо как-то рассчитать. Либо внести руками, что увеличивает объём исходной информации. И хотя в моём варианте расположения эти "данные" тоже присутствуют (как я и указывал), - но в "скрытом" виде B)
А вот если всё же эта формула менее чем за 100 знаков считает нужную сумму только из последовательности результатов ударов - вот тут можно подумать...

Автор - AndreTM
Дата добавления - 07.01.2014 в 08:24
MCH Дата: Вторник, 07.01.2014, 13:11 | Сообщение № 8
Группа: Админы
Ранг: Старожил
Сообщений: 2003
Репутация: 751 ±
Замечаний: ±

Я располагал данные немного по-другому (бонусные удары - в следующей за десятым фреймом строке, а не в третий столбик данных...)

При такой организации - 95
 
Ответить
Сообщение
Я располагал данные немного по-другому (бонусные удары - в следующей за десятым фреймом строке, а не в третий столбик данных...)

При такой организации - 95

Автор - MCH
Дата добавления - 07.01.2014 в 13:11
MCH Дата: Понедельник, 13.01.2014, 00:55 | Сообщение № 9
Группа: Админы
Ранг: Старожил
Сообщений: 2003
Репутация: 751 ±
Замечаний: ±

Судя по количеству участников либо вопрос невнятно сформулирован, либо некорректно подготовил исходные данные, либо он совсем не интересный.

Выкладываю свои решения при различной организации данных
К сообщению приложен файл: 8209745.xls (45.0 Kb)
 
Ответить
СообщениеСудя по количеству участников либо вопрос невнятно сформулирован, либо некорректно подготовил исходные данные, либо он совсем не интересный.

Выкладываю свои решения при различной организации данных

Автор - MCH
Дата добавления - 13.01.2014 в 00:55
AndreTM Дата: Понедельник, 13.01.2014, 02:08 | Сообщение № 10
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 500 ±
Замечаний: 0% ±

2003 & 2010
Получается, что наши первоначальные варианты (по последней организации данных) - практически одно и то же (я там ещё лишние скобки настрадал и забыл).
Так что готовый результат - 80 знаков (правда, у меня одна строка после таблицы должна быть пустой) :)
К сообщению приложен файл: bowling3_.xls (35.5 Kb)


Skype: andre.tm.007
Donate: Qiwi: 9517375010
 
Ответить
СообщениеПолучается, что наши первоначальные варианты (по последней организации данных) - практически одно и то же (я там ещё лишние скобки настрадал и забыл).
Так что готовый результат - 80 знаков (правда, у меня одна строка после таблицы должна быть пустой) :)

Автор - AndreTM
Дата добавления - 13.01.2014 в 02:08
MCH Дата: Понедельник, 13.01.2014, 12:16 | Сообщение № 11
Группа: Админы
Ранг: Старожил
Сообщений: 2003
Репутация: 751 ±
Замечаний: ±

Так что готовый результат - 80 знаков

Андрей, нужно было сообщить, что есть более короткое решение, а то я над вопросом уже неделю не думал, а так может додумался еще до чего нибудь
 
Ответить
Сообщение
Так что готовый результат - 80 знаков

Андрей, нужно было сообщить, что есть более короткое решение, а то я над вопросом уже неделю не думал, а так может додумался еще до чего нибудь

Автор - MCH
Дата добавления - 13.01.2014 в 12:16
Serge_007 Дата: Понедельник, 13.01.2014, 23:29 | Сообщение № 12
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
либо вопрос невнятно сформулирован, либо некорректно подготовил исходные данные, либо он совсем не интересный
Скажу за себя: мне так и не дались правила боулинга. Несколько раз читал. Вроде понимаю - но не понимаю :(

К самой задаче так и не приступил


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
либо вопрос невнятно сформулирован, либо некорректно подготовил исходные данные, либо он совсем не интересный
Скажу за себя: мне так и не дались правила боулинга. Несколько раз читал. Вроде понимаю - но не понимаю :(

К самой задаче так и не приступил

Автор - Serge_007
Дата добавления - 13.01.2014 в 23:29
Светлый Дата: Вторник, 05.07.2016, 21:56 | Сообщение № 13
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация: 510 ±
Замечаний: 0% ±

Excel 2013, 2016
Для исходного файла формула получилась массивная 79 символов:
Код
=СУММ(ЕСЛИ(B2:B22>9;A2:A22;((A2:A22+A3:A23>9)*A4:A24+A2:A22+A3:A23)*(C2:C22=1)))

Ищу возможность убрать ЕСЛИ, но пока не получается из-за 10-11-12 фреймов.

Если для 10 фрейма независимо от первого броска в таблице будут 1 и 2 удары, а для 11 фрейма будет 1 удар, то формула 69 символов:
Код
=СУММ(((A2:A22+A3:A23>9)*(B2:B22<10)*A4:A24+A2:A22+A3:A23)*(C2:C22=1))


Программировать проще, чем писать стихи.
 
Ответить
СообщениеДля исходного файла формула получилась массивная 79 символов:
Код
=СУММ(ЕСЛИ(B2:B22>9;A2:A22;((A2:A22+A3:A23>9)*A4:A24+A2:A22+A3:A23)*(C2:C22=1)))

Ищу возможность убрать ЕСЛИ, но пока не получается из-за 10-11-12 фреймов.

Если для 10 фрейма независимо от первого броска в таблице будут 1 и 2 удары, а для 11 фрейма будет 1 удар, то формула 69 символов:
Код
=СУММ(((A2:A22+A3:A23>9)*(B2:B22<10)*A4:A24+A2:A22+A3:A23)*(C2:C22=1))

Автор - Светлый
Дата добавления - 05.07.2016 в 21:56
Светлый Дата: Пятница, 08.07.2016, 13:20 | Сообщение № 14
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация: 510 ±
Замечаний: 0% ±

Excel 2013, 2016
Придумал формулу, для которой достаточно столбца количества сбитых кеглей. Всего 210 символов, но это я ещё не оптимизировал (мозг кипит):
Код
=СУММ(ЕСЛИ(СЧЁТЕСЛИ(СМЕЩ(A$1;;;СТРОКА($1:$21));10)+СЧЁТЕСЛИ(СМЕЩ(A$1;;;СТРОКА($1:$21));"<10")/2<9;((A2:A22+A3:A23>9)*A4:A24+A2:A22+A3:A23)*(ЕЧЁТН(СЧЁТЕСЛИ(СМЕЩ(A$1;;;СТРОКА($1:$21));10)+СТРОКА($2:$22)));A2:A22))

Не смог победить ситуацию, когда первый бросок любого из первых девяти фреймов 0, а второй 10 кеглей.
Формула даёт ошибочный результат. 10 воспринимается как страйк, а на самом деле это спэр. Отсюда ошибка.


Программировать проще, чем писать стихи.
 
Ответить
СообщениеПридумал формулу, для которой достаточно столбца количества сбитых кеглей. Всего 210 символов, но это я ещё не оптимизировал (мозг кипит):
Код
=СУММ(ЕСЛИ(СЧЁТЕСЛИ(СМЕЩ(A$1;;;СТРОКА($1:$21));10)+СЧЁТЕСЛИ(СМЕЩ(A$1;;;СТРОКА($1:$21));"<10")/2<9;((A2:A22+A3:A23>9)*A4:A24+A2:A22+A3:A23)*(ЕЧЁТН(СЧЁТЕСЛИ(СМЕЩ(A$1;;;СТРОКА($1:$21));10)+СТРОКА($2:$22)));A2:A22))

Не смог победить ситуацию, когда первый бросок любого из первых девяти фреймов 0, а второй 10 кеглей.
Формула даёт ошибочный результат. 10 воспринимается как страйк, а на самом деле это спэр. Отсюда ошибка.

Автор - Светлый
Дата добавления - 08.07.2016 в 13:20
Мир MS Excel » Работа и общение » Мозговой штурм » Боулинг (подсчет очков)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!