Програмний продукт Pacific З Compiler

Самостійне вивчення основ програмування мовою Си++ з використанням програмного продукту Pacific З Compiler. Програми по знаходженню сум чисел, виводу матриці, переводу числа до різних систем счислення, редагуванню тексту та видалення пробілів з рядка.

Рубрика Программирование, компьютеры и кибернетика
Вид отчет по практике
Язык русский
Дата добавления 01.04.2011
Размер файла 121,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

{

for(i=0;i<k;i++) //Задаємо цикл

S=A[z][i];//Змінній S присвоюємо значення елемента матриці А

B[j]=S;//j-тому елементу матриці В присвоюємо значення змінної S

}

for(j=0;j<k;j++) //Задаємо цикл

if(B[j]<=min) //Умова: якщо елемент матриці В < або = змінній min,

{

min=B[j]; //Змінній min присвоюємо значення j-того елемента

N=j; //Змінній N присвоюємо значення параметра j

} //Виводимо відповідь

cout<<"В селищі номер "<<N+1<<" найкраще розташувати лікарню"<<"\n";

cout<<"\n"<<"Для виходу введіть EXIT:"<<"\n"; //Даємо запит

cin>>W; //Вводимо зайву перемінну W для затримки екрану

} //Кінець функції main()

2.27 Перевід числа до різних систем счислення

Програма Proga27.срр призначена для переводу числа з десяткової системи счислення до війкової, вісімкової та шістнадцькової систем счислення

Вхідні дані: число N в десятковій системі счислення (тип int)

Вихідні дані: число N в двійковій системі счислення

число N у вісімковій системі счислення

число N в шістнадцьковій системі счислення

Блок-схема до програми Proga27.срр представлена на рисунку 2.7

Заголовний модуль stdafx.cpp

// stdafx.cpp : source file that includes just the standard includes

//Proga27_01.pch will be the pre-compiled header

//stdafx.obj will contain the pre-compiled type information

#include "stdafx.h" //Підключаємо заголовний модуль stdafx.h

#include<iostream.h> //Підключаємо бібліотеки iostream.h,

#include<stdlib.h> //та stdlib.h

void main() //Оголошуємо головну функцію main()

{

int N,i; //Оголошуємо змінні N,і цілого типу,

char str_2[100],str_8[100],str_16[100];//масиви str_2 str_8 str_16

char F; //та змінну F символьного типу

cout<<"Введіть число N: "; //Даємо запит

cin>>N; //Вводимо число в десятковій системі счислення

cout<<"Ваше число в двійковій системі счислення: "; //Повідомлення

itoa(N,str_2,2); //За допомогою функції itoa переводимо число N до

for(i=0;str_2[i]+='\0';i++) //двійкової системі счислення

{

F=str_2[i];

cout<<str_2[i]; //Виводимо число в двійковій системі счислення

}

cout<<"\n"; //Переводимо курсор на новий рядок

cout<<" Ваше число в вісімковій системі счислення: "; //Повідомлення

itoa(N,str_8,8); //За допомогою функції itoa переводимо число N до

for(i=0;str_8[i]+='\0';i++) //вісімкової системі счислення

cout<<str_8[i]; //Виводимо число в вісімковій системі счислення

cout<<"\n"; //Переводимо курсор на новий рядок

cout<<" Ваше число в шістнадцьковій системі счислення: ";

itoa(N,str_16,16); //За допомогою функції itoa переводимо число N до

for(i=0;str_16[i]+='\0';i++)//шістнадцькової системі счислення

cout<<str_16[i]; //Виводимо число в шістнадцьковій системі

cout<<"\n"; //Переводимо курсор на новий рядок

} //Кінець функції main()

Заголовний модуль stdafx.р

// stdafx.h : include file for standard system include files,

// or project specific include files that are used frequently, but

// are changed infrequently

#if !defined(AFX_STDAFX_H_489A9441_BB1B_422E_BEEB_DC3DF70A8845__INCLUDED_)

#define AFX_STDAFX_H__489A9441_BB1B_422E_BEEB_DC3DF70A8845__INCLUDED_

#if _MSC_VER > 1000

#pragma once

#endif // _MSC_VER > 1000

#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers

#include <afxwin.h> // MFC core and standard components

#include <afxext.h> // MFC extensions

#include <afxdisp.h> // MFC Automation classes

#include <afxdtctl.h>// MFC support for Internet Explorer 4

// Common Controls

#ifndef _AFX_NO_AFXCMN_SUPPORT

#include <afxcmn.h>// MFC support for Windows Common Controls

#endif // _AFX_NO_AFXCMN_SUPPORT

//{{AFX_INSERT_LOCATION}}

// Microsoft Visual C++ will insert additional declarations //immediately before the previous line.

#endif // !defined(AFX_STDAFX_H_489A9441_BB1B_422E_BEEB_DC3DF70A8845__INCLUDED_)

Заголовний модуль resource.h

//{{NO_DEPENDENCIES}}

// Microsoft Developer Studio generated include file.

// Used by Proga27_01.rc

//

#define IDM_ABOUTBOX 0x0010

#define IDD_ABOUTBOX 100

#define IDS_ABOUTBOX 101

#define IDD_PROGA27_01_DIALOG 102

#define IDR_MAINFRAME 128

#define IDD_VVOD_10 1001

#define IDD_VVOD_2 1002

#define IDD_VVOD_8 1003

#define IDD_VVOD_16 1004

#define IDC_BUTTON1 1006

#define IDC_BUTTON2 1007

// Next default values for new objects

//

#ifdef APSTUDIO_INVOKED

#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 MFC statically

#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

//Оголошуємо константи:

#define PARA 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";

goto p; //Переходимо до мітки р:

}

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; //Знаходимо цифри числа а

kol++; //Збільшуємо лічильник kol на одиницю

}

if (kol==2) //Умова: якщо кількість дорівнює 2, виводимо:

{

cout<<"2 3 5 7"<<"\n"<<"11 13 17 19"<<"\n";

goto p; //Перехід до мітки р:

}

else //інакше - виводимо:

{

cout<<"2 3 5 7"<<"\n"<<"11 13 17 19"<<"\n";

str1[0]=1; //

str2[0]=1; //Першим елементам матриць присвоюємо значення 1

str3[0]=1; //

str4[0]=1; //

str1[kol-1]=1; //

str2[kol-1]=3; //

str3[kol-1]=7; //Останнім елементам матриць присвоюємо відповідні

str4[kol-1]=9; // значення

for (i=1;i<=kol-2;i++) //Задаємо цикл

{

str1[i]=0; //

str2[i]=0; //Між першим та останнім елементами матриць всі елементи

str3[i]=0; //будуть дорівнювати 0

str4[i]=0; //

}

for (i=0;i<=3;i++) //Задаємо цикл

cout<<str1[i]; //Виводимо елементи матриці str1

cout<<" "; //Ставимо пробіл

for (i=0;i<=3;i++) //Задаємо цикл

cout<<str2[i]; //Виводимо елементи матриці str2

cout<<" "; //Ставимо пробіл

for (i=0;i<=3;i++) //Задаємо цикл

cout<<str3[i]; //Виводимо елементи матриці str3

cout<<" "; //Ставимо пробіл

for (i=0;i<=3;i++) //Задаємо цикл

cout<<str4[i]; //Виводимо елементи матриці str4

cout<<" "; //Ставимо пробіл

}

p:; //Мітка р:

cout<<"\n"<<"Для виходу введіть EXIT:"<<"\n"; //Даємо запит

cin>>W; //Вводимо зайву перемінну W для затримки екрану

} //Кінець функції main()

2.30 Обчислення числа Фібоначі

Програма Proga30.срр призначена для обчислення числа Фібоначі з номером N

Вхідні дані: число n (тип int)

Вихідні дані: масиви чисел Фібоначі (тип double)

Блок-схема до програми Proga30.срр представлена на рисунку 2.9

#include<iostream.h> //Підключаємо бібліотеку iostream.h

void main() //Оголошуємо головну функцію main()

{

int i,n,W; //Оголошуємо перемінні I,n,W цілого типу

double a[50]; //та масив а типу (double)

cout<<"Числа Фібоначі:"<<"\n"; //Виводимо повідомлення

cout<<"Введіть n до 30"<<"\n "<<"k="; //Даємо запит

cin>>n; //Вводимо число n

a[1]=1; //Першому та другому елементам матриці а

a[2]=1; // присвоюємо значення 1

for(i=3;i<=n;i++) //Задаємо цикл

a[i]=a[i-1]+a[i-2]; // і-ий елемент матриці а дорівнює:

for(i=1;i<=n;i++) //Задаємо цикл

cout<<a[i]<<" "<<'\n'; //Виводимо елементи матриці а

cout<<"\n"<<"Для виходу введіть EXIT:"<<"\n"; //Даємо запит

cin>>W; //Вводимо зайву перемінну W для затримки екрану

} //Кінець функції main()

Рисунок 2.9 Блок-схема алгоритму до програми Proga30.срр

2.31 Видалення з рядку певних символів

Програма Proga1_1.срр призначена для видалення з рядку S1 усіх символів, які зустрічаються в рядку S2

Вхідні дані: рядок str1 (тип char)

рядок str2 (тип char)

Вихідні дані: Змінений рядок str1 (тип char)

#include <iostream.h> //Підключаємо бібліотеки iostream.h,

#include <string.h> //та math.h

char func(char str3[10],char str4[10])//Оголошуємо функцію, яка по

{ //заданим рядкам S1 та S2,

for(int i=0;str3[i]+='\0';i++) //видаляє з рядка S1 всі символи

for(int j=0;str4[j]+='\0';j++) //які зустрічаються в рядку S2

{ //

if(str3[i]==str4[j]) //

cout<<str4[j+1]; //

else cout<<str3[i]; //

} //

return 0; //

} //

void main() //Оголошуємо головну функцію main()

{

int W; //Оголошуємо перемінну W цілого типа,

char str1[10]; //матриці str1 та str2 символьного типу

char str2[10];

cout<<"Введіть рядок 1: "; //Даємо запит

cin>>str1; //Вводимо перший рядок

cout<<"Введіть рядок 2: "; //Даємо запит

cin>>str2; //Вводимо другий рядок

func(str1,str2); //Викликаємо функцію func

cout<<"\n"; //Переводимо курсор на новий рядок

cout<<"\n"<<"Для виходу введіть EXIT:"<<"\n"; //Даємо запит

cin>>W; //Вводимо зайву перемінну W для затримки екрану

} //Кінець функції main()

2.32 Сума двох рядків

Програма Proga2_2.срр призначена для формування рядка-суми двох рядків, якщо подані два символьних рядка, які складаються тільки з цифр.

Вхідні дані: рядок STRING1 (тип char)

рядок STRING2 (тип char)

Вихідні дані: рядок STRING3 (тип char)

#include<iostream.h> //Підключаємо бібліотеки iostream.h,

#include<stdlib.h> //та math.h

void main() //Оголошуємо головну функцію main()

{

char STRING1[50]={0};//Оголошуємо символьну матрицю STRING1,

char STRING2[50]={0};//матрицю STRING2,

int i,N1,N2; //та змінні I,N1,N2

cout<<"Скільки елементі вбуде в вашому рядку 1? "; //Вводимо запит

cin>>N1; //Вводимо кількість елементів першого рядка

cout<<"Введіть рядок 1: "; //Даємо запит

for(i=0;i<N1;i++) //Задаємо цикл

cin>>STRING1[i]; //Вводимо цифри першого рядка

cout<<" Скільки елементі вбуде в вашому рядку 2? "; //Вводимо запит

cin>>N2; //Вводимо кількість елементів другого рядка

cout<<" Введіть рядок 2: ";//Даємо запит

for(i=0;i<N2;i++) //Задаємо цикл

cin>>STRING2[i]; //Вводимо цифри другого рядка

double long l1=atol(STRING1); //Змінній l1 присвоюємо функцію atol

//яка обертає рядок STRING1 на одне число типу double long

double long l2=atol(STRING2); //Змінній l2 присвоюємо функцію atol

double long l3=l1+l2; //Змінній l3 присвоюємо суму l1 та l2

cout<<"l3="<<l3<<"\n";//Виводимо відповідь

cout<<"\n"<<"Для виходу введіть EXIT:"<<"\n"; //Даємо запит

cin>>W; //Вводимо зайву перемінну W для затримки екрану

} //Кінець функції main()

2.33 Редагування тексту

Програма Proga33.срр призначена для редагування тексту так, щоб між словами був рівно один пробіл, а між реченнями рівно два

Вхідні дані: рядок символів S (тип char)

Вихідні дані: відредагований рядок S (тип Char)

Блок-схема до програми Proga33.срр представлена на рисунку 2.10

#include<conio.h> //Підключаємо бібліотеки conio.h

#include<stdio.h> //та stdio.h

void main() //оголошуємо головну функцію main()

{

char S[80],i; //оголошуємо символьний масив з 80 елементів та

// символьну перемінну i

printf("Введіть ваш рядок. В кінці поставте @:\n"); //Вводимо рядок,

gets(S); //який закінчується на @

i=0; //Задаємо початкове значення параметра i

while((S[i]!='@'))

{

if (S[i]=='.') //Задаємо умову знаходження крапки в рядку

{ //якщо крапка знайдена,

printf(". "); //виводимо крапу з двома пробілами

}

else printf("%c",S[i]); //інакше виводимо елемент на своєму місці

i+=1; //Збільшуємо лічильник на одиницю

}

printf("\n"); //Переводимо курсор на новий рядок

getch(); //Затримуємо екран

} //Кінець функції main()

Ні Так

Рисунок 2.10 Блок-схема алгоритму до програми Proga33.срр

2.34 Копіювання одного рядка в інший

Програма Proga4_4.срр призначена копіювання одного тексту в інший так, щоб літери “новий рядок” та “табуляція” перетворювалися у видимі послідовності літер \n та \t

Вхідні дані: рядок символів Str1 (тип char)

рядок символів Str2 (тип char)

Вихідні дані: новий рядок str3 (тип Char)

#include<conio.h> //Підключаємо бібліотеки conio.h,

#include<stdio.h> //stdio.h

#include<string.h> //та string.h

char func(char str3[180],char str4[180]) //Оголошуємо функцію func,

{ //яка по заданим двом рядкам

int i; char str5[180]; //копіює другий рядок в кінець

//першого та перетворює літери

strncat(str3,str4,80); //”новий рядок” та “табуляція”

printf("\n"); //у видимі послідовності літер

//\n та \t

i=0;

while(str3[i]!=EOF)

{

if (str3[i]=='\n')

printf("\n");

else if (str3[i]=='\t')

printf("\t");

else printf("%c",str3[i]);

i+=1;

}

return 0;

}

void main() //Оголошуємо головну функцію main()

{

char str1[180],str2[180] //Оголошуємо дві символьних матриці

printf("Введіть ваш перший рядок:\n"); //Даємо запит

gets(str1); //Вводимо перший рядок символів

printf("Введіть ваш другий рядок:\n"); //Даємо запит

gets(str2); //Вводимо другий рядок символів

func(str1,str2); //Викликаємо функцію func

printf("\n"); //Переводимо курсор на новий рядок

getch(); //Затримуємо екран

} //Кінець функції main()

Перелік посилань

1. Глушаков С.В.,Коваль А.В.,Смирнов С.В. Язык программирования С++. - Харьков: «Фолио», Ростов-на-Дону: «Феникс», 2001.

2. Керниган Б. Ричи Д. Язык программирования Си - М. Финансы и статистика, 1992. - 272 с.

3. Хэфилд Ричард, Кирби Лоуренс и др. Искусство программирования на Си. Фундаментальные алгоритмы, структуры данных и примеры приложений. Энциклопедия программистов «ДиаСофт». 2001. - 736 с.

Размещено на Allbest.ru


Подобные документы

  • Програмування під DOS мовою низького рівня Асемблер (ASM-86). Функції програми: виведення в довільне місце екрану тексту заданого стилю та кольору, змінення шрифту, розміру літер та напрямку їх виводу. Алгоритм програми, системні вимоги до комп'ютера.

    курсовая работа [47,4 K], добавлен 03.06.2009

  • Розв'язання задач мовою програмування VBA з використанням алгоритмів лінійної, розгалуженої та ітераційної циклічної структури. Розробка блок-схеми алгоритму, таблиці ідентифікаторів та тексту програми. Створення власної панелі інструментів користувача.

    практическая работа [1012,6 K], добавлен 19.02.2010

  • Розробка програми для моделювання роботи алгоритму Дейкстри мовою C# з використанням об’єктно-орієнтованих принципів програмування. Алгоритм побудови робочого поля. Програмування графічного інтерфейсу користувача. Тестування програмного забезпечення.

    курсовая работа [991,4 K], добавлен 06.08.2013

  • Створення навчальної програми для вирішення системи лінійних рівнянь різними методами. Детальне покрокове рішення та довідкова теоретична інформація. Структура і функціональне призначення модулів програмного продукту, основні елементи його інтерфейсу.

    курсовая работа [1,9 M], добавлен 20.05.2015

  • Основні завдання синоптичної метеорології. Призначення та область застосування програмного продукту "Статистика метеоспостережень", функціональні вимоги до нього. Інформаційне забезпечення, структура, опис інтерфейсу. Тестування програмного продукту.

    курсовая работа [3,6 M], добавлен 30.04.2016

  • Формування електронного реєстру та презентація обліку зайнятості населення. Основні завдання обліку зайнятості (біржі праці). Обґрунтування доцільності створення програмного модуля. Вимоги до програмного продукту. Тестування програмного продукту.

    курсовая работа [399,7 K], добавлен 30.04.2016

  • Підстави для розробки програмного продукту для складання розкладу факультету вузу з використанням генетичних алгоритмів. Призначення розробленої програми, вимоги до функціональних характеристик, до програмної документації, техніко-економічні показники.

    курсовая работа [25,1 K], добавлен 12.04.2010

  • История развития корпорации Intel, ее финансовые показатели и планы на будущее. Основные программные продукты: C++ Compiler for Linux и for Windows, Visual Fortran Compiler for Windows, VTune Performance Analyzer. Защита информации Intel Anti-Theft.

    реферат [20,6 K], добавлен 02.04.2010

  • Концепції об'єктно-орієнтованого програмування. Методи створення класів. Доступ до методів базового класу. Структура даних, функції. Розробка додатку на основі діалогових вікон, програми меню. Засоби розробки програмного забезпечення мовами Java та С++.

    курсовая работа [502,5 K], добавлен 01.04.2016

  • Написання програми для виведення чисел Фібоначчі. Загальна характеристика мови Паскаль. Науковий доробок Леонардо Фібоначчі. Історія і властивості послідовності. Особливості програмування мовою Turbo Pascal. Відкалібрування та синхронізування програми.

    курсовая работа [325,1 K], добавлен 09.10.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.