Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Паскаль
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 01.06.2012, 20:21   #1
Nikitos_
Пользователь
 
Регистрация: 30.05.2012
Сообщений: 32
Репутация: -2
Восклицание ПОСМОТРИТЕ В ЧЁМ ОШИБКА

КАЧУ СДЕЛАТЬ ЧТОБЫ КРАСНЫЙ КВАДРАТ ДВИГАЛСЯ А ОН НЕ ДВИГАЕТСЯ НЕ МОГУ ПОНЯТЬ ИЗ ЗА ЧЕГО ПОСМОТРИТЕ
Код:
Program fift;
uses crt,graph;
const
n=4;
type mas=array[1..n,1..n] of integer;

VAR gm,gd,ch,vx,vy,l,i,j,n1,b:integer;
a:mas;
o:char;
procedure  zastavka;
 begin
 end;
procedure kvadrat(x,y,c,k:integer) ;
var i,j:integer;
begin
for i:=0 to k-1 do
for j:=0 to k-1 do
rectangle(x+i*c,y+j*c,x+i*c+c,y+j*c+c);

end;



procedure massiv;
var
i,j,k: integer;
s: set of byte;
begin
s:=[];

randomize;
for i:=1 to n do   begin
for j:=1 to n do begin
repeat
k:=random(16)+1;
until not (k in s );
a[i,j]:=k; s:=s+[k];

end ;
end;
end;

procedure odin (x,y,h:integer);
var i,j,d:integer;
ds:string;
begin
for i:=0 to 4-1 do
for j:=0 to 4-1   do    begin
d:=a[i+1,j+1];
str(d,ds);

if d<>16 then
outtextXY (x+h div 2+h*j,y+h div 2+h*i, ds);
end;
end;
procedure pusto(i,j:integer);
begin

for i:=1 to n do
for j:=1 to n do
if a[i,j]=16 then
floodfill(vx+n,vy+n,15);

end;
procedure kvadrat2(i,j,h,j1:integer);
begin
j1:=red;
setcolor(j1);
rectangle(i+2,j+2,i+h-2,j+h-2);
end;
procedure dvig(i,j,h,j1:integer);

begin
if keypressed then
begin
o:=readkey;
end;

if o=#115 then
begin
delay(100);
kvadrat2(i,j,h,0);
j:=j-h;
kvadrat2(i,j,h,j1);
end;


if o=#119 then
begin
delay(100);
kvadrat2(i,j,h,0);
j:=j+h;
kvadrat2(i,j,h,j1);
end;

if o=#100 then
begin
delay(100);
kvadrat2(i,j,h,0);
i:=i+h;
kvadrat2(i,j,h,j1);
end;

if o=#97 then
begin
delay(100);
kvadrat2(i,j,h,0);
i:=i-h;
kvadrat2(i,j,h,j1);

end;

if o=#27 then exit;
end;
BEGIN
gd:=detect;
Initgraph(gm,gd,'C:\TP7.1\TP\BGI');
vx:=250;
vy:=200;
l:=60;
ch:=4;
n1:=red;
kvadrat2(vx,vy,l,n1);
setcolor(15);
massiv;
kvadrat(vx,vy,l,ch);

odin(vx,vy,l) ;


outtext('exit "enter"');

repeat;
dvig(vx,vy,l,n1);
until o=#27;

end.
Nikitos_ вне форума   Ответить с цитированием
Старый 01.06.2012, 21:33   #2
zhenka619
Дурачок
Пользователь
 
Регистрация: 29.12.2011
Сообщений: 33
Репутация: 13
По умолчанию Форматируй текст, смотреть неприятно!

можешь поосмотреть мой исходник, там танк (прямоугольник) глючит когда стреляет но двигается он норм!!
http://www.cyberforum.ru/pascal/thread592851.html
zhenka619 вне форума   Ответить с цитированием
Старый 01.06.2012, 22:08   #3
Nikitos_
Пользователь
 
Регистрация: 30.05.2012
Сообщений: 32
Репутация: -2
По умолчанию

он тоже не двигается походу((
Nikitos_ вне форума   Ответить с цитированием
Старый 02.06.2012, 00:28   #4
zhenka619
Дурачок
Пользователь
 
Регистрация: 29.12.2011
Сообщений: 33
Репутация: 13
По умолчанию Наоборот двигается

Просто компилируй не free pascal а turbo pascal!!!(free pascal не читает кнопки!!!)
zhenka619 вне форума   Ответить с цитированием
Старый 02.06.2012, 01:59   #5
TinMan
Участник клуба
 
Аватар для TinMan
 
Регистрация: 05.09.2011
Сообщений: 869
Репутация: 728
По умолчанию

Цитата:
Сообщение от zhenka619 Посмотреть сообщение
Просто компилируй не free pascal а turbo pascal!!!(free pascal не читает кнопки!!!)
женька619, не надо людей вводить в заблуждение и перетягивать обратно на старье..
FreePascal прекрасно читает "кнопки" (клавиши, если точнее). Просто надо в строке USES вместо CRT поставить WinCRT.
__________________
Предпочитаю на "ты".
TinMan вне форума   Ответить с цитированием
Старый 02.06.2012, 13:30   #6
Nikitos_
Пользователь
 
Регистрация: 30.05.2012
Сообщений: 32
Репутация: -2
По умолчанию

поставил я WinCRT, и толку то, раньше хоть клавишу ESC выходило из программи а сейчас и она не действует
Nikitos_ вне форума   Ответить с цитированием
Старый 02.06.2012, 13:33   #7
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,883
Репутация: 1941
По умолчанию

Free Pascal открывает 2 окна - одно для графики, другое для чтение\вывода, переключаешься между окнами и в выводе жмем свой "ESC"...
Poma][a вне форума   Ответить с цитированием
Старый 02.06.2012, 13:43   #8
Nikitos_
Пользователь
 
Регистрация: 30.05.2012
Сообщений: 32
Репутация: -2
По умолчанию

это я знаю но он всё равно не выходит

а может вы ещё знаете как сделать чтобы пустой квадрат в игре пятнашки появлялся всегда в нижнем правом угло, а он у меня постоянно рондомом появляется

Последний раз редактировалось Stilet; 02.06.2012 в 14:14.
Nikitos_ вне форума   Ответить с цитированием
Старый 02.06.2012, 14:47   #9
TinMan
Участник клуба
 
Аватар для TinMan
 
Регистрация: 05.09.2011
Сообщений: 869
Репутация: 728
По умолчанию

Цитата:
Сообщение от Poma][a Посмотреть сообщение
Free Pascal открывает 2 окна - одно для графики, другое для чтение\вывода, переключаешься между окнами и в выводе жмем свой "ESC"...
Ромаха, не сбивай народ с толку. Не надо никаких переключений между окнами, если используешь WinCRT.

По Esc прекрасно выходит. И вообще, я отвечал на пост zhenka619. Никитос, я понимаю, что у тебя проблемы с движением квадрата, но на это я не отвечал. Если хочешь - посмотрю, но не сейчас..
__________________
Предпочитаю на "ты".
TinMan вне форума   Ответить с цитированием
Старый 02.06.2012, 14:56   #10
Nikitos_
Пользователь
 
Регистрация: 30.05.2012
Сообщений: 32
Репутация: -2
По умолчанию

посмотри плиз
Nikitos_ вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В чём ошибка? kotaina Общие вопросы Delphi 0 24.06.2011 16:36
Посмотрите в чём ошибка процедуры PrintFile. Программа останавливается. Антон Лысенко Помощь студентам 11 26.12.2010 22:07
Посмотрите в чем ошибка Никуля_усталая Помощь студентам 8 13.11.2010 23:05
в чём ошибка артём1 Помощь студентам 1 02.11.2010 02:11


10:56.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru