Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
=GHOST=
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 35
#1

Рекурсивная функция, не возвращающая значения, которая удаляет из заданной строки все точки - C++

26.03.2010, 21:28. Просмотров 844. Ответов 15
Метки нет (Все метки)

вот код...есть ещё вариант с массивом, но он тоже не работает =( тем более препод сказал, что через массив делать не стоит...=(
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <cstring>
using namespace std;
void func(string str)
{if(str==”\0)
return;
if(str==”.”)
str=” “;
func(str+1);}
int main()
{string s;
cout<<”Введите строку”<<endl;
getline(cin, str);
func(str);
cout<<str<<endl;}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.03.2010, 21:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Рекурсивная функция, не возвращающая значения, которая удаляет из заданной строки все точки (C++):

Рекурсивная функция, не возвращающая значения, которая удаляет из заданной строки все точки - C++
плиииз...(((

Рекурсивная функция, не возвращающая значение - C++
Разработать рекурсивную функцию для вывода на экран картинки (при натуральном число n): 1 222 33333 ... 33333 222 1 ...

Рекурсивная функция, возвращающая указатель на объект - C++
Есть рекурсивная функция (заполняющая двоичное дерево) Node* fill(int i){ //Возвращаемое значение ????? Node node(lines.key);...

Функция, которая удаляет начальные и конечные пробелы из строки - C++
Написать функцию, которая удаляет начальные и конечные пробелы из строки, полученной в качестве аргумента Добавлено через 1 час 33...

Функция удаляет из строки заданное количество символов, начиная с заданной позиции - C++
Подскажите, что не так в программе.? Функция удаляет из строки заданное количество символов, начиная с заданной позиции. (При...

Функция которая удаляет начальные и конечные пробелы из строки, полученной в качестве аргумента - C++
Нужен код без использования strlen

15
CyBOSSeR
Эксперт С++
2305 / 1675 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
26.03.2010, 21:41 #2
=GHOST=, вам уже решали эту задачу здесь. Что вас не устраивает?
1
=GHOST=
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 35
26.03.2010, 21:50  [ТС] #3
она не работает...=( а именно вот эта строка выделяется: func(str+1); =(((
0
CyBOSSeR
Эксперт С++
2305 / 1675 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
26.03.2010, 21:55 #4
=GHOST=, значит возьмите другую версию.
Например эту:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
void RemoveDots(char* str) {
  if (*str == '\0')
    return;
 
  if (*str == '.')
    *str = ' ';
 
  RemoveDots(str + 1);
}
 
int main()
{
  const int max_lenght = 250;
  char str[max_lenght];
 
  std::cin >> str;
  RemoveDots(str);
  std::cout << str;
 
  return 0;
}
И не плодите одинаковых тем.
2
Genius Ignat
1237 / 775 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
26.03.2010, 21:56 #5
В примере от CyBOSSeR не было никаких string-ов
объект типа string не может использовать сложение с числами...
2
=GHOST=
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 35
26.03.2010, 22:18  [ТС] #6
нам не разрешают писать типом char!!!!!!!!!!!!!!!!!!
0
CyBOSSeR
Эксперт С++
2305 / 1675 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
26.03.2010, 22:19 #7
=GHOST=, а каким тогда разрешают?
1
Genius Ignat
26.03.2010, 22:21
  #8

Не по теме:

нам не разрешают писать типом char!!!!!!!!!!!!!!!!!!
Не чего себе....

1
=GHOST=
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 35
26.03.2010, 22:31  [ТС] #9
только работа со строками типа string!!! да...у нас препод не фонтан =((((
0
Genius Ignat
1237 / 775 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
26.03.2010, 22:43 #10
Попробуй это:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream.h>
#include <string>
using namespace std;
void RemoveDots(string &str, int iter = 0);
int main(){
string str = "PPP....DDD....SSS";
RemoveDots(str);
cout<<str.c_str();
cout<<'\n';
return 0;
}
void RemoveDots(string &str, int iter){
if(str[iter]=='\0')return;
if(str[iter]=='.')str[iter]=' ';
RemoveDots(str,iter+1);
}
1
=GHOST=
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 35
26.03.2010, 22:44  [ТС] #11
оки =) спасибо огромное =)))
0
Genius Ignat
26.03.2010, 22:45
  #12

Не по теме:


а спасибо нажать я ж старался

1
=GHOST=
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 35
26.03.2010, 22:49  [ТС] #13
уже уже
0
Genius Ignat
26.03.2010, 22:51
  #14

Не по теме:


В реальном программировании удобнее и безопаснее использовать string
поэтому преподавателя можно тоже понять,
но категорически от char массивов отказываться тоже не хорошо.

1
=GHOST=
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 35
26.03.2010, 23:01  [ТС] #15
ну у нас просто такая информатика....это что-то =( все такие принципиальные...((( и мало что объясняют...=(
0
26.03.2010, 23:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.03.2010, 23:01
Привет! Вот еще темы с ответами:

Рекурсивная функция: все возможные перестановки символов строки - C++
Дана строка с n элементами. Например abs. Надо выводить все возможные варианты например abs asb bas bsa sab sba. Надо...

Описать функцию, которая удаляет из строки все лишние пробелы - C++
Помогите пожалуйста решить! Заранее благодарен!) Описать функцию, которая удаляет из строки все лишние пробелы. Пробелы считаются...

Составить программу, которая удаляет из строки все повторно встречающиеся символы - C++
Составить программу, которая удаляет из строки все повторно встречающиеся символы. Исходная строка вводится с клавиатуры. C++

Написать функцию, которая удаляет из строки s1 все символы, встречающиеся в строке s2 - C++
Народ, очень требуется помощь : :wall: № 1. Написать и протестировать функцию DELETE(s1, s2), которая удаляет из строки s1 все символы,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.