Процедура Line. “Звезды на экране”

uses
    graph;
 
var
    g, h, i, j, x, y, x2, y2: integer;
 
begin
    g := detect;
    initgraph(g,h,'');
 
    randomize;
    for i := 1 to 12 do begin
        setcolor(random(15));
        x := random(400) + 100;
        y := random(400) + 100;
        for j := 1 to 10 do begin
            x2 := x + random(40)-20;
            y2 := y + random(40)-20;
            line(x,y, x2, y2);
        end;
    end;
 
readln
end.	

Программа выводит на экран 12 «звездочек», каждая из которых содержит по 10 линий.

Координаты центральной точки каждой звездочки задаются случайным образом в диапазоне от 100 до 500 (400 + 100) пикселей.

Цвет также задается случайным образом.

Длина линий может быть до 20 пикселей и меньше.

Для вывода линии на экран используется процедура Line.

Комментарии

Задача

Вот такая задача:

Составить программу вычисления данного выражения: ___y = ((x^6)*((x-5)^3))/(2*x+1)^5___ Возведение выражений в степень с натуральным показателем оформить в виде функции, как нахождение произведения одинаковых множителей, не используя стандартной математической функции вычисления степени.

Вот мой код, ну полно ошибок, а где - не пойму, пожалуйста помогите:

Program zadacha2;
var 
  a, b, c : real;
  y, x, na, nb, nc, xb, xc : real;
function stup (var x, n: integer): integer;
    var 
      i,k : integer;    
    begin
       k:=1;
       for i := 1 to n do
       k := k * x;
       stup := k;
    end;
  begin
  writeln ('Введите x (число должно быть положительным'); readln (x);
  if x >= 0 then 
  na := 6;
  nb := 3;
  nc := 5;
  xb := x-5;
  xc := 2*x+1;
  a := stup (x,na);
  b := stup (xb, nb);
  c := stup ( xc, nc);
  y := (a*b)/c;
  Writeln ('y=', y);
  end.
 

var a, b, c : real; y,

var 
  a, b, c : real;
  y, x, xb, xc : real;
  na, nb, nc: integer;
function stup (x: real; n: integer): real;
    var 
      i: integer; 
      k: real;   
    begin
       k:=1;
       for i := 1 to n do
            k := k * x;
       stup := k;
    end;
begin
  writeln ('Введите x (число должно быть положительным'); readln (x);
  if x >= 0 then begin
    na := 6;
    nb := 3;
    nc := 5;
    xb := x-5;
    xc := 2*x+1;
    a := stup (x,na);
    b := stup (xb, nb);
    c := stup ( xc, nc);
    y := (a*b)/c;
    Writeln ('y=', y:5:2);
  end;
end.

баг

написал прогу для проверки моей криворукости

uses graph;
var g,h : integer;
begin
        g := detect;
        initgraph(g,h,'C:\EGAVGA.BGI'); {Разумеется, EGAVGA.BGI на месте, на диске C}
        {...}
end.

окно не открывается, в User Screen пишет что-то типа "BGI Error : юзайте Initgraph"

я в Линукс, FreePascal, graph

я в Линукс, FreePascal, graph тоже не работает.

Для паскаля абс графику

Для паскаля абс графику изучать здесь не стоит, там все совсем по другому и упрощено, в турбо паскале ошибка "graph.tpu" которая легко решается: надо зайти в папку паскаля, затем в папку"units" и достать от туда файл по имени graph.tpu, поместя его в папку где сохраняются все программы, тогда ошибку турбо паскаль выдавать не будет, возможно появится проблема с открытием программы( окно открывается и закрывается, либо совсем не открывается, там связано с командой кнопок) во free paskal графика работает норм, так же как и в турбо паскале найти graph.tpu, перенести в папку с сохраненными программами и он откроется. Но free pascal для решения задач мне ненравится, выдает очень много ошибок, очень непонятная"проблема со связью"

Модуль graph

Пишет, что "Модуль graph не найден". По-подробней, пожалуйста, - где его взять и куда поставить?..

попробуйте

uses graphABC;

Здравствуйте! Когда я набираю

Здравствуйте!Когда я набираю в программе graph; то он выдаёт ошибку. Помогите пожайлуста!!!

Какую именно ошибку?

Какую именно ошибку?

А вот такую...

Error15: File not found <Graph.TPU>

Как подключить его? Как я понял это библиотека графическая...

Может быть стоит установить

Может быть стоит установить среду прогаммирования freepascal.
Там модуль graph есть по умолчанию.

И тут он есть...

модуль, она же графическая библиотека, есть и в Турбо 7.1, файл находится в директории Units, но сам Паскаль найти его не может... вопрос куда его запихнуть что бы он определил его...
Freepascal может компилировать программу в .exe?

Для Turbo Pascal 7.1 под

Для Turbo Pascal 7.1 под Windows

  1. Скопируйте файл graph.tpu из каталога units в каталог bin.
  2. Укажите путь к драйверу. Например, так:
    initgraph(g,h,'C:\TP7\BGI');
    Обратите внимание, это путь не к модулю graph, а к совершенно иному компоненту.

Примечания:

  • По умолчанию Turbo Pascal устанавливается в каталог 'Program Files'. При указании пути к драйверу он не находится. Возможно из-за наличия пробелов в адресе. Поэтому пришлось переместить каталог с Turbo Pascal на диск C и переименовать его так, чтобы в пути не было пробелов.
  • В результате удалось запустить графический режим. Однако он имеет низкое разрешение. Для получения лучшего результата возможно требуется указывать конкретный драйвер, а не тот который будет подгружен по умолчанию.

FreePascal

Среда FreePascal почти не отличима от Turbo Pascal и, конечно, включает компилятор (вы сможете создавать exe-файлы). Модуль graph входит в состав среды, и ничего настраивать не требуется. Графический режим имеет высокое разрешение по умолчанию. Программа, написанная выше, тестировалась как раз во FreePascal.

Скопировал Граф в Бин...

Дальше-то что? Откомпилировало без ошибок, но не показывается на экран. КАК??

Разобрался...

Спс все сделал и заработало как нужно... Freepascal визувльно ничем не отличается от Борланда, так что пока пробую себя в нем...
Спс за помощь...

Как?????

Помогите мне, когда запускаю эту программу, пишет ошибку: UNIT Expected. Я пробовал поставить его рядом, а пишет другую ошибку. Помогите...