![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 16.10.2010
Сообщений: 24
|
![]()
Доброго времени суток. Помогите, пожалуйста, решить задачу
Нужно проверить, являются ли два массива одинаковыми Вот код: Код:
Код:
Заранее спасибо за помощь |
![]() |
![]() |
![]() |
#2 |
Очень суровый
Участник клуба
Регистрация: 17.12.2009
Сообщений: 1,988
|
![]()
Я в Delphi не работаю, но попробую объяснить.
1. Вместо имени mas лучше использовать что-то другое, например NewMas. В идеале вот тут хорошо бы поставить break; Код:
Код:
Ненавижу быть как все, но люблю, чтобы все были как я.
Последний раз редактировалось MyLastHit; 16.09.2011 в 20:41. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 16.10.2010
Сообщений: 24
|
![]()
Сделал все, как вы сказали - поставил break в цикле проверки, поставил randomize и заменил mas и masdva на newmas и newmasdva, но программа по прежнему не работает без ввода массива. Мне кажется, что в процедуре rand он просто не сохраняет значения ячеек массива, которые сам сгенерировал, и поэтому приходится их брать из заполненных массивов, где они сохранились. Может быть, я неправильно описал глобальный массив или задал тип? Просто делал все так же, как делали на паре, но почему то не работает (
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 16.09.2011
Сообщений: 114
|
![]()
Не работает, потому что массивы ВСЕГДА РАВНЫ!
В заголовке Procedure rand(mas:mymas;t:TStringGrid); перед mas нужно написать var. Если хочешь, чтобы значения передаваемых в процедуру параметров, при изменении их в процедуре, заменялись новыми, а не возвращались к предыдущим, нужно писать перед параметром var. Т.е. Procedure rand(var mas:mymas;t:TStringGrid); Прочитай про передачу параметров по ссылке и по значению - не раз пригодится. |
![]() |
![]() |
![]() |
#5 |
Очень суровый
Участник клуба
Регистрация: 17.12.2009
Сообщений: 1,988
|
![]()
Процедура Rand заполняет массивы mas1, mas2. Они правильно объявлены - глобально.
И две кнопки кстати тут не к чему. Код:
Ненавижу быть как все, но люблю, чтобы все были как я.
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 16.10.2010
Сообщений: 24
|
![]()
Действительно, я забыл поставить var перед массивом в rand'е, поэтому он изменялся только в пределах процедуры
Всем большое спасибо за помощь |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задача на процедуры и функции. | Николай1 | Помощь студентам | 3 | 06.06.2011 21:57 |
Задача на файлы, процедуры. | art.marked | Помощь студентам | 0 | 05.05.2011 18:47 |
задача на функции и процедуры | katya36 | Помощь студентам | 2 | 17.02.2009 15:24 |
задача с использованием процедуры | Chief | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 12.01.2009 12:59 |