Пример простейшей программы для Windows


#include < windows.h >
LRESULT CALLBACK HelloWorldWndProc ( HWND, UINT, UINT, LONG );
int WINAPI WinMain ( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpszCmdParam, int nCmdShow )
{
HWND hWnd ;
WNDCLASS WndClass ;
MSG Msg;
char szClassName[] = "HelloWorld";
/* Регистрируем создаваемый класс */
/* Заполняем структуру типа WNDCLASS */
WndClass.style = CS_HREDRAW | CS_VREDRAW;
WndClass.lpfnWndProc = HelloWorldWndProc;
WndClass.cbClsExtra = 0;
WndClass.cbWndExtra = 0;
WndClass.hInstance = hInstance;
WndClass.hIcon = LoadIcon(NULL,IDI_APPLICATION);
WndClass.hCursor = LoadCursor(NULL, IDC_ARROW);
WndClass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH);
WndClass.lpszMenuName = NULL;
WndClass.lpszClassName = szClassName;
if(!RegisterClass(&WndClass))
{
MessageBox(NULL,"Cannot register class","Error",MB_OK);
return 0;
}
hWnd = CreateWindow(szClassName, "Program No 1",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT,
CW_USEDEFAULT, CW_USEDEFAULT,
NULL, NULL, hInstance, NULL);
if(!hWnd)
{
MessageBox(NULL,"Cannot create window","Error",MB_OK);
return 0;
}
/* Show our window */
ShowWindow(hWnd,nCmdShow);
UpdateWindow(hWnd);
/* Beginning of messages cycle */
while(GetMessage(&Msg, NULL, 0, 0))
{
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}
return Msg.wParam;
}
LRESULT CALLBACK HelloWorldWndProc (HWND hWnd, UINT Message,
UINT wParam, LONG lParam)
{
HDC hDC;
PAINTSTRUCT PaintStruct;
RECT Rect;
switch(Message)
{
case WM_PAINT:
hDC = BeginPaint(hWnd, &PaintStruct);
GetClientRect(hWnd,&Rect);
DrawText (hDC,"Hello, World!", -1, &Rect,
DT_SINGLELINE | DT_CENTER | DT_VCENTER);
EndPaint(hWnd,&PaintStruct);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hWnd,Message,wParam, lParam);
}

Текст программы взят из источника:
Румянцев П.В. Азбука программирования в Win32 API. – М.: Горячая линия – Телеком, 2004. – 312 с.

Лекция 1. Основы программирования

Для установки среды разработки Borland C++ 5.02 запустите файл Setup.exe, который находится в папке инсталляции программы. Укажите папку, в которой вы желаете хранить программу, например C:\BC5. Значения параметров в диалоговых окнах установки рекомендуется оставить без изменений, нажимая кнопку Next.

Открыть среду разработки С++ для работы можно с помощью команды меню:

Пуск | Все программы | Borland C++ 5.02 | Borland C++.

Рабочее окно программы состоит из следующих частей:
— меню;
— панель инструментов;
— рабочая область;
— строка состояния.

Чтобы создать новый документ, выберите пункт меню

File| Text edit.

Чтобы сохранить документ, выберите пункт меню

File | Save as…

Содержание отчета по лабораторной работе:

  1. Титульный лист.
  2. Цель работы.
  3. Условие задачи.
  4. Блок-схема алгоритма.
  5. Текст программы.
  6. Результат работы программы (скриншот).
  7. Ответы на контрольные вопросы, написанные от руки (необязательно).

Программирование – это процесс разработки программы, который может быть представлен с помощью последовательности шагов:

  1. Спецификация – определение, формулирование требований к программе. Это один из важнейших этапов, на котором подробно описывается исходная информация, формулируются требования к результату, поведение программы в особых случаях (например, при вводе неверных данных).
  2. Разработка алгоритма. На этом этапе необходимо определить последовательность действий, которые надо выполнить для получения результата. Если задача может быть решена несколькими способами, то программист, используя некоторый критерий (например, скорость работы), выбирает наиболее подходящий алгоритм. Результатом этапа разработки алгоритма является его подробное словесное описание или блок-схема. Читать далее →

Основы программирования и алгоритмические языки

Дисциплина «Основы программирования» читается студентам специальности «Программное обеспечение систем» на 1 курсе.

Дисциплина «Алгоритмизация и  программирование» читается студентам специальности «Информационные технологии проектирования» на 1 курсе.

Эти дисциплины являются базовыми для обучения студентов на кафедре программных средств Запорожского национального технического университета.

Основная литература:
1. Павловская Т. А. — C/C++. Программирование на языке высокого уровня.– СПб.:Питер, 2003.
2. Абрамов С.А. Задачи по программированию. – М.:Наука, 1988.

Литература к выполнению РГЗ:
1. Молдовян Н.А., Молдовян А.А. Введение в криптографию с открытым ключом. – СПБ.: БХВ-Петербург, 2005.