IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

2 страниц V  1 2 >  
 Ответить  Открыть новую тему 
> решённая задача, требуется корректировка
Ksander
сообщение 16.08.2004 21:08
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


решил задачу да неправильно, не знаю в чём причина, уже всё перепробовал,ответ есть, но только он неправильный
текст такой:1+((2 в степени n)/(2 в степени n+1)),и всё это в цикле,который начинается с 1/2... и т.д.
Код
uses crt;
var n,i,j:byte;
     znam,chisl,sum:real;
begin
clrscr;
write('n=');
readln(n);
znam:=1;
for i:=1 to n do
  begin
  sum:=exp(i*ln(2))/exp((i+1)*ln(2));
  znam:=znam+sum;
  end;
  while n>=1 do
     begin
     chisl:=1;
     sum:=0;
     for i:=1 to n-1 do
 begin
 sum:=exp(i*ln(2))/exp((i+1)*ln(2));
 chisl:=chisl+sum;
 end;
     znam:=chisl/znam;
     n:=n-1;
     end;
writeln('otvet=',znam:2:6);
readkey
end.

Не забываем заключать код программы в соответсвтующие теги!

Сообщение отредактировано: APAL - 17.08.2004 18:38
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Бродяжник
сообщение 17.08.2004 8:15
Сообщение #2


Бывалый
***

Группа: Пользователи
Сообщений: 206
Пол: Мужской

Репутация: -  3  +


Постановка задачи неясна. Запишите, пожалуйста, общую формулу полностью. По условию похоже, что надо посчитать сумму числового ряда
S=sum(1+(2^n)/(2^(n+1))) - это, так сказать, псевдокод <_<
(Индекс n меняется от? и до?) А в приведенном решении описаны какие-то более запутанные расчеты.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
BlackShadow
сообщение 17.08.2004 11:18
Сообщение #3


Гость






Ну попадись ты мне! Руки поотшибаю! Кто же двойку так в степень возводит???

2^n = 1 Shl n!

Ладно, едем дальше. У тебя в формуле стоит 1+... В программе я этого не наблёл. А вообще там трудно что понять sad.gif

Если тебе надо посчитать сумму ряда, то делается это так:

Код

Var
 i,n:Integer;
 s:Double;
Begin
 ReadLn(n);
 s:=0;
 For i:=1 To n Do
   s:=s + (1 + (1 Shl n)*1.0/(1 Shl (n + 1)));
 WriteLn(s)
End.


Ты условия уточни...

З. Ы. : код вроде как оформлять прянято...
 К началу страницы 
+ Ответить 
Ksander
сообщение 17.08.2004 21:11
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


текст примерно такой: 1/2/4/2^n/2^n+1, только ещё перед каждым знаком / стоит 1+
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
BlackShadow
сообщение 18.08.2004 12:34
Сообщение #5


Гость






догнал. После обеда напишу.
 К началу страницы 
+ Ответить 
BlackShadow
сообщение 18.08.2004 13:49
Сообщение #6


Гость






Всё-таки не до конца понял. Точнее я понял так, как на этой картинке. Есди чего не так, то изобрази это в Paint'е и пришли.


Прикрепленные изображения
Прикрепленное изображение
 К началу страницы 
+ Ответить 
Ksander
сообщение 18.08.2004 21:22
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


что-то я не понял как сюда паинт затолкать
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
BlackShadow
сообщение 19.08.2004 13:36
Сообщение #8


Гость






Я тоже не понял, пока не объяснили smile.gif В самом низу есть кнопка "ответить". Вот её нажми, а там и появится место где файл приатачить можно.
 К началу страницы 
+ Ответить 
Ksander
сообщение 19.08.2004 21:15
Сообщение #9


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


может получится


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ksander
сообщение 19.08.2004 21:17
Сообщение #10


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


получилось, теперь попробуйте решить, я уже не знаю что и делать, даже мои знакомые не знают как решать
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Бродяжник
сообщение 20.08.2004 10:38
Сообщение #11


Бывалый
***

Группа: Пользователи
Сообщений: 206
Пол: Мужской

Репутация: -  3  +


Решить как будто бы можно. Алгоритм нужно строить "снизу вверх", то есть от самого нижнего знаменателя. И будет всего один цикл типа
FOR I:=N DOWNTO 0 DO
(Примерно так.) Сам расчет строится по принципу
1. Вначале R := 2^(n+1)
2. Далее для всех i от n до 0 делаем следующее:
R := 1 + ((2^i)/R)
В итоге должна получиться та же формула, что и у Вас, но еще +1. Эту единицу можно в конце вычесть, если нужно. Программу пишите сами. Когда напишете, можем поправить. Удачи!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
BlackShadow
сообщение 20.08.2004 15:54
Сообщение #12


Гость






Где-то так:
Код

Var
 n:Integer;
 d1,d2,d3,Result:Double;
Begin
 ReadLn(n);
 d1:=1 Shl n;
 d2:=1 Shl (n+1);
 Rseult:=0;
 While d1>= 1 Do
 Begin
   d3:=d1/2;
   d2:=1+d1/d2;
   d1:=d3
 End;
 d2:=d2-1;
 WriteLn(d2)
End.

Вроде так, если я ничего не напутал...
 К началу страницы 
+ Ответить 
APAL
сообщение 21.08.2004 10:05
Сообщение #13


Смотрю...
*****

Группа: Модераторы
Сообщений: 1 055
Пол: Мужской
Реальное имя: Пшеничный Алексей Анатольевич

Репутация: -  6  +


Код
Const n=10;

Function drob(i : Byte) : Real;
Begin
 If i=n then
   Drob:=1+(1 shl i)/(1 shl (i+1))
     Else
   Drob:=1+2/Drob(i+1);
End;

Begin
 Writeln('n = ',n,'    result = ',(1/drob(1)):8:4);
End.


Проверьте, а то мне было лениво на калькуляторе значения прорабатывать... smile.gif


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 21.08.2004 14:00
Сообщение #14


Знаток
****

Группа: Пользователи
Сообщений: 303
Пол: Мужской
Реальное имя: Роман

Репутация: -  2  +


Решается рекурсивной функцией.
Не забывать поставить условие для выхода из функции!!! Иначе зациклится!

Сообщение отредактировано: romtek - 21.08.2004 14:01


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
APAL
сообщение 21.08.2004 14:07
Сообщение #15


Смотрю...
*****

Группа: Модераторы
Сообщений: 1 055
Пол: Мужской
Реальное имя: Пшеничный Алексей Анатольевич

Репутация: -  6  +


Условие там и так уже стоит:
Код
If i=n then


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 21.08.2004 14:48
Сообщение #16


Знаток
****

Группа: Пользователи
Сообщений: 303
Пол: Мужской
Реальное имя: Роман

Репутация: -  2  +


APAL,
Это я не тебе адресовал, а Ksanderу. ;)


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ksander
сообщение 21.08.2004 21:14
Сообщение #17


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


romtek, спасибо тебе за ответ, если ты умеешь решать рекурсию может решишь мне задачу с помощью реккурентных формул, но только не надо путать с рекурсией


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ksander
сообщение 22.08.2004 21:55
Сообщение #18


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


хочу сказать что ни одно из предложенных вами решении задачи не оказалось правильным, неужели вам самим не интересно решить эту задачу
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
APAL
сообщение 23.08.2004 9:19
Сообщение #19


Смотрю...
*****

Группа: Модераторы
Сообщений: 1 055
Пол: Мужской
Реальное имя: Пшеничный Алексей Анатольевич

Репутация: -  6  +


Цитата(Ksander @ 22.08.04 22:55)
хочу сказать что ни одно из предложенных вами решении задачи не оказалось правильным, неужели вам самим не интересно решить эту задачу

А в чем неправильность-то? ;)


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ksander
сообщение 26.08.2004 21:09
Сообщение #20


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской

Репутация: -  0  +


вроде всё правильно,но когда время доходит до ответа,там даже близко нет правильного ответа,правильный ответ для 1 это 0.666, а выдаёт ответ больше 1
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

2 страниц V  1 2 >
 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия 23.07.2025 14:18
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"