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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.12.2012, 15:33   #11
tp7
Пользователь
 
Регистрация: 06.12.2012
Сообщений: 16
По умолчанию

Спасибо всем кто помог , я немного тупанул с циклом.ТЕПЕРЬ ВСЁ РАБОТАЕТ!!Задание было следующим : вычислить сложную функцию , результаты расчётов вывести в таблицу и записать в файл,найти мин и мах значения y среди чётных и не чётных j.А теперь самое главное-построить график.Код по графику я написал по образцу , поэтому не могли бы вы мне объяснить следующее:
1)Почему когда производится округление trunc выражения в скобках умножаются на mas или mas2 т.е. для чего они нyжны и вчём их смысл?
2)И может кто-нибудь знает как увеличить масштаб график в 2 раза?

Заранее благодарен!
Код HTML:
program funccia;
Uses crt, graph;
const

      b=1.6;
      mas=50;
      mas2=5.3;

var F:text;
    w:string;
  x,y: array[1..20] of real;
    gd, gm,  k,    j:integer;
  factorial : longint;
    m,s,i,n :byte;
ymaxc,ymaxn, yminc, c,yminn, a,z : real;

     begin
   clrscr;
writeln('vvedite i,m (¤® 12) ');
readln(i,m);

    begin
    factorial:= 1;
    for n:=2 to i do
  factorial:= factorial*n;
a:=b/factorial ;

end;

begin
z:=1;
for s:=1 to m do
z:=z*a ;
writeln('z=',z);
end;

 For j:=1 to i do
 begin
x[j]:=0;c:=a/100;
for i:=1 to j do
 x[j]:=x[j]+c;

  end;

  for j:=1 to m do
  begin
if abs(z)<0.9 then
 y[j]:=((arctan((2*x[j])/sqrt(1-2*x[j]*2*x[j])))/b*cos(x[j]))+j
 else
   y[j]:=3.9+5*z+j; k:=0;
  end;
 begin
  k:=0;
  yminn:=y[1];
  yminc:=y[2];
  for j:=1 to i do
  begin
    if (j mod 2=0) then
    begin
      k:=k+1;
      if yminc>y[j] then yminc:=y[j];
    end
    else k:=k+1;
    if yminn>y[j] then yminn:=y[j];
    end;
       begin
  k:=0;
  ymaxn:=y[1];
  ymaxc:=y[2];
  for j:=1 to i do
  begin
    if (j mod 2=0) then
    begin
      k:=k+1;
      if ymaxc<y[j] then ymaxc:=y[j];
    end
    else begin k:=k+1;
    if ymaxn<y[j] then ymaxn:=y[j] ;  end;
    end;

  writeln('========================================');
  writeln('I   j   I       x      I       y       I');
  writeln('========================================');
              for j:=1 to i do
    writeln ('I  ',j:2,'   I ',x[j]:3:10,' I ',y[j]:3:9,'   I');
  writeln('========================================');
  writeln ('ЊЁ*Ё¬*«м*®Ґ §**зҐ*ЁҐ г ¤«п зсв*ле j:',yminc:3:10);
   writeln ('ЊЁ*Ё¬*«м*®Ґ §**зҐ*ЁҐ г ¤«п *Ґ зсв*ле j:',yminn:3:10);
   writeln ('Њ*ЄбЁ¬*«м*®Ґ §**зҐ*ЁҐ г ¤«п зсв*ле j:',ymaxc:3:10);
   writeln ('Њ*ЄбЁ¬*«м*®Ґ §**зҐ*ЁҐ г ¤«п *Ґ зсв*ле j:',ymaxn:3:10);
 readln;

end;
   end; begin
   assign(F,'rot.txt');
   rewrite(F);
writeln(F,'========================================');
  writeln(F,'I   j   I       x      I       y       I');
  writeln(F,'========================================');
   for j:=1 to i do
   writeln(F,'I  ',j:2,'   I ',x[j]:3:10,' I ',y[j]:3:9,'   I');
     writeln(F,'========================================');
  writeln (F,'Minimalnoe znachenie y dla chetnih j',yminc:7:2);
   writeln (F,'Minimalnoe znachenie y dla ne chetnih j',yminn:7:2);
    writeln (F,'Maksimalnoe znchenie y dla chetnih j',ymaxc:7:2);
   writeln (F,'Maksimalnoe znachenie y dla ne chetnih j',ymaxn:7:2) ;
   close(F);end;
   gd:=detect;
  initgraph(gd,gm,'');
   SetBkColor (15);

   cleardevice;
    setcolor(8);
     cleardevice;
  line(10, 700, 1300, 700);
  line(10, 10, 10, 700);
  j:=1;
  OutTextXY(15,10,'y');
  OutTextXY(1320,690,'x');
  SetBkColor (14);
  moveto(-35+trunc(j*mas),500-trunc(y[j]*mas2));
  for j:=1 to i do
 begin
  lineto(-35+trunc(j*mas),500-trunc(y[j]*mas2));
  circle(-35+trunc(j*mas),500-trunc(y[j]*mas2),2);
 end;
 readln;
 closegraph;
   end.
P.S. код написан в фри паскале .
tp7 вне форума Ответить с цитированием
Старый 09.12.2012, 16:24   #12
tp7
Пользователь
 
Регистрация: 06.12.2012
Сообщений: 16
По умолчанию

Пока никто не знал , я уже нашёл:
1)масштабы по осям
2)увеличить масштабы.
Свмому стало смешно что спрашивал
tp7 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вычисление значения функции и переменных, вычисление площади треугольника, определение расстояния между точками на турбо паскале _4Alex4_ Помощь студентам 2 14.12.2011 01:43
Вычисление функции Lion8990 Помощь студентам 3 16.12.2010 00:57
вычисление функции Roker Помощь студентам 0 19.12.2009 00:07
Вычисление функции XSGRAFF Общие вопросы C/C++ 4 25.05.2009 22:56