- •Практикум
- •Г. Петропавловск-Камчатский
- •Введение
- •Задание №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)
- •Задание для самостоятельного выполнения:
- •Рекомендуемая литература
Задание №6. Работа с графикой. Вывод текста. Программа Приветствие
Цель занятия: Научиться работать с графическими компонентами
Студенты должны знать: свойства и методы компонентов работы с графикой
уметь: создавать приложения для работы с графикой
Задание.
Выберите в меню Пуск – Программы - CodeGear RAD Studio 2009 - C++Builder 2009
Создание новое приложение (File – New – VCL Forms Application).
Проектирование интерфейса приложения. Переименуйте заголовок формы на Приветствие!
Измените цвет формы по своему усмотрению.
Программирование приложения
Описание переменных
#include "DateUtils.hpp" // включите данный модуль для работы с датой и временем
AnsiString sMouth[]={"","января","февраля","марта","апреля","мая","июня", "июля","августа","сентября","октября","ноября","декабря"};
На событие формы onPaint напишите процедуру:
void __fastcall TForm1::FormPaint(TObject *Sender)
{
int h; //текущее время
AnsiString mes; //сообщение
int wt, ht; //размер области вывода текста
int x,y; //координаты вывода текста
h=HourOf(Now());
if (h<=4) mes="Доброй ночи";
else if (h<12) mes="Доброе утро";
else if (h<=16) mes="Добрый день";
else mes="Добрый вечер";
Form1->Font->Name = "Times New Roman";
Form1->Canvas->Font->Size = 20;
wt=Canvas->TextWidth(mes); //определение размера области вывода текста
ht=Canvas->TextHeight(mes);
x=(ClientWidth - wt) / 2;
y=ClientHeight / 2-ht;
Canvas->Brush->Style=bsClear; //чтобы область была прозрачной
Canvas->TextOutA(x,y,mes);
y=y+ht; //нижняя граница области вывода текста
mes = FormatDateTime("Сегодня d", Now()); //дата и день недели
mes = mes + " " +sMouth[MonthOf(Now())]+","+FormatDateTime("dddd", Now());
Canvas->Font->Size -=4;
wt= Canvas->TextWidth(mes);
ht=Canvas->TextHeight(mes);
x=(ClientWidth - wt) / 2;
y = y+6;
Canvas ->TextOutA(x,y,mes);
}
Напишите процедуру при изменении размера формы:
Void __fastcall tForm1::FormResize(tObject *Sender)
{
Form1->Refresh();
}
Задание для самостоятельного выполнения:
Измените цвет вывода текста на синий.
Измените размер шрифта, название шрифта, начертание для текста на произвольный
Добавьте в область вывода надпись «Пора работать» в зависимости от времени суток
Добавьте в область вывода надпись «Пора спать» в зависимости от времени суток
Добавьте в область вывода надпись «Отдых», «Работа» в зависимости от времени суток
Добавьте в область вывода надпись «Рабочий день», «Выходной» в зависимости от дня недели
Добавьте в область вывода надпись – текущий год с определением високосный он или нет.
Добавьте сообщение: сколько месяцев осталось до Нового года
Добавьте сообщение: сколько дней осталось до 1 июня
Добавьте сообщение: сколько дней осталось до Нового года
Добавьте сообщение: сколько дней осталось до вашего дня рождения
Добавьте сообщение: сколько дней осталось от сегодняшнего числа до введённой вами даты
Сдайте работу преподавателю
Вопросы для контроля и самоконтроля:
Вывод текста.
Свойство Canvas: методы и свойства.
Задание №7. Мультимедиа. Анимация в С++
Цель занятия: Научиться работать с компонентом Animate
Студенты должны знать: свойства и методы компонента Animate
уметь: программировать компонент Animate
Задание.
Выберите в меню Пуск – Программы - CodeGear RAD Studio 2009 - C++Builder 2009
Создание консольное приложение (File – New – VCL Forms Application).
Проектирование интерфейса приложения: разместите на форму следующие компоненты (смотри рисунок)
Переименуйте форму на Просмотр AVI изображений.
В раздел описания переменных введите:
int CFrame; // номер кадра, отображаемого в режиме просмотра по кадрам
Программирование приложения
Создание функции для открытия AVI файла
Перейдите на программный код Unit1.h
Добавьте после описания используемых компонент описание функции:
void __fastcall OpenAVI(void);
Перейдите на модуль Unit1.cpp. Напишите реализацию процедуры:
void __fastcall TForm1::OpenAVI(void)
{ Button1->Enabled = False;
Button2->Enabled = False;
Button3->Enabled = False;
RadioButton1->Enabled = False;
RadioButton2->Enabled = False;
try
{Animate1->FileName = Edit1->Text;}
catch (Exception &e)
{ShowMessage("Ошибка формата AVI файла.(Анимация не должна сопровождаться звуком.)");}
Button1->Enabled = True;
RadioButton1->Enabled = True;
RadioButton2->Enabled = True;}
Напишите процедуру для нажатия на кнопку Выбрать