71509

Разработка и отладка алгоритмов и программ с использованием шаблонов классов и алгоритмов библиотеки STL

Лабораторная работа

Информатика, кибернетика и программирование

Цель работы: Получить практические навыки в разработке алгоритмов и написании программ с использованием шаблонов классов и алгоритмов библиотеки STL. Общая постановка. Дано: число N и последовательность a1, a2,... aN Создать шаблон класса, порождающий динамические одномерные массивы...

Русский

2014-11-08

812.16 KB

13 чел.

Лабораторная работа №21

Тема работы: Разработка и отладка алгоритмов и программ с использованием шаблонов классов и алгоритмов библиотеки STL.

Цель работы:Получить практические навыки в разработке алгоритмов и написании программ с использованием шаблонов классов и алгоритмов библиотеки STL.

Общая постановка. Дано: число N и последовательность a1, a2, … aN
Создать шаблон класса, порождающий динамические одномерные массивы с элементами различных типов (вещественные, целочисленные, символьные и т.д.). Тип данных и результат являются параметрами по отношению к классу, программа должна иметь методы инициализации, конструктор, деструктор, метод просмотра значений созданного массива, согласно заданному алгоритму.

a1, -a1*a2, +a1*a2*a3, … ,(-1)N*a1*a2*…aN;

Дан массив слов. Преобразовать массив слов, заменив во всех словах все группы символов “ab” на символы “ссс”. Получить подстроку, взяв от каждого слова массива длиной более 1 символа по две конечных буквы. Сформировать предложение из тех слов массива, которые не содержат в своем составе символов из полученной подстроки

Приложение 1

Блок схема задачи 1

 

Приложение 1

Блок схема задачи 2

Приложение 2

Исходный модуль задачи 1

#include "stdafx.h"

#define SIZE 255

#include "iostream"

#include "clocale"

#include "conio.h"

#include "stdlib.h"

#include "string.h"

#include "stdio.h"

#include "cstdlib"

#include "iomanip"

#pragma warning(disable:4996)

using namespace std;

template<class type> class A

{    

type *t,*newt;

int size;

public:

voidinit(int n, type q[]);

void get();

void run();

};

template<class type> void A <type>::init(int n, type q[])

{

t=new type[n];

for(int i=0;i<n;i++)

t[i]=q[i];

size=n;

}

template<class type> void A <type>::run()

{

newt=new type [size];

for(int i=0; i<size;i++)

{

pr=1;

newt[i]=(pr+(pow(-1,i)*t[i]));

}

}

template<class type> void A <type>::get()

{

for (int i=0;i<size;i++)

cout<<newt[i]<<endl;

}

int _tmain(intargc, _TCHAR* argv[])

{  

setlocale(LC_ALL,"Russian");  

inti,n,*n1;

cout<<"Ââåäèòå N: ";

cin>>n;

n1=new int [n];

for(i=0;i<n;i++)

{

cout<<"Ââåäèòå N["<<i<<"]: ";

cin>>n1[i];

}

A<int> a;

a.init(n,n1);

a.run();

a.get();

getch();   

return 0;

}

Исходный модуль задачи 2

#include "stdafx.h"

#include "windows.h"

#include "iostream"

#include "string.h"

#include "math.h"

#pragma argsused

#include "conio"

std::stringToRus(conststd::string &in)

{

char*buff= new char[in.length()+1];

CharToOem(in.c_str(),buff);

std::string out(buff);

delete [] buff;

return out;

}

int main(incargc,char* argv[])

{

string str1("ab.");

string str2("ccc".);

cout<<ToRus("Исходные строки:\n");

cout<< "str1: " <<ToRus(str1)<<endl;

cout<< "str2: " << str2 <<"\n\n";

\\

cout<<ToRus(вставляем строку str2 в строку str1:\n");

str1.insert(5,str2);

cout<<ToRus(str1) << "\n\n";

cout<<ToRus("Удаляем 7 символов из строки str1:\n");

str1.erase(5,7);

cout<<ToRus(str1) << "\n\n";

\\

cout<<ToRus("Заменяем 5 символа в str1 cтрокой str2:\n");

str1.replace(5, 2, str2);

cout<<ToRus(str1) <<endl;

getch();

return 0;

}


 

А также другие работы, которые могут Вас заинтересовать

64487. ЛЮБОМИР ВИНАР ЯК ДОСЛІДНИК УКРАЇНСЬКОЇ ІСТОРІЇ ТА ІСТОРІОГРАФІЇ 179.5 KB
  Винара що зумовлює актуальність даної теми адже науковий доробок вченого є важливим надбанням української історичної думки. Винара в дослідження проблем історії України та української історіографії.
64488. ВПЛИВ АТМОСФЕРНОГО ЗАБРУДНЕННЯ ГІРНИЧО-МЕТАЛУРГІЙНОГО КОМПЛЕКСУ НА ФОРМУВАННЯ ПСИХОФІЗІОЛОГІЧНОГО СТАТУСУ ДІТЕЙ 3-7-РІЧНОГО ВІКУ 248 KB
  У практиці епідеміологічних досліджень проведених серед дітей дошкільного і молодшого шкільного віку таким факторам як стать і вік приділяється недостатньо уваги; надаються неоднозначні дані щодо особливостей статевої вікової...
64489. ДЕРЖАВНЕ СТИМУЛЮВАННЯ ІННОВАЦІЙНОГО РОЗВИТКУ ХІМІЧНОЇ ГАЛУЗІ 227.5 KB
  Світова фінансова криза та її наслідки для економіки України з урахуванням існуючих структурних диспропорцій актуалізували потребу в детальному аналізі інноваційної складової стратегії соціально-економічного розвитку країни.
64490. Закономірності процесів оптимального повітряного охолодження плавильних реакторів скляного виробництва 1.22 MB
  Найбільш розповсюдженим способом охолодження стін варильного басейну є обдув повітрям. За рахунок охолодження реактор може проробити тривалий час навіть при невеликій залишковій товщині стінового огородження...
64491. ОЦІНКА НЕОДНОРІДНОСТІ УЩІЛЬНЕНИХ ҐРУНТІВ ШТУЧНИХ ОСНОВ 640 KB
  За цих умов геотехніка рекомендує влаштування штучних масивів з кращими будівельними властивостями ніж у природних ґрунтів. Певною проблемою при нормуванні властивостей ущільненого масиву також є невідповідність оптимальних параметрів ущільнення...
64492. БЕТОНИ НА ОСНОВІ КОМПОЗИЦІЙНИХ ЦЕМЕНТІВ, АКТИВОВАНИХ У ВИСОКОВОЛЬТНОМУ ЕЛЕКТРИЧНОМУ ПОЛІ 292.5 KB
  Важливим напрямком у вирішенні цих проблем є розробка композиційних цементів в тому числі багатокомпонентних що містять різні мінеральні добавки природного та техногенного походження.
64493. Одержання цирконійвмісних сполук з циркону Малишевського родовища 139 KB
  Україна є власником єдиного в Європі родовища високоякісної цирконієвмісної сировини циркону силікат цирконію. Промислові потужності базового підприємства з видобутку та переробки циркону Малишевського родовища Вільногірського гірничо-металургійного...
64494. ТРИВОЖНІСТЬ ЯК ЧИННИК ДЕЗАДАПТАЦІЇ ПРАКТИЧНИХ ПСИХОЛОГІВ-ПОЧАТКІВЦІВ 472 KB
  Важливим у цьому контексті є врегулювання тривожності яка може негативно впливати на успішність оволодіння професією на результативність і якість професійної діяльності зокрема психологапрактика що як представник допомагаючих професій мусить бути для клієнта еталоном психологічного здоровя.
64495. ВИСОКОВОЛЬТНІ ЕЛЕКТРОРОЗРЯДНІ СВЕРДЛОВИННІ КОМПЛЕКСИ З ПІДВИЩЕНИМИ ПИТОМИМИ ЕНЕРГЕТИЧНИМИ ПАРАМЕТРАМИ 1.49 MB
  Було показано що ефективність комплексів визначається сукупністю характеристик електророзрядних імпульсів і пристроїв перетворення параметрів електричної енергії. В зв‘язку з погіршенням умов спуску занурювальної установки електророзрядних комплексів в зону обробки виникла необхідність зменшення її довжини.