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

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

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

2 страниц V  1 2 >  
 Ответить  Открыть новую тему 
> Задачи на простые циклы, цикл for
Yaroslav
сообщение 11.01.2005 20:45
Сообщение #1


Новичок
*

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

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


Вычислить значение многочлена n (энной) степени при заданном значении х.


Написать программу для следующих примеров:

1) Р(х) = 4*х*x*x*x*x – 7*x*x*x*x + 5* x*x*x -2*х + 1;
2) Р(х) = x*x*x*x*x*x – 4*x*x*x*x + x*x*x -2* x*x + 5;
3) Р(х) = x*x*x*x*x + x*x*x*x – 6* x*x*x– 14* x*x – 11*х – 3


При написании программы использовать следующий алгоритм:

Начало
далее
n, а0, а1 …, аn, х
далее
р: = а0
далее
i = 1
далее
i =< n
далее: если - , то p далее конец
если + , то р: = p*x +a[i] далее i : = i + 1 и возврат к i =< n
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 11.01.2005 21:44
Сообщение #2


Perl. Just code it!
******

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

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


Вот так чтоли ???

Это для первого многочлена, для остальных просто формулу поменять и все.

Код
uses crt;
var x:extended;
function p(x:extended):extended;
begin
p:=4*exp(5*ln(x))-7*exp(4*ln(x))+5*exp(3*ln(x))-2*x+1;
end;
Begin
  clrscr;
  readln(x);
  writeln(p(x):2:3);
  readln;
end.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 11.01.2005 21:45
Сообщение #3


Perl. Just code it!
******

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

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


Цитата(Yaroslav @ 11.01.05 20:45)
Начало
далее
n, а0, а1 …, аn, х
далее
р: = а0
далее
i = 1
далее
i =< n
далее: если - , то p    далее конец
если + , то р: = p*x +a[i]    далее i : = i + 1 и возврат к i =< n

Вот это ваще не ясно smile.gif)


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 11.01.2005 21:46
Сообщение #4


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

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


Цитата
Вот так чтоли ???
нет, не так.
Код
exp(5*ln(x))

нельзя это smile.gif
потому что
Цитата
Задачи на простые циклы, цикл for

smile.gif


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 11.01.2005 21:48
Сообщение #5


Perl. Just code it!
******

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

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


т.е. без возведения в степень чтоли надо ?

Даже если и так, то причем тут цикл ?? Ведь нужно просто получить значение монгочлена...

Сообщение отредактировано: klem4 - 11.01.2005 21:50


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 11.01.2005 21:52
Сообщение #6


Perl. Just code it!
******

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

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


ИЗВИНЯЮСЬ, ступил )) мне просто показалось что тут 2 задания.

Сообщение отредактировано: klem4 - 11.01.2005 22:04


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Yaroslav
сообщение 11.01.2005 23:53
Сообщение #7


Новичок
*

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

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


Цитата(klem4 @ 11.01.05 21:48)
т.е. без возведения в степень чтоли надо ?

Даже если и так, то причем тут цикл ?? Ведь нужно просто получить значение монгочлена...

Спасибо большое! Но могли бы вы решить эти задачки через переменные, которые даны в алгоритме решения задачи,просто мы ещё не проходили функции!

Yaroslav
То, что задание должно быть решено без помощи функций должно оговариваться заранее


Сообщение отредактировано: volvo - 12.01.2005 10:00
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 12.01.2005 10:11
Сообщение #8


Perl. Just code it!
******

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

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


Цитата(Yaroslav @ 11.01.05 20:45)
Начало
далее
n, а0, а1 …, аn, х
далее
р: = а0
далее
i = 1
далее
i =< n
далее: если - , то p  далее конец
если + , то р: = p*x +a[i]    далее i : = i + 1 и возврат к i =< n

Дословно похоже на это :

Код
uses crt;
var
   a : array[0..100] of integer;
 i,n : integer;
 x,p : extended;

Begin
  clrscr;
  write('Input x ');readln(x);
  write('Input n ');readln(n);
  for i:=0 to n do
   readln(a[i]);
  p:=a[0];
  for i:=1 to n do
   p:=p*x + a[i];
  writeln(p:2:3);
  readln;
  end.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 12.01.2005 18:16
Сообщение #9


Perl. Just code it!
******

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

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


Объясните пожалуйста, как связано

это
Цитата
1) Р(х) = 4*х*x*x*x*x – 7*x*x*x*x + 5* x*x*x -2*х + 1;
2) Р(х) = x*x*x*x*x*x – 4*x*x*x*x + x*x*x -2* x*x + 5;
3) Р(х) = x*x*x*x*x + x*x*x*x – 6* x*x*x– 14* x*x – 11*х – 3


и это


Цитата
Начало
далее
n, а0, а1 …, аn, х
далее
р: = а0
далее
i = 1
далее
i =< n
далее: если - , то p далее конец
если + , то р: = p*x +a[i] далее i : = i + 1 и возврат к i =< n


Между собой ?


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 14.01.2005 9:33
Сообщение #10


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

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


Цитата
первое-уравнения, второе- алгоритм их решения!


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 14.01.2005 11:33
Сообщение #11


Perl. Just code it!
******

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

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


Цитата
Цитата
первое-уравнения, второе- алгоритм их решения!


Это вполне понятно из
Цитата
При написании программы использовать следующий алгоритм:


Но как решить эти уравнения с помощью этого алгоритма blink.gif ? Меня именно это интересует...

Сообщение отредактировано: klem4 - 14.01.2005 11:34


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 14.01.2005 18:03
Сообщение #12


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

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


то, что названо здесь алгоритмом, не является алгоритмом. Вот ответ на твой вопрос, klem4.
;)
Алгоритм - последновательность однозначных команд, понятных исполнителю.
А то, что здесь:
Цитата
Начало
далее
n, а0, а1 …, аn, х
далее
р: = а0
далее
i = 1
далее
i =< n
далее: если - , то p далее конец
если + , то р: = p*x +a[i] далее i : = i + 1 и возврат к i =< n

явно не алгоритм.... ;)


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Yaroslav
сообщение 14.01.2005 21:27
Сообщение #13


Новичок
*

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

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


Цитата(klem4 @ 12.01.05 10:11)
Дословно похоже на это :

Код
uses crt;
var
   a : array[0..100] of integer;
 i,n : integer;
 x,p : extended;

Begin
  clrscr;
  write('Input x ');readln(x);
  write('Input n ');readln(n);
  for i:=0 to n do
   readln(a[i]);
  p:=a[0];
  for i:=1 to n do
   p:=p*x + a[i];
  writeln(p:2:3);
  readln;
  end.

Извините, а какие данные я должен подставлять под x и y? Помогите, пожалуйста!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 14.01.2005 21:41
Сообщение #14


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

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


Цитата
Вычислить значение многочлена n (энной) степени при заданном значении х.

следовательно x и n вводится.
Цитата
write('Input x ');readln(x);
 write('Input n ');readln(n);

smile.gif


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 15.01.2005 12:59
Сообщение #15


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

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


Цитата
Извините, а какие данные я должен подставлять под x и y? Помогите, пожалуйста!

Что значит какие? Вот ваше задание:
Цитата
Вычислить значение многочлена n (энной) степени при заданном значении х.


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Yaroslav
сообщение 15.01.2005 16:12
Сообщение #16


Новичок
*

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

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


Перерешайте пожалуйста заново эти формулы!Просто программа по данному мной алгоритму не работает! Но когда будете переделывать программу через цикл for, не используйте пожалуйста ln ! Помогите мне пожалуйста!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 15.01.2005 19:11
Сообщение #17


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

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


ок, итак:
Цитата
Написать программу для следующих примеров:
1) Р(х) = 4*х*x*x*x*x – 7*x*x*x*x + 5* x*x*x -2*х + 1;
2) Р(х) = x*x*x*x*x*x – 4*x*x*x*x + x*x*x -2* x*x + 5;
3) Р(х) = x*x*x*x*x + x*x*x*x – 6* x*x*x– 14* x*x – 11*х – 3

Код
uses crt;
var
  a : array[0..100] of integer;
i,n : integer;
x,p : extended;

Begin
 clrscr;
 write('Input x ');readln(x);
 write('Input n ');readln(n);
 for i:=0 to n do
  readln(a[i]);
 p:=a[0];
 for i:=1 to n do
  p:=p*x + a[i];
 writeln(p:2:3);
 readln;
end.


для первого вводишь x- число X для которого надо вычислить значение многочлена.
и затем в цикле вводятся коээфициенты. ты вводишь для первго примера
Цитата
4
-7
5
-2
1

----------------------
для второго
Цитата
1
-4
1
-2
0
5


ясно??????

N для 1 и 3 равно 4, для
2 - равно 6. это степень многочелна

Сообщение отредактировано: volvo - 15.01.2005 22:01


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Yaroslav
сообщение 15.01.2005 20:16
Сообщение #18


Новичок
*

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

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


Oleg_Z
Ничего не получается!
Я делаю так:
на экране появляется input x, я ввожу данное мне в задании число 3.
дальше появляется input n, я ввожу 4 -7 5 -2 1 . После этого ничего не выходит на экран! Что я не так делаю?Пожалуйста помогите!Ответ для 1-ой задачи для x=3 должен быть равен 535.
Yaroslav, не нужно копировать сообщения полностью...

Сообщение отредактировано: volvo - 15.01.2005 21:58
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 15.01.2005 20:22
Сообщение #19


Perl. Just code it!
******

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

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


Во первых n не может быть равно (4 -7 5 -2 1), так как n - кол-во итераций цикла - 1. N - это целое неотр. число, например 2 или 45.

Сообщение отредактировано: klem4 - 15.01.2005 20:24


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 15.01.2005 21:56
Сообщение #20


Гость






Yaroslav
Единственное, что приходит в голову для вычисления этой последовательности:
Код
uses crt;
var
 i,j,n, x,p,s : longint;

begin
 clrscr;
 write('Input x ');readln(x);
 write('Input n ');readln(n);

 for i:=n downto 0 do
   begin
     writeln('input a[', i, ']');
     readln(p); j := i;
     while j > 0 do
       begin
         p := p * x; dec(j)
       end;
     s := s + p
   end;
 writeln(s);
 readln;
end.


Вводим (для первого задания):
Цитата
x=3; n=5;
a[5]=4; a[4]=-7; a[3]=5; a[2]=0; a[1]=-2; a[0]=1

Не забываем, что вводить надо ВСЕ коэффициенты последовательности (если соответствующего члена нет, то коэфф = 0)
Oleg_Z
:P

Сообщение отредактировано: volvo - 15.01.2005 21:59
 К началу страницы 
+ Ответить 

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

 



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