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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2014, 22:14   #1
nikolay61
Пользователь
 
Регистрация: 25.12.2012
Сообщений: 10
По умолчанию Собранные деньги

Папа Карло подарил Буратино 1 золотой Цехин на его первый день рождения, а экономный Буратино положил подарок в банке. Каждый следующий год папа Карло удваивал свой предыдущий подарок и прибавлял к нему столько цехинов, сколько лет исполнилось Буратино, а тот, в свою очередь продолжал составлять золотые в банке. На какой N-й день рождения в банке будет не менее S цехинов?
Объяснение: на первый день рождения Буратино подарили один золотой, на второй 2 * 1 + 2 = 4, их стало 5, а на третий 2 * 4 + 3 = 11, и их стало 16> 15.
Код Pascal
Код:
program cehiny;
 
uses crt;
var s:real;
n,k,r,i:byte;
BEGIN
write('ввести год рождения n=>');
readln(n);
s:=0;
for i:=1 to n do
begin
k:=n*2;
r:=k+2;  
 s:=k+r;
 s:=s+1;
 end;
 writeln(s:5:0);
 readln
 
END.
второй и третий день получаются, а вот с первым днем проблема

Последний раз редактировалось Stilet; 12.12.2014 в 22:41.
nikolay61 вне форума Ответить с цитированием
Старый 12.12.2014, 22:25   #2
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,538
По умолчанию

По моему, вообще не то считаете.
Вам надо найти возраст N при котором сумма > S
А вы вычисляете сумму , в возрасте N.

Кстати, я не проверял, правильно сумму считаете или нет.
type_Oleg вне форума Ответить с цитированием
Старый 12.12.2014, 22:36   #3
nikolay61
Пользователь
 
Регистрация: 25.12.2012
Сообщений: 10
Радость

Цитата:
Сообщение от type_Oleg Посмотреть сообщение
По моему, вообще не то считаете.
Вам надо найти возраст N при котором сумма > S
А вы вычисляете сумму , в возрасте N.

Кстати, я не проверял, правильно сумму считаете или нет.
Понял, благодарю
nikolay61 вне форума Ответить с цитированием
Старый 14.12.2014, 20:03   #4
nikolay61
Пользователь
 
Регистрация: 25.12.2012
Сообщений: 10
По умолчанию Собранные деньги

Судя из того код должен приблизительно таким
Код:
program cehiny;
uses crt;
var s,k,i,sum:integer;
BEGIN
    write('введите количество цехинов ');
    readln(s);
    k:=1;i:=1;sum:=k;
    while sum<s do
     begin
      inc(i);
      k:=k*2+i;
      sum:=sum+k;
     end;
    writeln('не менее ',s,' цехинов в банке станет на ',i,' день рождения');
    readln
END.
А можна чтобы когда введешь день рождения программа обсчитала количество цехинов.

Последний раз редактировалось nikolay61; 14.12.2014 в 20:26. Причина: грамматика
nikolay61 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Деньги, деньги - дребеденьги cosmopolit Свободное общение 79 30.11.2014 19:03
С++ за деньги) student4 Фриланс 7 31.05.2012 19:49
за деньги денис николюк Общие вопросы по Java, Java SE, Kotlin 0 04.05.2011 19:54
За деньги ! GTP_edition Фриланс 9 27.12.2008 20:35