|
1 / 1 / 1
Регистрация: 23.08.2012
Сообщений: 100
|
||||||
Задача про зерна на шахматной доске13.12.2012, 20:16. Показов 8410. Ответов 18
Метки нет (Все метки)
Математическая задача про пшеничные зернышки и шахматную доску. Когда на первую клетку кладется одно зернышко, на вторую – два, на третью - четыре и т.п. .
Собственно я набросал вот такой код, который позволяет нам выбрать кол-во заполненных зерном шахматных ячеек и выводит сумму всех зерен и кол-во зерен на последней ячейке. Буду признателен если укажите на очевидные косяки кода и подскажите как можно было бы лучше написать код.
0
|
||||||
| 13.12.2012, 20:16 | |
|
Ответы с готовыми решениями:
18
Задача о зернах на шахматной доске Задача про зерна на шахматной доске Задачка про игру на шахматной доске |
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 13.12.2012, 20:22 | |
|
for(int k=1; k<=i; ++k){
Добавлено через 20 секунд a = a*2; a *= 2; Добавлено через 26 секунд cout << k<< "\t"<< a<< endl;
0
|
|
|
1 / 1 / 1
Регистрация: 23.08.2012
Сообщений: 100
|
||
| 13.12.2012, 20:26 [ТС] | ||
|
а все, понял, спасибо.
0
|
||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 13.12.2012, 20:29 | |
|
CyberGenius, при а = а * 2; сначала создается копия объекта а.
0
|
|
|
1 / 1 / 1
Регистрация: 23.08.2012
Сообщений: 100
|
|
| 13.12.2012, 20:30 [ТС] | |
|
0
|
|
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 13.12.2012, 20:33 | |
|
0
|
|
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,857
|
||
| 13.12.2012, 20:34 | ||
|
int явно не хватит long long!!!
0
|
||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
||||||
| 13.12.2012, 20:36 | ||||||
|
ValeryS, unsigned long long!!
0
|
||||||
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,857
|
||||||||||||||
| 13.12.2012, 20:39 | ||||||||||||||
вообще то это синонимы
0
|
||||||||||||||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 13.12.2012, 20:40 | |
|
ValeryS, а так изменяется значение переменной без создания копии. И это не синонимы, просто конечный результат схож.
0
|
|
|
1 / 1 / 1
Регистрация: 23.08.2012
Сообщений: 100
|
|
| 13.12.2012, 20:54 [ТС] | |
|
0
|
|
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,857
|
||||||||||||||||||
| 13.12.2012, 21:29 | ||||||||||||||||||
|
в данном контексте возведение 2 в степень для 0(первая клетка) 1<<0=1 для 1(вторая клетка) 1<<1=10(в двоичной) =2(десятичной) для 2(третья клетка) 1<<2=100(в двоичной) =4 (десятичной) ну и так далее Добавлено через 4 минуты тут можно вообще без цикла сосчитать
как видишь код идентичный
1
|
||||||||||||||||||
|
114 / 114 / 13
Регистрация: 29.04.2010
Сообщений: 240
|
||||||||||||
| 13.12.2012, 22:10 | ||||||||||||
0
|
||||||||||||
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,857
|
||||||||||||||
| 13.12.2012, 22:38 | ||||||||||||||
|
там 100500 параметров и потом если проводишь тесты выбрасывай вывод на экран если выбросить весь мусор то
и я не знаю сколько тактов занимает lea (некогда сейчас искать, но по моему её скорость зависит от аргумента) а shl всего один такт так что так огульно, без растактовки кто быстрее я бы не стал говорить
0
|
||||||||||||||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 13.12.2012, 23:55 | |
|
ValeryS, пожалуй соглашусь, что записи эквиваленты по сути. Возможно, компилятор сам оптимизирует их к записи с совместным оператором сложения и присваиванием. Энивей, писать a = a + 2 следует только на блок-схемах.
Но вот применение сдвига, по-моему, не оправданно. Профита нет.
0
|
|
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,857
|
||||||||||||
| 14.12.2012, 00:20 | ||||||||||||
|
но для понимания что такое степень двойки (а шахматной доске как и в ханойской башне все на них завязано) и как она связана со сдвигом ( в качестве обучения) надо было привести чтобы потом когда попросят возвести 2 в 10 степень не писал
0
|
||||||||||||
| 14.12.2012, 00:35 | |
|
Не по теме: ValeryS, так бы и сказали, чисто в педагогических целях) Не по теме: А у нас до сдвигов то дело так и не дошло. Ни сдвигов, ни побитовых операций, ни потоков... Все самому
0
|
|
|
1 / 1 / 1
Регистрация: 23.08.2012
Сообщений: 100
|
||
| 14.12.2012, 09:58 [ТС] | ||
0
|
||
|
10 / 10 / 4
Регистрация: 11.10.2012
Сообщений: 93
|
|
| 14.12.2012, 12:45 | |
|
Вообще это длинная арифметика, помню была задача с кучами золота. Посмотрите на длинную арифметику.
0
|
|
| 14.12.2012, 12:45 | |
|
Помогаю со студенческими работами здесь
19
Задача о шахматной доске. Задача о Шахматной доске Задача о муравьях на шахматной доске Задача о зёрнах на шахматной доске Задача с конями на шахматной доске Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|