Отчет по лабораторной работе №16 по дисциплине "Программирование на языке высокого уровня"
Национальный исследовательский
Томский политехнический университет
Факультет АВТ
Кафедра ИПС
Дополнительное задание
Отчет по лабораторной работе № 16
по дисциплине "Программирование на языке высокого уровня"
вариант № 9
Выполнил: | студент группы 8В83Колчанов А.В. |
Проверил: | преподаватель |
Томск 2010
Условие задачи
Написать и протестировать функцию compress(), которая «сжимает» строку, удаляя из нее все пробелы.
Алгоритм решения
Напишем функцию compress(), и передадим ей в качестве параметра строку по ссылке:
int compress(string *s)
В этой функции создадим пустую строку a.
Смотрим каждый символ в s: если он не пробел, то копируем его в a.
Изменяем значение переменной s на a.
В функции main():
Создадим новую строку и присвоим ей некоторое значение.
Вызовем функцию compress() и передадим ей это строку.
Теперь в строке нет пробелов.
Листинг
// laba6.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "iostream"
#include "conio.h"
#include "string"
using namespace std;
int compress(string *s)
{
string a;
for (int i=0; i<(*s).size();i++)
{
if ((*s).substr(i,1)!=" ")
{
a=a+(*s).substr(i,1);
}
}
*s=a;
return 0;
}
int _tmain(int argc, _TCHAR* argv[])
{
string str;
str =" Hello World ";
compress(&str;);
cout<
compress(&str;);
cout<
compress(&str;);
cout<
getch();
return 0;
}
Результат работы программы
HelloWorld
TomskPolytechnicUniversity
Whatdoyouhavetosay?
Вывод
Я научился передавать параметры в функцию по ссылке и изменять строки.
страница 1
скачать
Другие похожие работы: