profile
Опубликовано 5 лет назад по предмету Информатика от homenyk99

Программирование,11 класс!!!
Протабулируйте функцию на промежутке y=xcos2x на промежутке (-2:2) с шагом 0,2 и вычислите количество положительных значений!!!!!

  1. Ответ
    Ответ дан petyaGavrikov
    const xn=-2; xk=2; h=0.2;
    var x,y:real; i,n,k:integer;
    begin
    x:=xn-h;
    n:=round((xk-xn)/h)+1;
    k:=0;
    writeln(' x     y');
    for i:=1 to n do
     begin
     x:=x+h;
     y:=x*cos(2*x);
     if y>0 then k:=k+1;
     writeln(x:4:1,y:7:3);
     end;
    writeln('k=',k);
    end.

    Результат:
     x     y
    -2.0  1.307
    -1.8  1.614
    -1.6  1.597
    -1.4  1.319
    -1.2  0.885
    -1.0  0.416
    -0.8  0.023
    -0.6 -0.217
    -0.4 -0.279
    -0.2 -0.184
     0.0  0.000
     0.2  0.184
     0.4  0.279
     0.6  0.217
     0.8 -0.023
     1.0 -0.416
     1.2 -0.885
     1.4 -1.319
     1.6 -1.597
     1.8 -1.614
     2.0 -1.307
    k=10
  2. Ответ
    Ответ дан srzontmp
    var x,y,h: real;    k: integer;begin  h:=0.2;  x:=-2+h;  k:=0;  repeat    y:=x*cos(2*x);    if y>0 then k:=k+1;    x:=x+h;  until x>2-h;  if k>0 then writeln('количество положительных:  ',k)  else writeln('нет положительных значений');end.
    1. Ответ
      Ответ дан srzontmp
      Интервал открытый (-2,2) ->  значения  - 2  и +2  не входят
    2. Ответ
      Ответ дан homenyk99
      else writeln('нет положительных значений')-тогда это ошибка?
    3. Ответ
      Ответ дан srzontmp
      Это не ошибка, а для универсальности программы, т.к. можно задать и другой интервал, на котором нет положительных значений.
    4. Ответ
      Ответ дан homenyk99
      Извините пожалуйста,можете написать именно так,как это должно выглядеть?Просто вообще ничего не понимаю в этом((
    5. Ответ
      Ответ дан srzontmp
      Ответ записан. Просто копируете его и запускаете программу.  Оба варианта работоспособны.  Какой Вас устраивает - выбирать Вам.