Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.10.2012, 19:33   #1
Abay19941308
Пользователь
 
Регистрация: 29.10.2012
Сообщений: 64
По умолчанию Ошибка в курсовой работе.

Код:
uses graphabc,Events,ABCObjects;
const nmax=10;
type mas=array [1..nmax,1..nmax] of byte;
var Mk:array [1..10, 1..10] of PictureABC;

a: mas; n: byte;ll:PictureABC;i,j,i1,j1:integer;

                     xk,yk: integer;


procedure numb(x,y,n: integer);
begin
ll:=PictureABC.Create(x,y,'e:\êóðñîâàÿ ðàáîòà\bamboo'+inttostr(n)+'.png');
end;


procedure GenMap(var z: mas; var n: byte);
var i,j,ik,jk:byte;
begin
n:=9; ik:=random(n)+1; jk:=random(n)+1;
for i:=1 to n do
    for j:=1 to n do
        begin
        while z[ik,jk]<>0 do
              begin
              ik:=random(n)+1; jk:=random(n)+1;
              end;
        z[ik,jk]:=j;
        end;
end;

procedure DrawMap(z: mas; n: byte);
var i,j: byte; x,y: integer;
begin
n:=9;
for i:=1 to n do
    for j:=1 to n do
        begin
        xk:=25+(43*i); yk:=25+(60*j);
        numb(xk,yk,z[i,j]);
        end;end;

procedure mousedown(x,y,mb:integer);
begin
i1:=i1+1;j1:=j1+1;
Mk[i1,j1]:=pictureABC.create(x,y,'f:\êóðñîâàÿ ðàáîòà\bamboo'+inttostr(a[i,j])+'.png');
a[i1,j1]:=1;
if mk[i1,j1].ptinside(x,y)=true then begin
mk[i,j].destroy;
mk[i+1,j+1].destroy;
end;end;


begin
 GenMap(a,n);
 DrawMap(a,n);
 SetWindowSize(648,496);
 i1:=1;j1:=1;
 onmousedown:=mousedown;
end.
From Stilet: Код нужно выделять спецтегом. Попрошу делать это всегда.
ошибка
0-выход за границы диапазона изменения индкеса 1..10

Помогите решить пожалуйста эту проблему!!!
Заранее очень благодарен!!!
Вложения
Тип файла: rar курсовая работа.rar (719.7 Кб, 7 просмотров)

Последний раз редактировалось Stilet; 29.10.2012 в 21:02.
Abay19941308 вне форума Ответить с цитированием
Старый 29.10.2012, 20:27   #2
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Во-первых:

Код:
procedure mousedown(x,y,mb:integer);
и

Код:
onmousedown:=mousedown;
Не боитесь пересечения пространств имен?

Во-вторых: привязка к полному пути не есть хорошо:

Код:
ll:=PictureABC.Create(x,y,'e:\курсовая работа\bamboo'+inttostr(n)+'.png');
А вдруг на том компьютере, где Вы будете это показывать, диска "е" вообще нет?
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 29.10.2012, 21:00   #3
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

и выделяйте код кнопочкой с #
Poma][a вне форума Ответить с цитированием
Старый 29.10.2012, 21:11   #4
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Если б мне еще сказали, как в ПаскальАБЦ установить точку останова, так я бы быстро нашел, в чем грабли
А так - однозначно могу сказать, что это где-то в процедуре МаузДаун...
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 29.10.2012, 21:13   #5
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
Если б мне еще сказали, как в ПаскальАБЦ установить точку останова, так я бы быстро нашел, в чем грабли
Процитирую Сержа :
Цитата:
мой Вам совет: вообще, выкиньте Вы этих самодельных уродцев (я имею в виду Pascal ABC и Pascal ABC NET) и возьмите либо FreePascal + Lazarus, либо (лучше), если есть возможность, Delphi. и учитесь программировать с помощью настоящих средств разработки, а не этих "псевдо-паскальных" языков..
Poma][a вне форума Ответить с цитированием
Старый 29.10.2012, 21:17   #6
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
Сообщение от Poma][a Посмотреть сообщение
Процитирую Сержа :


Согласен с Сержем. Все это надо переадресовать тем, кто топикстартеру насоветовал/попросил/приказал на pasABC курсач писать
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 29.10.2012, 21:49   #7
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
Все это надо переадресовать тем, кто топикстартеру насоветовал/попросил/приказал на pasABC курсач писать
у меня препод в ПЕДе занятия ведет там только Trubo и Abc, пишу на Abc, только из-за взаимодействия с ОСью и //
Poma][a вне форума Ответить с цитированием
Старый 29.10.2012, 22:02   #8
Abay19941308
Пользователь
 
Регистрация: 29.10.2012
Сообщений: 64
По умолчанию

ну приказывают на pascal abc я то что поделаю на других языках делать не дают!!! Мол новичок еще как на паскале научишься только потом можно на более сложные переходить.Немного с делфи поработал очень понравилось а паскаль это шлак по сравнению с делфи.помогите пожалуйста скоро курсовую сдавать а я уже неделю на этой процедуре застрял.Помогите пожалуйста очень прошу на этом моусдауне на неделю застрял никак сделать немогу невыходит.

Да в маусдаун основная проблема этот паскаль уже полтора года идет уже в горле сидит пожалуйста помогите хоть чуточку!!!

Последний раз редактировалось Stilet; 29.10.2012 в 22:51.
Abay19941308 вне форума Ответить с цитированием
Старый 29.10.2012, 22:06   #9
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
других языках делать не дают
Вы путаете компиляторы и языки.
Цитата:
паскаль это шлак по сравнению с делфи
не соглашусь
Poma][a вне форума Ответить с цитированием
Старый 29.10.2012, 22:09   #10
Abay19941308
Пользователь
 
Регистрация: 29.10.2012
Сообщений: 64
По умолчанию

Ну я незнаю как вам но мне за полтора года паскаль уже приелся,делфи сам по себе очень интересный.
Abay19941308 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в работе с idSMTP nnija Работа с сетью в Delphi 8 22.08.2012 08:44
Ошибка в работе с матрицей(Си++) Alexandr_Snorlax Помощь студентам 2 28.12.2011 17:11
Помогите пожалуйста сделать задания по курсовой работе. Gangzta Помощь студентам 17 12.06.2011 12:11
задача по курсовой работе Эдик1992 Помощь студентам 5 06.04.2011 22:26
Ошибка при работе с БД malevich БД в Delphi 8 25.11.2007 15:10