#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 129
#define _APS_NEXT_COMMAND_VALUE 32771
#define _APS_NEXT_CONTROL_VALUE 1009
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
Заголовний модуль Proga27_01Dlg.h
// Proga27_01Dlg.h : header file
#if !defined(AFX_PROGA27_01DLG_H__5D1551EB_3502_4EC1_A6BF_C06DBBB32D98__INCLUDED_)
#define AFX_PROGA27_01DLG_H__5D1551EB_3502_4EC1_A6BF_C06DBBB32D98__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
//////////////////////////////////////////////////////////////////////
// CProga27_01Dlg dialog
class CProga27_01Dlg : public CDialog
{
// Construction
public:
CProga27_01Dlg(CWnd* pParent = NULL);// standard constructor
// Dialog Data
//{{AFX_DATA(CProga27_01Dlg)
enum { IDD = IDD_PROGA27_01_DIALOG };
CStringm_Vvod_16;
CStringm_Vvod_2;
CStringm_Vvod_8;
intm_Vvod_10;
//}}AFX_DATA
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CProga27_01Dlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX);// DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
HICON m_hIcon;
// Generated message map functions
//{{AFX_MSG(CProga27_01Dlg)
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnButton1();
afx_msg void OnButton2();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_PROGA27_01DLG_H__5D1551EB_3502_4EC1_A6BF_C06DBBB32D98__INCLUDED_)
Заголовний модуль Proga27_01Dlg.cpp
// Proga27_01Dlg.cpp : implementation file
//
програма число рядок матриця
#include "stdafx.h"
#include "Proga27_01.h"
#include "Proga27_01Dlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
//////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About
class CAboutDlg : public CDialog
{
public:
CAboutDlg();
// Dialog Data
//{{AFX_DATA(CAboutDlg)
enum { IDD = IDD_ABOUTBOX };
//}}AFX_DATA
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CAboutDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX);// DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
//{{AFX_MSG(CAboutDlg)
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
//{{AFX_DATA_INIT(CAboutDlg)
//}}AFX_DATA_INIT
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAboutDlg)
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
// No message handlers
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
//////////////////////////////////////////////////////////////////////
// CProga27_01Dlg dialog
CProga27_01Dlg::CProga27_01Dlg(CWnd* pParent /*=NULL*/)
: CDialog(CProga27_01Dlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CProga27_01Dlg)
m_Vvod_16 = _T("");
m_Vvod_2 = _T("");
m_Vvod_8 = _T("");
m_Vvod_10 = 0;
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CProga27_01Dlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CProga27_01Dlg)
DDX_Text(pDX, IDD_VVOD_16, m_Vvod_16);
DDX_Text(pDX, IDD_VVOD_2, m_Vvod_2);
DDX_Text(pDX, IDD_VVOD_8, m_Vvod_8);
DDX_Text(pDX, IDD_VVOD_10, m_Vvod_10);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CProga27_01Dlg, CDialog)
//{{AFX_MSG_MAP(CProga27_01Dlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
//////////////////////////////////////////////////////////////////////
// CProga27_01Dlg message handlers
BOOL CProga27_01Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
// Add "About..." menu item to system menu.
// IDM_ABOUTBOX must be in the system command range.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
// Set the icon for this dialog. The framework does this automatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE);// Set big icon
SetIcon(m_hIcon, FALSE);// Set small icon
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
}
void CProga27_01Dlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
// If you add a minimize button to your dialog, you will need the code below
// to draw the icon. For MFC applications using the document/view model,
// this is automatically done for you by the framework.
void CProga27_01Dlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // device context for painting
SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
// Center icon in client rectangle
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// Draw the icon
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}
// The system calls this to obtain the cursor to display while the user drags
// the minimized window.
HCURSOR CProga27_01Dlg::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}
void CProga27_01Dlg::OnButton1()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
int N;
char str_2[50],str_8[50],str_16[50];
N=m_Vvod_10;
itoa(N,str_2,2);
m_Vvod_2=str_2;
itoa(N,str_8,8);
m_Vvod_8=str_8;
itoa(N,str_16,16);
m_Vvod_16=str_16;
UpdateData(FALSE);
}
void CProga27_01Dlg::OnButton2()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
char o=0;
m_Vvod_10=0;
m_Vvod_2=o;
m_Vvod_8=o;
m_Vvod_16=o;
UpdateData(FALSE);
}
Заголовний модуль Proga27_01.h
// Proga27_01.h : main header file for the PROGA27_01 application
#if !defined(AFX_PROGA27_01_H__56B7EF51_81AC_4F93_9FF3_5017FF89C8DA__INCLUDED_)
#define AFX_PROGA27_01_H__56B7EF51_81AC_4F93_9FF3_5017FF89C8DA__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#ifndef __AFXWIN_H__
#error include 'stdafx.h' before including this file for PCH
#endif
#include "resource.h"// main symbols
//////////////////////////////////////////////////////////////////////
// CProga27_01App:
// See Proga27_01.cpp for the implementation of this class
class CProga27_01App : public CWinApp
{
public:
CProga27_01App();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CProga27_01App)
public:
virtual BOOL InitInstance();
//}}AFX_VIRTUAL
// Implementation
//{{AFX_MSG(CProga27_01App)
// NOTE - the ClassWizard will add and remove member functions here.
// DO NOT EDIT what you see in these blocks of generated code !
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_PROGA27_01_H__56B7EF51_81AC_4F93_9FF3_5017FF89C8DA__INCLUDED_)
Заголовний модуль Proga27_01.cpp
// Proga27_01.cpp : Defines the class behaviors for the application.
#include "stdafx.h"
#include "Proga27_01.h"
#include "Proga27_01Dlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
//////////////////////////////////////////////////////////////////////
// CProga27_01App
BEGIN_MESSAGE_MAP(CProga27_01App, CWinApp)
//{{AFX_MSG_MAP(CProga27_01App)
// NOTE - the ClassWizard will add and remove mapping macros here.
// DO NOT EDIT what you see in these blocks of generated code!
//}}AFX_MSG
ON_COMMAND(ID_HELP, CWinApp::OnHelp)
END_MESSAGE_MAP()
//////////////////////////////////////////////////////////////////////
// CProga27_01App construction
CProga27_01App::CProga27_01App()
{
// TODO: add construction code here,
// Place all significant initialization in InitInstance
}
//////////////////////////////////////////////////////////////////////
// The one and only CProga27_01App object
CProga27_01App theApp;
//////////////////////////////////////////////////////////////////////
// CProga27_01App initialization
BOOL CProga27_01App::InitInstance()
{
AfxEnableControlContainer();
// Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
#ifdef _AFXDLL
Enable3dControls();// Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic();// Call this when linking to MFCstatically
#endif
CProga27_01Dlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
// Since the dialog has been closed, return FALSE so that we exit the
// application, rather than start the application's message pump.
return FALSE;
}
Рисунок 2.7 Блок-схема алгоритму до програми Proga27.срр
2.28 Знаходження раціональної кількості предметів
Програма Proga28.срр призначена для знаходження числа коробок, в’язок та пар шкарпеток, які бажає купити клієнт, щоб купівля обійшлася дешевше, якщо пара шкарпеток коштує 105р., в’язка (12 пар) – 1025р., а коробка (12 в’язок) – 11400р.
Вхідні дані: кількість селищ k (тип int)
Вихідні дані: номер селища і (тип int)
Блок-схема до програми Proga28.срр представлена на рисунку 2.8
#include<iostream.h>//Підключаємо бібліотеки iostream.h,
#include<math.h>//та math.h
//Оголошуємо константи:
#definePARA 105 // 1 пара - 105р.
#define SV 1025 // в’язка (12 пар) = 1025р.
#define KOR 11400 // коробка (12 в’язок = 144 пары) = 11400р.
void main()//Оголошуємо головну функцію main()
{//Оголошуємо змінні:
int N,n1,n2,n3,p=1,s=12,k=144,a,b,c,a1,b1,c1,W;
cout<<"Скільки пар ви бажаєте купити? ";//Даємо запит
cin>>N;//Вводимо кількість пар шкарпеток
if(N==1)//Умова: якщо кількість =1, то виводимо повідомлення
{ cout<<"За однією парою не варто ходити до крамниці"<<"\n";
gotop; //Переходимо до мітки р:
}
a=N/k;//
a1=N%k;//
//
b=a1/s;//
b1=a1%s;//Робимоопераціїнадзмінними
//
c=b1/p;//
c1=b%p;//
n1=a; // К-ть коробок
n2=b; // К-ть в’язок
n3=c; // К-ть пар
if(n3>=6)//Умова: якщо кількість пар >6,
{//виводимо повідомлення на екран
cout<<"Вам вигідніше купити "<<n1<<" коробокта "<<(n2+1)<<" в’язок";
cout<<"Вам це буде коштувати "<<(n1*11400+(n2+1)*1025)<<"p"<<"\n";
}
else//В іншому разі:
{
cout<<"Вам вигідніше купити "<<n1<<" коробок та "<<n2<<" в’язок";
cout<<"Вам це буде коштувати "<<(n1*11400+n2*1025)<<"p"<<"\n";
}
p:;//Мітка р:
cout<<"\n"<<"Для виходу введіть EXIT:"<<"\n"; //Даємо запит
cin>>W; //Вводимо зайву перемінну W для затримки екрану
}//Кінець функції main()
Рисунок 2.8 Блок-схема алгоритму до програми Proga28.срр
2.29 Знаходження четвірок простих чисел
Програма Proga29.срр призначена для знаходження четвірок простих чисел не перевищуючих N, якщо задане N>19
Вхідні дані: Число N (тип int)
Вихідні дані: четвірки простих чисел
#include<iostream.h> //Підключаємо бібліотеки iostream.h,
#include<math.h> //та math.h
void main() //Оголошуємо головну функцію main()
{
int N,i,kol; //Оголошуємо перемінні N,I,kol цілого типу
char str1[10],str2[10],str3[10],str4[10];//та символьні матриці
cout<<"Введіть число >19 "; //Даємо запит
cin>>N; //Вводимо число >19
kol=0; //змінній kol присвоюємо початкове значення 0
for(;N>0;) //Задаємо цикл
{
N=(N-N%10)/10; //Знаходимо цифри числа а