КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Примеры программирования задач
Вопросы для самопроверки Вопросы для самопроверки и контроля 1. Каково назначение функции UpdateData(1)? 2. Укажите категорию переменной, назначенной ActiveX‑объекту. Контрольные вопросы 1. Каково назначение функции UpdateData(0)? 2. Каково назначение метода Set<имя свойства>(<значение>)? 3. Каково назначение метода Get<имя свойства>()? Глава 8. Лабораторный практикум
8.1.1. Игра «Угадай число» (Delphi) Составим программу‑игру «Угадай число» (рис. 8.1.1.1). Рис. 8.1.1.1. Вид формы игры «Угадай число»
В поле Edit1 задается число N для формирования случайного положительного целого числа в интервале [0,N], и это число должен угадать игрок. Кнопкой Загадать число (Button1) формируется это случайное число. Игрок вводит предполагаемое число в поле Edit2 и нажимает кнопку Попытка. Если это число больше загаданного, то в поле Edit3 (Результат) выводится текст подсказки Перелет. Если это число меньше загаданного, то выводится текст Недолет. Наконец, при совпадении выводится текст Угадал. Число использованных попыток выводится в поле Edit4. Разместим на форме соответствующие компоненты и зададим значения свойству Caption. Приведем тексты процедур программы. Var // раздел переменных модуля Unit1 X:Integer; // объявление внешней переменной X - загадываемое число procedure TForm1.Edit1Change(Sender: TObject); // изменение поля Edit1 Var v,e:Integer;// v ‑ значения числа после перевода, e ‑ код ошибки (0-нет) Begin Val(Edit1.Text,v,e); // перевод числа из поля Edit1.Text в V (п. 1.7.5) Button1.Enabled:=e=0; // условие доступности Button1 Button2.Enabled:=False; // блокировка кнопки Button2 (Попытка) Edit2.Enabled:=e=0 // условие доступности поля Edit2 end; procedure TForm1.Edit2Change(Sender: TObject); // изменение поля Edit2 Var v,e:Integer; // v ‑ значения числа после перевода, e ‑ код ошибки (0-нет) Begin Val(Edit2.Text,v,e); // перевод числа из поля Edit2.Text в V Button2.Enabled:= e=0; // условие доступности Button2 end; procedure TForm1.Button1Click(Sender:TObject);//кнопка «Загадай число» var v,e:Integer; // v ‑ значения числа после перевода, e ‑ код ошибки (0-нет) begin Val(Edit1.Text,v,e); // перевод числа из поля Edit1.Text в V Randomize; X:=random(v); // формирование случайного числа X Edit1.Enabled:=False; Button2.Enabled:=True; Edit2.Enabled:= True; Edit2.SetFocus; // установка фокуса на поле Edit2 End; procedure TForm1.Button2Click(Sender: TObject); // кнопка «Попытка» Var v,e:Integer; // v ‑ значения числа после перевода, e ‑ код ошибки (0-нет) Begin Val(Edit2.Text,v,e); // перевод числа из поля Edit2.Text в V If v>X then Edit3.text:='Перелет' else If v<X then Edit3.text:='Недолет' else Edit3.text:='Вы угадали'; Edit4.Text:=IntToStr(StrToInt(Edit4.Text)+1);//число попыток увеличить на 1 Edit2.SetFocus; // установка фокуса на поле Edit2 end; procedure TForm1.Button3Click(Sender: TObject); //кнопка «Очистить» begin Edit1.Text:=''; Edit2.Text:=''; Edit3.Text:=''; Edit4.Text:='0'; Edit1.Enabled:=True; // разблокировка поля ввода числа N Button1.Enabled:= False; // блокировка кнопки «Загадай число» Button2.Enabled:= False; // блокировка кнопки «Попытка» Edit1.SetFocus; // установка фокуса на поле Edit1 X:= 0 // загадываемое число первоначально равно нулю end; procedure TForm1.Button4Click(Sender: TObject); // кнопка «Выход» begin Close; end; Для формы в качестве обработчика события OnActivate укажем имя процедуры Button3Click ‑ обработки события OnClick кнопки Очистить.
Дата добавления: 2014-12-08; Просмотров: 800; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |