Вернуться Форум Bashtel.RU > Разное > Компьютеры > Программирование
Ответ
 
Опции темы Опции просмотра

Нужно срочно решить задачу по паскалю
Старый 06.06.2007, 10:39   #1
Пользователь
 
Аватар для Макс
 
Макс вне форума
Регистрация: 09.05.2006
Адрес: Уфа
Сообщений: 78
Отправить сообщение для Макс с помощью ICQ
По умолчанию Нужно срочно решить задачу по паскалю

Вычислить сумму
1+x1/1! +x2/2! +x3/3! +… +xn! , где k!=1* 2*3* ... *k
Значение n вводится с клавиатуры (1 < n 10).
__________________
Все легко и просто.....

Ася 404-800-144
  Ответить с цитированием
 

Старый 06.06.2007, 11:21   #2
Местный
 
Ghostep вне форума
Регистрация: 23.05.2006
Адрес: Wireless
Сообщений: 383
По умолчанию

ничего не понял, факториалы не изучал
__________________
=]
  Ответить с цитированием
 

Старый 06.06.2007, 11:37   #3
Завсегдатай форума
 
Аватар для YaKuT-ST
 
YaKuT-ST вне форума
Регистрация: 09.06.2006
Адрес: Стр
Сообщений: 847
Отправить сообщение для YaKuT-ST с помощью ICQ
По умолчанию

що за "x" в условии задачи?
__________________
"Кто этот гений, **ядь? Дайте я пожму ему горло!"(с)
  Ответить с цитированием
 

Старый 06.06.2007, 11:43   #4
Местный
 
Ghostep вне форума
Регистрация: 23.05.2006
Адрес: Wireless
Сообщений: 383
По умолчанию

может x - это k... хрень какая-то
__________________
=]
  Ответить с цитированием
 

Затратил 6 минут
Старый 07.06.2007, 00:17   #5
Местный
 
Аватар для InternetStranger
 
InternetStranger вне форума
Регистрация: 09.07.2006
Адрес: откуда надо...
Сообщений: 533
Отправить сообщение для InternetStranger с помощью ICQ
Подмигивание Затратил 6 минут

Вот прям так и пишется. Вставь в txt-файл и смени раширение на pas! И можешь смело запускать


Program Ryad;
Var i,n : integer;
s,x,r : real;
Begin
Write('Vvedite X :>'); ReadLn(x);
Write('Vvedite N :>'); ReadLn(n);
s:=0; r:=1;

for i:=1 to n do begin
r:= r*x/i;
s:= s+ r;
end;

WriteLn;
WriteLn('Ryad = ',s:10:10);
ReadLn;
End.
  Ответить с цитированием
 

Старый 07.06.2007, 07:26   #6
Завсегдатай форума
 
Аватар для YaKuT-ST
 
YaKuT-ST вне форума
Регистрация: 09.06.2006
Адрес: Стр
Сообщений: 847
Отправить сообщение для YaKuT-ST с помощью ICQ
По умолчанию

программа не правильна...в числителе вычисляется факториал...
вот так правильнее

Program Ryad;
Var i,n,k : integer;
s,x,l : real;
Begin
Write('Vvedite X :>'); ReadLn(x);
Write('Vvedite N :>'); ReadLn(n);
s:=0; l:=0;

for i:=1 to n do begin
l:=0;
for k:=1 to i do l:=l+1/k;
s:= s+ l;
end;

WriteLn;
WriteLn('Ryad = ',s:10:10);
ReadLn;
End.
__________________
"Кто этот гений, **ядь? Дайте я пожму ему горло!"(с)
  Ответить с цитированием
 

Старый 07.06.2007, 19:12   #7
Завсегдатай форума
 
Аватар для Shang-i
 
Shang-i вне форума
Регистрация: 17.02.2007
Сообщений: 1,098
По умолчанию

Не, ересь. Не так надо

Добавлено через 8 минут
Program Votvam;
Var i,n,k : integer;
l : real;
x: array [1..10000] of real;

Function fakt(k:integer):integer;
var j,f: integer;
begin
f:=1;
For j:=k downto 1 do f:=f*j;
result:=f;
end;

Begin
Write('Vvedite n :>'); ReadLn(n);
for i:=1 to n do
begin
Write('Vvedite x',n,' :>'); ReadLn(x[i]);
end;
l:=0;

for i:=1 to n do
begin
l:=l+x[i]/Fakt(k);
end;

WriteLn;
WriteLn('Ryad = ',l);
ReadLn;
End.
__________________
А я чет не в теме

Последний раз редактировалось Shang-i; 07.06.2007 в 19:20.. Причина: Добавлено сообщение
  Ответить с цитированием
 

Старый 07.06.2007, 21:35   #8
Местный
 
Аватар для InternetStranger
 
InternetStranger вне форума
Регистрация: 09.07.2006
Адрес: откуда надо...
Сообщений: 533
Отправить сообщение для InternetStranger с помощью ICQ
По умолчанию

Цитата:
Сообщение от Shang-i Посмотреть сообщение
Не, ересь. Не так надо

Добавлено через 8 минут
Program Votvam;
Var i,n,k : integer;
l : real;
x: array [1..10000] of real;

Function fakt(k:integer):integer;
var j,f: integer;
begin
f:=1;
For j:=k downto 1 do f:=f*j;
result:=f;
end;

Begin
Write('Vvedite n :>'); ReadLn(n);
for i:=1 to n do
begin
Write('Vvedite x',n,' :>'); ReadLn(x[i]);
end;
l:=0;

for i:=1 to n do
begin
l:=l+x[i]/Fakt(k);
end;

WriteLn;
WriteLn('Ryad = ',l);
ReadLn;
End.
Скорее всего не проканает! Преподы за такой алгоритм буксуют из-за не оптимальности и лишнем расходе ресурса!

Добавлено через 2 минуты

)))) Shang-i, не бузи, сё правильно. ти читай про факториалы

Последний раз редактировалось InternetStranger; 07.06.2007 в 21:38.. Причина: Добавлено сообщение
  Ответить с цитированием
 

Старый 08.06.2007, 14:49   #9
Завсегдатай форума
 
Аватар для Shang-i
 
Shang-i вне форума
Регистрация: 17.02.2007
Сообщений: 1,098
По умолчанию

Цитата:
)))) Shang-i, не бузи, сё правильно. ти читай про факториалы
С каких пор 1/n! стало равно 1+1/1+1/2+...+1/n????

Добавлено через 1 минуту
Лично я всегда считал, что n!=n*(n-1)*(n-2)*...*1,
вы уж извините, не силен я в математике
__________________
А я чет не в теме

Последний раз редактировалось Shang-i; 08.06.2007 в 14:51.. Причина: Добавлено сообщение
  Ответить с цитированием
 

Старый 11.06.2007, 22:30   #10
Местный
 
Аватар для InternetStranger
 
InternetStranger вне форума
Регистрация: 09.07.2006
Адрес: откуда надо...
Сообщений: 533
Отправить сообщение для InternetStranger с помощью ICQ
По умолчанию

Ой, да совсем не прогер. У меня в цикле в переменной r сохраняется значение! Внимательно код смотри:
Цитата:
for i:=1 to n do begin
r:= r*x/i;
s:= s+ r;
end;
предыдущий член r, при каждой i-й итерации домножается на x/i.
Цитата:
вначале был r=1.

i=1 => r:= 1*x/1= x/1!;
i=2 => r:= r*x/2 = x^2/(1*2) = x^2/2!;
i=3 => r:= r*x/3 = x^3/(1*2*3) = x^3/3!;
.....
i=n => r:= r*x/n = x^n/(1*...*n) = x^n/n!
Посмотри мой первый пост в этой теме и найди десять отличий.

Если не веришь, перепиши аккуратно на листочек и посчитай! В подобных задачах основная задача, как из предыдущего члена получить последующий!
  Ответить с цитированием
 

Старый 12.06.2007, 09:14   #11
Завсегдатай форума
 
Аватар для Shang-i
 
Shang-i вне форума
Регистрация: 17.02.2007
Сообщений: 1,098
По умолчанию

Тьфу ты, да я не про твою версию вообще говорю, я про последнюю, которая перед моей
__________________
А я чет не в теме
  Ответить с цитированием
 

Старый 12.06.2007, 17:43   #12
Местный
 
Аватар для InternetStranger
 
InternetStranger вне форума
Регистрация: 09.07.2006
Адрес: откуда надо...
Сообщений: 533
Отправить сообщение для InternetStranger с помощью ICQ
По умолчанию

Ну та, точно. Я про ту вопче молчу - там кабанство какое-то)))
  Ответить с цитированием
 

Старый 12.06.2007, 17:45   #13
Местный
 
Ghostep вне форума
Регистрация: 23.05.2006
Адрес: Wireless
Сообщений: 383
По умолчанию

зайдите в профайл к автору:
Цитата:
Последняя активность: 06.06.2007 13:05
так что хз
__________________
=]
  Ответить с цитированием
 

Старый 12.06.2007, 18:50   #14
Местный
 
Аватар для Ferrari
 
Ferrari вне форума
Регистрация: 18.11.2006
Сообщений: 663
По умолчанию

Цитата:
Сообщение от Макс Посмотреть сообщение
Вычислить сумму
1+x1/1! +x2/2! +x3/3! +… +xn! , где k!=1* 2*3* ... *k
Значение n вводится с клавиатуры (1 < n 10).
мне на первом курсе на экзамене попалась поищу, помню что там функцию писать надо рекурсивную с сумматором

Добавлено через 1 минуту
Я делала через функцию, после писала faktorial(a), где а-значение, затем формула с использованием функции, найду напишу

Последний раз редактировалось Ferrari; 12.06.2007 в 18:52.. Причина: Добавлено сообщение
  Ответить с цитированием
 

Старый 12.06.2007, 19:19   #15
Пользователь
 
mADviser вне форума
Регистрация: 01.05.2006
Адрес: Уфа
Сообщений: 55
Отправить сообщение для mADviser с помощью ICQ
По умолчанию

Вот текст
var
n,i:integer;
x,sum:real;
begin
readln(n);
readln(x);
p:=1;
f:=1;
sum:=1;
for i:=1 to n do begin
p:=p*x;
f:=f*i;
sum:=sum+p/f;
end;
writeln(sum:5:4);
end;

p.s. Давно не програмлю на Паскале и такое чувство что автору поста это уже не нужно))

Последний раз редактировалось mADviser; 12.06.2007 в 19:23..
  Ответить с цитированием
 
Ответ


Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите задачек решить) prime Программирование 0 17.01.2011 20:16
Помогите решить задачу!)) CyberPUNK Образование 10 29.06.2009 11:56
Нужно решить задачу по термодинамике! Mak_s Образование 2 12.05.2009 17:59
Решить задачи.. ТЕМ Общение 0 27.05.2008 15:14
Помогите решить задачу inSk0 Общение 6 24.05.2008 23:49



Текущее время: 17:33. Часовой пояс GMT +3.


vBulletin skin developed by: eXtremepixels
Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd. Перевод: zCarot
top of page