Есть ответ 👍

Подалуйста составьте программу для построения любого графика в pascalabc(ну там y=x в квадрате,или y=x в кубе.и подобные). вас прошу.

143
488
Посмотреть ответы 2

Ответы на вопрос:

Dasha826251
4,7(87 оценок)

uses

  graphabc; //подключаем графический модуль

const

  w = 800; h = 500; //размеры графического окна

function f(x: real): real;

begin

  f : = (x + 1) * (x - 2) * (x - 3); //функция

end;

var

  x0, y0, x, y, xleft, yleft, xright, yright, n: integer;

  a, b, fmin, fmax, x1, y1, mx, my, dx, dy, num: real;

  i: byte;

  s: string;

begin

  setwindowsize(w, h); //устанавливаем размеры графического окна

  //координаты левой верхней границы системы координат:

  xleft : = 50;

  yleft : = 50;

  //координаты правой нижней границы системы координат:

  xright : = w - 50;

  yright : = h - 50;

  //интервал по х; a и b должно нацело делится на dx:

  a : = -2; b : = 6; dx : = 0.5;

  //интервал по y; fmin и fmax должно нацело делится на dy:

  fmin : = -10; fmax : = 20; dy : = 2;

  //устанавливаем масштаб:

  mx : = (xright - xleft) / (b - a); //масштаб по х

  my : = (yright - yleft) / (fmax - fmin); //масштаб по y

  //начало координат:

  x0 : = trunc(abs(a) * mx) + xleft;

  y0 : = yright - trunc(abs(fmin) * my);

  //рисуем оси координат:

  line(xleft, y0, xright + 10, y0); //ось ох

  line(x0, yleft - 10, x0, yright); //ось оy

  setfontsize(12); //размер шрифта

  setfontcolor(clblue); //цвет шрифта

  textout(xright + 20, y0 - 15, 'x'); //подписываем ось ox

  textout(x0 - 10, yleft - 30, 'y'); //подписываем ось oy

  setfontsize(8); //размер шрифта

  setfontcolor(clred); //цвет шрифта

  { засечки по оси ox: }

  n : = round((b - a) / dx) + 1; //количество засечек по ох

  for i : = 1 to n do

  begin

    num : = a + (i - 1) * dx; //координата на оси ох

    x : = xleft + trunc(mx * (num - a)); //координата num в окне

    line(x, y0 - 3, x, y0 + 3); //рисуем засечки на оси ox

    str(num: 0: 1, s);

    if abs(num) > 1e-15 then //исключаем 0 на оси ox

      textout(x - textwidth(s) div 2, y0 + 10, s)

  end;

  { засечки на оси oy: }

  n : = round((fmax - fmin) / dy) + 1; //количество засечек по оy

  for i : = 1 to n do

  begin

    num : = fmin + (i - 1) * dy; //координата на оси оy

    y : = yright - trunc(my * (num - fmin));

    line(x0 - 3, y, x0 + 3, y); //рисуем засечки на оси oy

    str(num: 0: 0, s);

    if abs(num) > 1e-15 then //исключаем 0 на оси oy

      textout(x0 + 7, y - textheight(s) div 2, s)

  end;

  textout(x0 - 10, y0 + 10, '0'); //нулевая точка

  { график функции строим по точкам: }

  x1 : = a; //начальное значение аргумента

  while x1 < = b do

  begin

    y1 : = f(x1); //вычисляем значение функции

    x : = x0 + round(x1 * mx); //координата х в графическом окне

    y : = y0 - round(y1 * my); //координата y в графическом окне

    //если y попадает в границы [yleft; yright], то ставим точку:

    if (y > = yleft) and (y < = yright) then setpixel(x, y, clgreen);

    x1 : = x1 + 0.001 //увеличиваем абсциссу

  end

end.


Решение: разделим число  513  на  два  ( 2 - это основание системы счисления). делить будем с остатком, частное запишем в столбец "част.", а остаток в столбец "ост.". затем полученное частное снова разделим на  два  и новое частное и остаток также распределим по столбцам (см. ниже). повторять деление будем до тех пор, пока последнее частное не окажется меньше двух. част.ост.513 : 2 =256  1256 : 2 =128  0128 : 2 =64  064 : 2 =32  032 : 2 =16  016 : 2 =8  08 : 2 =4  04 : 2 =2  02 : 2 =1  0теперь мы можем записать число  513  в двоичной системе счисления. для этого в старший (самый левый) разряд числа запишем последнее частное (выделено жирным), а в следующие, по порядку, разряды запишем все полученные выше остатки, беря их снизу вверх. то есть, в самом младшем разряде оказывается самый верхний остаток.ответ:         51310  =  10000000012

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS