-11 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 31
|
||||||
1 | ||||||
Определить, сколько слагаемых должно быть в сумме, чтобы сумма оказалась больше или равной N20.10.2012, 13:32. Просмотров 995. Ответов 16
Метки нет Все метки)
(
Доброго времени суток.
Задача: Сколько слагаемых должно быть в сумме 1 + 1/2 + 1/3 + …+ 1/k, чтобы сумма оказалась больше или равной N. Задаётся только число N, требуется найти k. Вот что у меня получилось:
на следующих тестах она ломается. скажем, 2 - ответ 4 Чего еще не хватает в решении? P.S. я не прошу решить, только дайте наводку Компилятор: Code Block
0
|
|
20.10.2012, 13:32 | |
Сколько слагаемых должно быть в сумме, чтобы эта сумма оказалась больше 5
сколько слагаемых должно быть в сумме 1+1/2+1/3+.+1/N, чтобы сумма оказалась больше L. L вводится пользователем , L принадлежит промежутку [1;2] |
|
319 / 269 / 128
Регистрация: 24.05.2012
Сообщений: 629
|
|
20.10.2012, 14:46 | 2 |
У Вас все правильно написано.
1 + .5 + .(3) + .25 = 2.08(3)
Все верно, четыре слагаемых.
0
|
-11 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 31
|
|
20.10.2012, 15:27 [ТС] | 3 |
0
|
4 / 4 / 3
Регистрация: 04.10.2012
Сообщений: 32
|
|
21.10.2012, 07:43 | 4 |
ReSSorT, знак деления "/", делит нацело если с обеих сторон целочисленные значения, в итоге в твоем случае 1/k = 0 (если к > 1 )
думаю дальше сам догадаешься как исправить?
0
|
-11 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 31
|
|
21.10.2012, 11:49 [ТС] | 5 |
суть уловил, но из функций деления я знаю только "/" и "div"
или есть еще что-то??
0
|
4 / 4 / 3
Регистрация: 04.10.2012
Сообщений: 32
|
|
21.10.2012, 12:20 | 6 |
ReSSorT, "/" и является "div", если значения с которыми она работает принадлежат целому типу(int), значит чтобы она работала как надо, надо изменить тип переменной "k"
0
|
-11 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 31
|
|
21.10.2012, 12:32 [ТС] | 7 |
0
|
4 / 4 / 3
Регистрация: 04.10.2012
Сообщений: 32
|
|
21.10.2012, 12:43 | 8 |
ReSSorT, не местами! сделай k переменной с плавающей точкой(float)
0
|
-11 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 31
|
||||||
21.10.2012, 12:49 [ТС] | 9 | |||||
0
|
4 / 4 / 3
Регистрация: 04.10.2012
Сообщений: 32
|
|
21.10.2012, 12:51 | 10 |
ReSSorT, вы уверены?а почему у меня выводит?
Тесты 0 - 0 1 - 1 2 - 4 3 - 11
0
|
-11 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 31
|
|
21.10.2012, 12:57 [ТС] | 11 |
0
|
4 / 4 / 3
Регистрация: 04.10.2012
Сообщений: 32
|
|
21.10.2012, 12:59 | 12 |
ReSSorT, я тоже об этом подумал...у меня GCC
0
|
-11 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 31
|
|
21.10.2012, 13:02 [ТС] | 13 |
мы задачи сдаем в система ejudge там она тесты прошла, но пишет: превышено максимальное время работы. (из-за этого , наверно, Code Block и виснет)
вы не знаете как оптимизировать работу?
0
|
4 / 4 / 3
Регистрация: 04.10.2012
Сообщений: 32
|
|
21.10.2012, 13:11 | 14 |
ReSSorT, без понятия,я сам новичок...
Кстати,даже при N равном 21 мой комп довольно долго думает, и "k" принимает огромные значения,число повторений цикла здесь огромно, может как-то попробовать его уменьшить? P.S. поставил N=50, минуту назад, жду...
0
|
-11 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 31
|
|
21.10.2012, 13:24 [ТС] | 15 |
а 50 даже пробовать не стоит. нужно, чтобы программа прошла 2 теста: 1-1 и 3-11 , у меня кодеблок уже на 2 - 4 виснет.. видимо не судьба эту задачу сделать. по крайней мере посредством while
0
|
4 / 4 / 3
Регистрация: 04.10.2012
Сообщений: 32
|
|
21.10.2012, 13:41 | 16 |
ReSSorT, проверь вот что...выведи все промежуточные значения "s", проверь,она вообще меняется?
0
|
-11 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 31
|
|
21.10.2012, 14:54 [ТС] | 17 |
0
|
21.10.2012, 14:54 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.
Найти, сколько слагаемых необходимо, чтобы сумма 2+4+6+… оказалась больше 100
Сколько слагаемых должно быть в сумме Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |