Форум программистов, компьютерный форум, киберфорум
Наши страницы
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
Дмитрий Макеев
0 / 0 / 1
Регистрация: 03.01.2014
Сообщений: 65
#1

Сколько тараканов погибло в чёрный для них день, если всего Агафья Петровна нанесла N ударов тапком?

17.03.2014, 21:42. Просмотров 995. Ответов 7
Метки нет (Все метки)

Как-то вечером, зайдя на кухню, Агафья Петровна обнаружила на столе большое скопление тараканов. Сорвав с ноги тапок, Агафья Петровна принялась их методично уничтожать. Первый удар был неточным, им Анафья Петровна убила всего одного таракана. Второй удар был получше - умерло двое. Каждый раз удары становились всё смертельнее и смертельнее (Агафья Петровна быстро набирала форму). При k-том её ударе погибало в k раз больше тараканов, чем при предыдущем. Вопрос: сколько тараканов погибло в этот чёрный для них день, если всего Агафья Петровна нанесла N ударов тапком?

Примечание: смертей тараканов от других причин в тот день зафиксировано не было.


Входные данные

Дано одно натуральное число N (N ≤ 10).

Выходные данные

Требуется вывести одно число, являющееся ответом к задаче.


Пример входных данных:
3
Пример выходных данных:
9


Заранее благодарен.

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

0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2014, 21:42
Ответы с готовыми решениями:

Определить, сможет ли Илья Муромец одолеть Змея Горыныча и, если да, то сколько ударов для этого потребуется
Илья Муромец идет на битву со Змеем Горынычем. У Змея Горыныча М голов, Илья...

Показать, сколько игр было всего сыгранно в каждый день недели
Uses Types,Crt; {Types это модуль, пользовательский, находится в папке...

Ввести произвольную последовательность из 20 символов и выяснить, - сколько среди них точек, сколько среди них пробелов, сколько среди них букв Д
Ввести произвольную последовательность из 20 символов и выяснить, - сколько...

Вводится массив. Какое число встречается в нем чаще всего. Если таковых несколько, вывести наименьшее из них
Вводится массив. Какое число встречается в нем чаще всего. Если таковых...

Какая сумма будет подарена на каждый день рождения до совершеннолетия? Сколько всего денег будет подарено?
мой богатый дядюшка подарил мне доллар на день рождения. в каждый следующий...

7
Антон1985
116 / 87 / 93
Регистрация: 03.02.2014
Сообщений: 367
17.03.2014, 22:08 #2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function rec(k: integer): integer;
var
  p: integer;
begin
  if k = 1 then
    rec := 1
  else begin
    p := rec(k-1);
    rec := p + p*k;
  end;
end;
 
var
  k: integer;
begin
  write('k - '); readln(k);
  writeln(rec(k));
  readln;
end.
0
Дмитрий Макеев
0 / 0 / 1
Регистрация: 03.01.2014
Сообщений: 65
17.03.2014, 22:39  [ТС] #3
Спасибо, но во первых не правильно считает так как на третий удар 9 тараканов, это в примере есть. Никогда не видел подобных стилей решения. Я вообще мало что видел) Можешь переделать по простому?
0
Антон1985
116 / 87 / 93
Регистрация: 03.02.2014
Сообщений: 367
17.03.2014, 22:57 #4
Лучший ответ Сообщение было отмечено mik-a-el как решение

Решение

Дмитрий Макеев, это не стиль, а один из способов решение задачи - рекурсией.
Цитата Сообщение от Антон1985 Посмотреть сообщение
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function rec(k: integer): integer;
var
 p: integer;
begin
 if k = 1 then
 rec := 1
 else begin
 p := rec(k-1);
 rec := p + p*k;
 end;
end;
var
 k: integer;
begin
 write('k - '); readln(k);
 writeln(rec(k));
 readln;
end.
Программа дествительно не правильно решает(
Вот исправленая программа:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function progresia(k: integer): integer;
var
  p, kk, i: integer;
begin
  p := 0; kk := 1;
  for i:=1 to k do begin
    kk := kk * i;
    p := p + kk;
  end;
  progresia := p;
end;
 
var
  k: integer;
begin
  write('k - '); readln(k);
  writeln(progresia(k));
  readln;
end.
0
Дмитрий Макеев
0 / 0 / 1
Регистрация: 03.01.2014
Сообщений: 65
17.03.2014, 23:04  [ТС] #5
А где можно подробно почитать о рекурсии?
0
Krasme
2820 / 2462 / 831
Регистрация: 02.02.2014
Сообщений: 6,802
18.03.2014, 01:02 #6
Рекурсия
0
NeoMatrix
Модератор
Эксперт NIX
3716 / 1011 / 83
Регистрация: 24.05.2011
Сообщений: 9,955
Записей в блоге: 2
23.03.2014, 13:36 #7
http://www.cyberforum.ru/cgi-bin/latex.cgi?{\sum}_{n} = {\sum}_{n-1}+n*(n-1)
Насколько я понял.
0
Антон1985
116 / 87 / 93
Регистрация: 03.02.2014
Сообщений: 367
24.03.2014, 21:57 #8
NeoMatrix.
Колличество тараканов вычисляется формулой 1*2*3*4*...*k ,то есть k! (факториал k).
Общая сумма тараканов 1! + 2! + 3! + 4! + ... + k!.
По условию задачи так)
1
24.03.2014, 21:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.03.2014, 21:57

Сочетание (В клетке сидят кролики и фазаны. Всего у них 18 ног. Узнать сколько в клетке тех и других)
В клетке сидят кролики и фазаны. Всего у них 18 ног. Узнать сколько в клетке...

Через сколько ударов мячик поднимется на высоту H?
Мячик упал с высоты Р. Ударился о землю и поднялся на 2/3 предыдущей высоты....

Через сколько ударов мяч поднимется на высоту р?
6Мячик упал с высоты h, ударившись об землю, он снова поднимается на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru