|
Вопрос # 337/ вопрос открыт / |
|
Уважаемые эксперты, я только начинаю изучать программирование. Купил книгу В.Кадлеца "Delphi книга рецептов....".
В разделе примеров обработки событий предлагается описать код цикла для кнопки.
Не получается(
При компиляции курсор встает после слова ShowMessage, и вся строка красным выделяется.
В чем ошибка?
(фрагмент кода,точно(!) как в книге, привожу ниже).
Спасибо.
Приложение: Переключить в обычный режим- procedure TForm1.Button2Click(Sender: TObject);
- var I,J: Integer;
- begin
- J:=0;
- for I:= 1 to 10 do
- J:= J = 10
-
- end;
- end.
 |
Вопрос задал: Игорь (статус: Посетитель)
Вопрос отправлен: 22 февраля 2007, 19:18
Состояние вопроса: открыт, ответов: 5.
|
Ответ #1. Отвечает эксперт: Помфюк Владимир Степанович
Здравствуйте, Игорь!
1)Точки с запятой нет перед ShowMessage
2)Операция какая-то ненормальная: J:= J = 10
Ответ #2. Отвечает эксперт: Aymenel
Здравствуйте, Игорь!
В вашей книге опечатка. Код должен выглядеть следующим образом:
Приложение: Переключить в обычный режим- procedure TForm1.Button2Click(Sender: TObject);
- var I,J: Integer;
- begin
- J:=0;
- for I:= 1 to 10 do
- J:= J + 10
-
 |
Ответ отправил: Aymenel (статус: 2-ой класс)
Время отправки: 22 февраля 2007, 21:55
|
Ответ #3. Отвечает эксперт: Alex Van Glukhman
Здравствуйте, Игорь!
Советую перед тем как изучать примеры по книгам, хотя бы поверхносто изучить основы синтаксиса Object Pascal. Хотя компилятор и отслеживает ошибки кода, но понимание разметки и правил определения структурных единиц никогда не помешает. Таким образом исчезнут многие вопросы и огромное число потерянного времени на поиск ошибок.
Удачи!
м
 |
Ответ отправил: Alex Van Glukhman (статус: 7-ой класс)
Время отправки: 22 февраля 2007, 23:09
|
Ответ #4. Отвечает эксперт: Вадим К
и никто не нависал правильный вариант
мда, эксперты.
procedure TForm1.Button2Click(Sender: TObject);
var I,J: Integer;
begin
J:=0;
for I:= 1 to 10 do
J:= J + 10 ;
ShowMessage ('Цикл окончен, значение J = ' + IntToStr(J));
end;
end.
Всегда читайте текст сообщения о ошибке которое пишет Делфи. Хотя там по английски, но всё достаточно понятно. Если нет - выделяем описание ошибки и нажимаем F1 - делфа приведёт описание ошибки и почти всегда она приводит пример правильной и неправильной программы. Смотрим свой код и сравниваем
эксперт: Федоров Роман Сергеевич точку с запятой кто поставит?
 |
Ответ отправил: Вадим К (статус: Академик)
Время отправки: 23 февраля 2007, 00:34
|
Ответ #5. Отвечает эксперт: Дима Гусаков
Здравствуйте, Игорь! В строке выше вместо J:= J = 10 напиши J:= J + 10; не забывай вконце строки ставить точку с запятой
 |
Ответ отправил: Дима Гусаков (статус: 2-ой класс)
Время отправки: 23 февраля 2007, 09:57
|
Мини-форум вопроса
Всего сообщений: 3; последнее сообщение — 23 февраля 2007, 20:39; участников в обсуждении: 2.
|
Игорь (статус: Посетитель), 22 февраля 2007, 21:27 [#1]:
Здравствуйте, Владимир!
Ваш совет "Точки с запятой нет перед ShowMessage" к сожалению не помог.
Попробуйте описать эту процедуру для одной,отдельно взятой на форме кнопки.
Операция J:= J = 10 действительно какая-то ненормальная. Опишите пожалуйста этот код цикла, как вы его видите,своими словами. Мне было бы очень полезно узнать чьё-то мнение.
Спасибо.
Игорь (автор вопроса № 337)
|
|
Aymenel (статус: 2-ой класс), 22 февраля 2007, 22:02 [#2]:
Я там в коде ошибся,
после строки (J:= J + 10) поставь точку с запятой.
В цикле у тебя J каждый раз увеличивается на 10 и к концу цикла оно станет равным 100.
ShowMessage выведет следующий результат
(Цикл окончен, значение J = 100).
|
|
Игорь (статус: Посетитель), 23 февраля 2007, 20:39 [#3]:
Огромное спасибо всем! Приятно получить грамотные и полезные советы.
С уважением,
Игорь.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|