Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 2
Регистрация: 12.11.2009
Сообщений: 24

Cоздание двух окон, которое одно из них разбито на ячейки и с перемещением курсора по ячейкам.

11.12.2009, 15:05. Показов 698. Ответов 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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
uses crt;
const
Lu=#218;
Ru=#191;
LD=#192;
rd=#217;
H= #196;
V= #179;
X1= 5;
Y1= 2;
X2= 17;
Y2= 9;
x11=25;
y11=2;
x22=37;
y22=9;
Var
 k :integer;
Begin
Clrscr;
Textbackground(black);
Window(x1, y1, x2,y2);
Clrscr;
Write (lu);
For K:=X1+1 to x2-1 do Write (H);
Write (Ru);
for K:=Y1+1 to Y2-1 do
begin
GotoXY(1,K-y1+1);
Write(v);
gotoXY(x2-x1+1,WhereY);
Write(V);
end;
Write(LD);
window (x1,y1,x2,y2+1);
GotoXY(2,y2-y1+1);
for K:=X1+1 to x2-1 do Write(H);
Write(RD);
TextBackground(red);
Window (x11,y11,x22,y22);
Write (lu);
For K:=X11+1 to x22-1 do Write (H);
Write (Ru);
for K:=Y11+1 to Y22-1 do
begin
GotoXY(1,K-y11+1);
Write(v);
gotoXY(x22-x11+1,WhereY);
Write(V);
end;
Write(LD);
window (x11,y11,x22,y22+1);
GotoXY(2,y2-y1+1);
for K:=X11+1 to x22-1 do Write(H);
Write(RD);
readln;
end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.12.2009, 15:05
Ответы с готовыми решениями:

Одновременное выделение цветом отдельных слов в таблице при наведении курсора на одно из них
Здравствуйте! Прошу помочь в одном вопросе. Сразу скажу, что html и css изучаю, как три дня, поэтому тапками не кидать. Дано: Имеется...

Даны три числа. Проверить, не является ли одно из них суммой двух других.
Пожалуйста помогите я не знаю как её сделать =((( Вводятся три произвольных числа. Проверить, не является ли одно из них суммой двух...

Вводятся три произвольных числа А, В и С. Проверьте, не является ли одно из них суммой двух других
Срочно нужна помощь!!! ОООчень слабо шарю в Паскале... Напишите плиз задачку с кодом... Вводятся три произвольных числа А, В и С....


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

Или воспользуйтесь поиском по форуму:
2
0 / 0 / 2
Регистрация: 12.11.2009
Сообщений: 24
11.12.2009, 20:11  [ТС]
Пожалуйста помогите!!!
0
0 / 0 / 2
Регистрация: 12.11.2009
Сообщений: 24
11.12.2009, 23:34  [ТС]
Вот сначала начал Получилось разбить на ячейки И двигать курсор, но теперь При нажатие Enter чтобы отображалось окно того цвета на котором курсор, выбивает на пол экрана и серое. У меня только пока что на Зелёном цвете установлено.В чём мои ошибки?
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
uses crt,graph;
const
Lu=#218;
Ru=#191;
LD=#192;
rd=#217;
H= #196;
V= #179;
X1= 25;
Y1= 5;
X2= 40;
Y2= 20;
type Point=record
           x,y,x1,y1:integer;
           end;
           var
           K:integer;
procedure Zel;
begin
Textbackground(green);
Window(x1, y1, x2,y2);
Clrscr;
Write (lu);
For K:=X1+1 to x2-1 do Write (H);
Write (Ru);
for K:=Y1+1 to Y2-1 do
begin
GotoXY(1,K-y1+1);
Write(v);
gotoXY(x2-x1+1,WhereY);
Write(V);
end;
Write(LD);
window (x1,y1,x2,y2+1);
GotoXY(2,y2-y1+1);
for K:=X1+1 to x2-1 do Write(H);
Write(RD);
end;
procedure menyu;
var x,y,x1,y1:integer;
    i,c:byte;
    a:Point;
    move:boolean;
    k:char;
begin
{ knopoki}
x:=1;y:=10;
for i:=1 to 3 do
  begin
   y:=10+20*(i-1);
   Setcolor(i+1);
   Rectangle(x,y,x+90,y+20);
   Setfillstyle(1,i+1);
   Bar(x,y,x+90,y+20);
 end;
{nazvani9 knopak}
Setcolor(0);
outtextxy(5,18,'Green');
outtextxy(5,38,'Blue');
outtextxy(5,58,'Red');
{sozdanie i dvizenie kursora}
a.x:=80;a.y:=78;{nachalbnoe pologenie kursora}
move:=true;
repeat
if keypressed then
   begin
     k:=readkey;
     if k=#80 then
       begin
        a.y1:=a.y;
        a.x1:=a.x;
        a.y:=a.y+20;
        move:=true;
       end;
     if k=#72 then
       begin
        a.y1:=a.y;
        a.x1:=a.x;
        a.y:=a.y-20;
        move:=true;
       end;
      if (k=#13)and (a.y=18) then Zel; 
    end;
if move then
    begin
      if a.y1=18 then c:=2
      else if a.y1=38 then c:=3
      else if a.y1=58 then c:=4
      else c:=0;
      Setcolor(c);
      Circle(a.x1,a.y1,5);
      Setfillstyle(1,c);
      Fillellipse(a.x1,a.y1,5,5);
      Setcolor(12);
      Circle(a.x,a.y,5);
      Setfillstyle(1,12);
      Fillellipse(a.x,a.y,5,5);
      move:=false;
    end;
until k=#27;
end;
 
var gd,gm:integer;
begin
gd:=detect;
initgraph(gd,gm,'');
menyu;
closegraph;
end.
Нашёл ошибку=) Почему на пол экрана. А с серым окном не разобрался почему.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru