Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Помогите дописать программку с циклами (http://www.tehnari.ru/f41/t49218/)

павля 21.03.2011 22:50

Помогите дописать программку с циклами
 
вычислить использую вложенные циклы....
исходные данные: m=15, x(начальное)=0, x(конечное)=3, n=25, x - вычислить...

павля 21.03.2011 23:23

Вложений: 1
вота формула..

Vladimir_S 22.03.2011 09:48

Цитата:

Сообщение от павля (Сообщение 489632)
вычислить использую вложенные циклы....
исходные данные: m=15, x(начальное)=0, x(конечное)=3, n=25, x - вычислить...

Во-первых, если "дописать" - то где начало, а во-вторых, что известно про параметр l (эль)?

павля 22.03.2011 10:48

в том то и дело что ничего не известно:(...наверно любое...

AlexZir 22.03.2011 11:13

Мда, формула явно неполная :(

Владимир, полагаю, что ТС просто перепутала слова ;)

Vladimir_S 22.03.2011 21:41

Павля, задачка ровно того же типа, что эта. Так что давайте-ка сами. А мы поможем, если что.

павля 24.03.2011 01:17

вота....НАПИСАЛА:))))....проверте...кажетсь...там всё же чегот не так:((

program..;
uses crt;
var
m,j,k,l:integer;
Nx,Kx,x,y,SH,s1,s2:real;

begin
clrscr;
write('Ввод количества шагов M: ');
readln(m);
write('Ввод начального значения X: ');
readln(Nx);
write('Ввод конечного значения X: ');
readln(Kx);
write('Ввод переменной L: ');
readln(L);
SH:=(Kx-Nx)/m;
x:=Nx;
for k:=1 to m do
begin
for j:=l to m do
s1:=s1+sqr(j+x);
s2:=s2+s1+(k-l/k);
x:=x+SH;
end;
y:=l+20*x+s2;
writeln('y = ',y:2:3);
readln;
end.



благодарю за помощ:))):tehnari_ru_077::tehnari_ru_159::tehnari_ ru_102:

павля 24.03.2011 01:18

большой результат какой-то кажется:(

Vladimir_S 24.03.2011 10:05

Цитата:

Сообщение от павля (Сообщение 490932)
большой результат какой-то кажется:(

Еще бы - если Вы вместо раздельного подсчета двух сумм взяли да вложили один цикл в другой. Таким образом, сумма по j у Вас считается не один раз, а m раз, т.е. при каждом значении k. И всё это идёт "в общий котёл".
Кроме того:
1. Перепутаны циклы по х и по k,j. К первому число m не имеет никакого отношения, интервал по х разбивается на n=25 частей.
2. Нужно вывести не одно значение у, а таблицу у(х).
3. Величина (k-l/k), как и (j+x), под знаком суммы идёт в квадрате, а не в первой степени, как у Вас.
Сейчас исправлю.
Код:

program..;
uses crt;
var
 m,j,k,l,n,i:integer;
 Nx,Kx,x,y,SH,s1,s2:real;

begin
 clrscr;
 write('Ввод количества шагов по k,j (M): ');
 readln(m);
 write('Ввод количества шагов по x (N): ');
 readln(n);
 write('Ввод начального значения X: ');
 readln(Nx);
 write('Ввод конечного значения X: ');
 readln(Kx);
 write('Ввод переменной L: ');
 readln(L);
 SH:=(Kx-Nx)/n;
 S1:=0;
for k:=1 to m do
  S1:=S1+SQR(k-L/k);
 
for i:=0 to n do
  begin
  x:=Nx+i*SH;
 
S2:=0;
  for j:=L to m do
    S2:=S2+SQR(j+x);
  y:=L+x*20+S1+S2;
  Writeln(x:5:3,y:20:5);
  end;
 
readln;
end.


павля 24.03.2011 20:51

хиии...спасибо Вам большое...за всё...СПАСИБО:)


Часовой пояс GMT +4, время: 21:10.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.