- •Практикум
- •Г. Петропавловск-Камчатский
- •Введение
- •Задание №1. Операции ввода-вывода. Арифметические операции.
- •Int a;b;c; double X,
- •Int a,b,c; float a,b,c;
- •Float X; scanf (“%f”,X);
- •Задание №2. Операторы условного перехода if-case
- •Int main(int argc, char* argv[])
- •Найдите синтаксические и логические ошибки в инструкциях (если есть)
- •Задание №3. Оператор цикла for
- •Int main(int argc, char* argv[])
- •Задание №4. Одномерные и многомерные массивы
- •Задание №5. Алгоритмы поиска и сортировки данных
- •Найдите синтаксические и логические ошибки в инструкциях
- •Сформулируйте одной фразой, какое действие выполняет фрагмент:
- •Задание №6. Массивы символов
- •Int _tmain(int argc, _tchar* argv[])
- •Написать программу для решения задачи:
- •Написать программу для решения задачи:
- •Класс string
- •Функции работы со строками Задание №7. Функции
- •Void fill_screen (void)
- •Напишите функцию для:
- •Задание №1. Создание программ с использованием компонентов: tEdit, tButton, tLabel
- •Проектирование интерфейса приложения:
- •Программирование приложения
- •Void __fastcall tForm1::Edit1KeyPress(tObject *Sender, wchar_t &Key)
- •Void __fastcall tForm1::Button1Click(tObject *Sender)
- •Задание №2. Создание программ с использованием компонентов: tComboBox, tListBox
- •Задание №3. Создание программ с использованием компонента Timer
- •Создайте приложение «Угадай число»
- •Void __fastcall tForm1::Timer1Timer(tObject *Sender)
- •Void __fastcall tForm1::CheckBox1Click(tObject *Sender)
- •Void __fastcall tForm1::Button1Click(tObject *Sender)
- •Void __fastcall tForm1::Button2Click(tObject *Sender)
- •Задание для самостоятельного выполнения:
- •Задание №4. Написание программ для выполнения операций с файлами
- •Void __fastcall tForm1::Button1Click(tObject *Sender)
- •If (FileExists("meteo.Txt"))
- •Void __fastcall tForm1::Edit1KeyPress(tObject *Sender, wchar_t &Key)
- •Задание для самостоятельного выполнения:
- •Задание №5. Использование компонентов tRichEdit, tMainManu, tOpenDialog и др.
- •Проектирование интерфейса приложения
- •Программирование приложения
- •Void __fastcall tForm1::imOpenClick(tObject *Sender)
- •Void __fastcall tForm1::imSaveClick(tObject *Sender)
- •Void __fastcall tForm1::imToolBarClick(tObject *Sender)
- •Void __fastcall tForm1::AboutClick(tObject *Sender)
- •Задание для самостоятельного выполнения:
- •Задание №6. Работа с графикой. Вывод текста. Программа Приветствие
- •Напишите процедуру при изменении размера формы:
- •Void __fastcall tForm1::FormResize(tObject *Sender)
- •Void __fastcall tForm1::Button4Click(tObject *Sender)
- •Void __fastcall tForm1::Button1Click(tObject *Sender)
- •Void __fastcall tForm1::Button5Click(tObject *Sender)
- •Задание №8. Базы данных. Создание приложения Записная книжка
- •Создание базы данных.
- •Проектирование интерфейса приложения
- •Программирование приложения
- •Void __fastcall tForm1::BitBtn1Click(tObject *Sender)
- •Задание №9. Ежедневник
- •Void __fastcall tForm1::FormShow(tObject *Sender)
- •Void __fastcall tForm1::Button1Click(tObject *Sender)
- •Void __fastcall tForm1::Button3Click(tObject *Sender)
- •Задание №10. Будильник
- •Int cHour, cMinute;
- •Int alrHour, alrMinute;
- •Void __fastcall CreateTrayIcon (int n, AnsiString Tip);
- •Void __fastcall DeleteTrayIcon (int n);
- •Void __fastcall tForm1::CreateTrayIcon (int n, AnsiString Tip)
- •Void __fastcall tForm1::DeleteTrayIcon (int n)
- •Void __fastcall tForm1::Button1Click(tObject *Sender)
- •Void __fastcall tForm1::Timer1Timer(tObject *Sender)
- •Задание №11. Часы
- •Int ahr, amin, asec;
- •Void __fastcall tForm1::Timer1Timer(tObject *Sender)
- •Задание №12. Очистка диска
- •Void __fastcall tForm1::Button1Click(tObject *Sender)
- •Void __fastcall tForm1::Button2Click(tObject *Sender)
- •Задание для самостоятельного выполнения:
- •Рекомендуемая литература
Задание №3. Создание программ с использованием компонента Timer
Цель занятия: Научиться работать с датой и временем
Студенты должны знать: свойства и методы компонента Timer
уметь: создавать приложения с использованием компонента Timer
Задание.
Выберите в меню Пуск – Программы - CodeGear RAD Studio 2009 - C++Builder 2009
Создание новое приложение (File – New – VCL Forms Application).
Создайте приложение «Угадай число»
Проектирование интерфейса приложения
Программирование приложения
Определение свойств добавленных компонент в программе:
const TR=10; //время для решения задачи
int pw; //загаданное число
int rem=TR; //остаток времени
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
Label2->Caption = IntToStr(TR);
ProgressBar1->Max=TR; //настройка индикатора, начальное значение равно максимальному
ProgressBar1->Position=TR;
ProgressBar1->Step=1; //шаг изменения
ProgressBar1->Smooth = true; //индикатор - полоса
Randomize(); //генератор случайных чисел
pw=Random(9); //загаданное число
}
Напишите процедуру на событие onTimer
Void __fastcall tForm1::Timer1Timer(tObject *Sender)
{
rem--;
ProgressBar1->Position--;
Label2->Caption = IntToStr (rem);
if (rem==0) {
Timer1->Enabled=false;
Edit1->Enabled=false;
Button1->Enabled=false;
ShowMessage("Вы не справились. \n Загаданное число "+IntToStr (pw));
} }
Щелчок по переключателю Полоса
Void __fastcall tForm1::CheckBox1Click(tObject *Sender)
{
if (CheckBox1->Checked)
{
ProgressBar1->Step=1;
ProgressBar1->Smooth = true;
}
else
{
ProgressBar1->Step=6;
ProgressBar1->Smooth = false;
}
}
Нажатие кнопки ОК
Void __fastcall tForm1::Button1Click(tObject *Sender)
{
if (StrToInt(Edit1->Text)==pw) {
Timer1->Enabled=false;
Edit1->Enabled=false;
Button1->Enabled=false;
ShowMessage("Вы справились. \n Вы угадали число за "+IntToStr (TR-rem)+" секунд");
}
}
Самостоятельно напишите процедуру для нажатия клавиши в поле редактирования окна ввода – событие onKeyPress. При написании программы учтите возможность нажатия только клавиш от 0 до 9, клавиши удаления символа и клавиши ввода.
Самостоятельно напишите процедуру на событие onChange компонента Edit1. В данной процедуре учтите, что кнопка ОК должна быть активна только в случае, если длина строки в окне ввода равна 1 символу.
Создайте справочное руководство в формате html и напишите команду для открытия справки:
Void __fastcall tForm1::Button2Click(tObject *Sender)
{
ShellExecute(Form1->Handle, "open", "help.html", NULL,NULL,SW_RESTORE);
}
Добавьте справку о программе в отдельном окне (форме).
Задание для самостоятельного выполнения:
Добавьте отображение в строке состояния количество прошедших секунд таймера для решения задачи.
Напишите программу для движения надписи слева направо "Я буду сдавать экзамен по программированию" с использованием компонента Timer.
Напишите программу для движения надписи справа налево "Я буду сдавать экзамен по программированию" с использованием компонента Timer.
Напишите программу для движения надписи сверху вниз "Я буду сдавать экзамен по программированию" с использованием компонента Timer.
Напишите программу для движения надписи снизу вверх "Я буду сдавать экзамен по программированию" с использованием компонента Timer.
Напишите программу для движения кнопки "Нажми меня" слева направо с использованием компонента Timer.
Напишите программу для движения кнопки "Нажми меня" справа налево с использованием компонента Timer.
Напишите программу для движения кнопки "Нажми меня" по главной диагонали экрана с использованием компонента Timer.
Напишите программу для движения кнопки "Нажми меня" по побочной диагонали экрана с использованием компонента Timer.
Напишите программу для движения кнопки "Нажми меня" по периметру экрана с использованием компонента Timer.
Напишите программу для движения кнопки "Нажми меня" по нарисованному лабиринту с использованием компонента Timer.
Напишите программу, демонстрирующую работу программы Секундомер
Сдайте работу преподавателю
Вопросы для контроля и самоконтроля:
Что означает свойство Enabled компонента Timer?
На какое событие пишут процедуру при работе с компонентом Timer?
Как добавить справку в формате html для приложения?
Как организовать движение компонентов на форме?