![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
![]() как реализовать такую проверку: в гриде(10*10),в случайной ячейке стоит число,мы заполняем какие либо ячейки еденицами.ВНИМАНИЕ ВОПРОС: проверить чтоб сумма единиц в строке и столбце,на пересечении которых находится ячейка(с числом) была равна этому числу?
П.С.задолбался с курсачом lmikle: Предупреждение. Желтым не видно. Не заставляйте других ломать глаза. Последний раз редактировалось lmikle, 21.04.2014 в 01:02. |
#2
|
|||
|
|||
![]() И в чем проблема?
Код:
var C, R : Integer; N : Integer; I : Integer; S : Integer; begin // Генерируем позицию и само число C := Random(10); R := Random(10); N := Random(10); StringGrid1.Cell[C,R] := N; // Считаем сумму по строке и столбцу S := 0; For I := 0 To 9 Do S := S + TryStrToInt(StringGrid.Cell[C,I]) + TryStrToInt(StringGrid1.Cell[I,R]); // Проверяем If S = 3*N Then ShowMessage('Совпадает!') Else ShowMessage('Не совпадает!'); end; |
#3
|
||||
|
||||
![]() не работает! пишет ошибку: ..is not valid integer value...
![]() |
#4
|
|||
|
|||
![]() ..is not valid integer value...
дословный перевод: ...не есть правильное целое число... |
Этот пользователь сказал Спасибо icWasya за это полезное сообщение: | ||
Alegun (21.04.2014)
|
#5
|
||||
|
||||
![]() СПАСИБО КЭП.Я тоже английский знаю.
Вот вобщем кусок кода, в котором ошибка. Код:
procedure TForm1.Button2Click(Sender: TObject); begin if M[k,kk]='' then //массив стринговый M[k,kk]:='0'; if M[k,kk]<>'0' then znach:=strtoint(M[k,kk]); ii:=1; summ:=0; while ii<9 do begin ii:=ii+1; summ:=summ+ StrToInt(M[k,ii] + M[ii,kk]); end; if summ=znach then ShowMessage('Verno') else ShowMessage('Ne verno'); end; |
#6
|
||||
|
||||
![]() Оффтоп:
ТС hsMapk, вы поакуратнее с выражениями-то будьте - УК icWasya не смотря на репутацию (это временно) проверенный, надёжный товарищ, многих бедолаг, типа вас выручал - КЭПов у нас нет ![]() По теме: Замените ii:=ii+1; на Inc(ii); и summ:=summ+ StrToInt(M[k,ii] + M[ii,kk]); на Inc(summ, StrToInt(M[k,ii]) + StrToInt(M[ii,kk])); , здесь возможен выход за пределы диапазона типа интеджер З.Ы. Капитан Очевидность это подтверждает :-) Я не понял Вашего вопроса, но всё же Вам на него отвечу! Последний раз редактировалось Alegun, 22.04.2014 в 12:55. |