![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Регистрация: 30.10.2008
Сообщений: 5
|
![]()
само задание:
Задана матрица размером NxM. Получить массив B, присвоив его k-му элементу значение 1, если элементы k–й строки матрицы упорядочены по убыванию, и значение 0 в противном случае. Массивы программа генерирует матрицу но при нажатии на кнопку "решить" вылазит- "invalid floating point operation" procedure TForm1.Button3Click(Sender: TObject); var b,c:extended; begin for i:=1 to N do for j:=1 to N do mas1[i,j]:=StrTofloat(StringGrid1.Cells[i,j]); for i:=1 to N do if (mas1[i,j]=0) and (mas1[i,j]<>0) or (mas1[i,j]=1) and (mas1[i,j]<>1) then begin mas1[i,j]:=c; mas1[i,j]:=mas1[i+1,j]; mas1[i+1,j]:=c; end else mas1[i,j]:=i*0; mas1[i,j]:=c; stringgrid2.Cells[i,j]:=floattostr(mas1[i,j]); end; end. чё тут неправильно? пробовал исправить но ничего не получается а без переведения в string не канает в таблицу вставлять |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 13.11.2008
Сообщений: 14
|
![]()
а mass -ты как описал?? mass array of real? или mass array of extended?
дай все переменные - как ты их описал. |
![]() |
![]() |
![]() |
#3 |
Регистрация: 30.10.2008
Сообщений: 5
|
![]()
const
nmax=100; var Form1: TForm1; Mas1: array[1..Nmax,1..nmax] of extended; b,n,i,j:integer; |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 13.11.2008
Сообщений: 14
|
![]()
а чего у тебя переменная b два раза описана?? это1.
и потом - нужно чтобы все ячейки в StringGrid были заполнены. Или предусматривай ситуацию перед тем как сделать: mas1[i,j]:=StrTofloat(StringGrid1.Cells[i,j]); нужно провести проверку на пустое значение в ячейке. -из-за пустых значений скорее всего у тебя эта ошибка и идет. Так как программа не может пустое перевести во Float. это 2 и чего такое N - оно чему равно? Последний раз редактировалось Deller; 27.11.2008 в 12:58. |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 13.11.2008
Сообщений: 14
|
![]()
твоя логика в задаче не ясна абсолютна. но вроде до рабочего кода я ее докатил.
Код:
mas1[p,k]:=p*1; mas1[p,k]:=c; и еще ячейки в StringGrid начинают с 0 считаться. А массив у тебя начинает с 1 считаться. Нужно учитывать. Это я учел в коде. Сделал для nmax:= 10; Последний раз редактировалось Deller; 27.11.2008 в 13:36. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задачка на массивы | DJ Kost | Помощь студентам | 6 | 14.11.2008 16:18 |
Задачка в delphi, вылазят ошибки... | Absent | Помощь студентам | 3 | 17.02.2008 15:54 |
Массивы Delphi | forumu | Помощь студентам | 2 | 11.01.2008 10:07 |
Задачка на массивы. Проверка и нумерация. | Farfalla | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 27.12.2007 08:53 |