0 / 0 / 0
Регистрация: 19.08.2016
Сообщений: 11
1

Программа приостанавливается

30.09.2016, 00:16. Показов 1072. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Компилируется но потом виндовс останавливает выполнение...
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Uses graphABC,Events,crt;
 
const n = 10;
 
var X,Y,R : array [1..n] of integer;
    i : byte;
    
 procedure MouseDown(x,y,md : integer);
begin
 Clrscr;
end;   
 
begin
 
SetWindowSize(600,400);
SetBrushColor(ClYellow);
 
For i := 1 to n do
begin
 R[i] := Random(50) + 20;
 X[i] := Random(300) + 200;
 Y[i] := Random(200) + 100;
 Circle(X[i],Y[i],R[i]);
 OnMouseDown := MouseDown;
  end;
end.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.09.2016, 00:16
Ответы с готовыми решениями:

Программа приостанавливается на цикле while
При выполнении программы возникла такая неприятность: после старта останавливается на одном месте и...

Java FX – Поток приостанавливается некорректно
Всем привет. Пытаюсь написать симулятор чата, который генерирует сообщения в отдельном потоке. Этот...

WindowsMediaPlayer (WMP) и WPF DispatcherTimer: воспроизведение приостанавливается
Проблема возникла при создании простенького mp3-плеера. Через таймер сделал изменение позиции...

Программа не может быть запущена, т.к. на Вашем компьютере установлена программа-эмулятор
При запуске лицензионной детской игровой программы выскакивает сообщение: Программа не может быть...

5
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
30.09.2016, 05:02 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

так что-ли надо?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Uses graphABC;
 
const n = 10;
 
var X,Y,R : array [1..n] of integer;
    i : byte;
    finish:boolean;
procedure MouseDown(x,y,md : integer);
begin
 Window.Clear; //очистка графического окна - клик мыши
end;   
 
procedure KP(c:integer);
begin
 finish:=c=VK_Escape; //выход - Esc
end;
 
begin
 
SetWindowSize(600,400);
//SetBrushColor(ClYellow);
 OnMouseDown := MouseDown;
 OnKeyUp:=KP;
finish:=false;
repeat
  For i := 1 to n do
  begin
   R[i] := Random(50) + 20;
   X[i] := Random(300) + 200;
   Y[i] := Random(200) + 100;
   SetBrushColor(clRandom);   
   Circle(X[i],Y[i],R[i]);
  sleep(100);   
  end;
until finish;
  Window.Close;
end.
0
0 / 0 / 0
Регистрация: 19.08.2016
Сообщений: 11
30.09.2016, 19:39  [ТС] 3
Joy, Почти
хотел что бы,был круг пока я не нажму на него после чего он исчезает...
Спасибо)
0
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
01.10.2016, 02:08 4

Не по теме:

тогда здесь все не так...



Добавлено через 1 минуту
Исчезать должен верхний круг? Или любой нажатый?

Добавлено через 1 минуту
Если один круг лежит на другом убирать какой или оба?
0
147 / 128 / 155
Регистрация: 22.03.2016
Сообщений: 502
03.10.2016, 09:10 5
Цитата Сообщение от troshe4ka Посмотреть сообщение
хотел что бы,был круг пока я не нажму на него после чего он исчезает...
Спасибо)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
uses ABCObjects, GraphABC;
const
  rmn = 5;  //Минимальный радиус окружности
  rmx = 40;  //Максимальный радиус окружности
type
  circles = class
    public x: integer;
    public y: integer;
    public r: integer;
    public c_obj_: ABCObjects.CircleABC;
    public procedure Print_(cl: integer);
      begin
        self.c_obj_:= ABCObjects.CircleABC.Create(x,y,r,System.Drawing.Color.FromArgb(cl));
      end;
    constructor create(x,y,r,cl: integer);
      begin
        self.x:= x;
        self.y:= y;
        self.r:= r;
        Print_(cl);
      end;
    public procedure erase_();
      begin
        self.c_obj_.Destroy;
        ABCObjects.RedrawObjects;
      end;
  end;
var
  obj_: List<circles>:= new List<circles>;
function CreateCircle(): circles;
  begin
    Result:= circles.create(Random(graphABC.Window.Width-rmx*2+1)+rmx,Random(graphABC.Window.Height-rmx*2+1)+rmx,Random(rmx-rmn*2+1)+rmn,Random(integer.MaxValue));
  end;
procedure main();
  begin
    var o:= ABCObjects.TextABC.Create(1,1,12,'Введите количество окружностей');
    for var i:= 1 to ReadInteger() do
      begin
        obj_.Add(CreateCircle());
      end;
  end;
procedure MouseDown(x, y, mk: integer);
  begin
    foreach var obj in obj_ do
      if obj.c_obj_.PtInside(x, y) and (mk = 1)
        then
          begin
            obj_.Remove(obj);
            obj.erase_;
            obj_.Add(CreateCircle());
            break;
          end;
  end;
begin
  GraphABC.OnMouseDown += MouseDown;
  Randomize;
  main;
end.
0
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
03.10.2016, 12:56 6
то-же самое, только убираем верхний круг:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
uses GraphAbc,ABCObjects;
var
  L:List<CircleABC>:=new List<CircleABC>;
  n,i:integer;
  
Procedure AddCircle;
var
  R:integer;
begin
  r:=Random(5,40);
  l.Add(CircleABC.Create(Random(R,WindowWidth-R),Random(R,WindowHeight-R),R,clRandom));  
end;
 
procedure MouseDown(x,y,mk:integer);
var
  i:integer;
begin
  if mk=1 then 
    for i:=l.Count-1 downto 0 do begin
      if l[i].PtInside(x,y) then begin 
        l[i].Destroy;
        ABCObjects.RedrawObjects;
        l.Remove(l[i]);
        AddCircle;
        break;
     end;   
    end; 
end;
 
begin
  randomize;
  n:=ReadInteger('Введите количество кругов:');
  ClearWindow;
  for i:=1 to n do AddCircle;
  OnMouseDown:=MouseDown;
end.
0
03.10.2016, 12:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.10.2016, 12:56
Помогаю со студенческими работами здесь

Программа подсчета числа неуспевающих и программа поиска владельца автомобиля...
Помогите пожалуйста решить 2 задачи: Составьте программу подсчета числа неуспевающих по...

Квин-программа, или программа, печатающая свой исходный текст
Задаю этот вопрос под влиянием этой темы и предлагаю решение: Sub Kvin() Dim A(1 To 13) As...

Программа циков с неизвестным число повторений и программа с внутренним ветвлением
1.Дано натуральное число n. Получить наименьшее натуральное число вида m в степени 2, превосходящее...

Не могу понять почему программа не выводит результат (простейшая программа)
Здравствуйте уважаемые форумчане! Я начал изучать C++ при помощи книги. На днях я столкнулся со...

Программа с метками и оператором перехода GOTO. Программа с циклом полусловия
Задача №9. Прошу вас, помогите. Не знаю как решать вообще.

Программа , которая выводит время, за которое программа работает
Вообщем, нужно что бы считалось время от начала работы программы, и выводилось на экран.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru