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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 5.00
rkiller
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 18
#1

Рекурсивная функция вычисления длины строки - C++

15.11.2009, 19:07. Просмотров 3005. Ответов 6
Метки нет (Все метки)

Помогите пожалуйста решить задачу по программированию.

Напишите рекурсивную функцию вычисления длины строки.

Заранее благодарен.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2009, 19:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Рекурсивная функция вычисления длины строки (C++):

Рекурсивная функция вычисления - C++
Привет , помоги пожалуйста написать программу рекурсивная функция вычисления: (x+N)(x+N-1)(x+N-2)...(x+1) на c++, Спасибо . ...

Рекурсивная функция вычисления выражения - C++
Помогите пожалуйста с задачкой по рекурсии Рекурсивная функция вычисления: \left(a*x+b \right)*\left(\left(a-1 \right)*x+b-1...

Рекурсивная функция вычисления факториала - C++
Напишите рекурсивную функцию int factorial(int n), которая считает факториал. примеры 1)5 120 2)0 1 3)2 2

Рекурсивная функция вычисления факториала - C++
В коде #include "stdafx.h" #include <iostream> #include "fact.h" int main() { using namespace std; cout<<"Enter the...

Рекурсивная функция вычисления суммы бесконечного ряда - C++
Всем привет) Объясните кто нибудь как это можно сделать?)

Рекурсивная функция для вычисления по заданной формуле - C++
Напишите функцию, вычисляющую xn без использования цикла, где n – некоторое натуральное число, вводимое в качестве аргумента функции, а...

6
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
15.11.2009, 19:19 #2
std::string?
или char mass[]??
0
rkiller
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 18
15.11.2009, 19:20  [ТС] #3
Цитата Сообщение от Sekt Посмотреть сообщение
std::string?
или char mass[]??
std::string мне кажется
0
RNT
Автор FAQ
3135 / 355 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
15.11.2009, 19:24 #4
Цитата Сообщение от rkiller Посмотреть сообщение
std::string мне кажется
http://cplusplus.com/reference/string/string/length/

C++
1
2
3
4
5
6
7
8
9
10
11
// string::length
#include <iostream>
#include <string>
using namespace std;
 
int main ()
{
  string str ("Test string");
  cout << "The length of str is " << str.length() << " characters.\n";
  return 0;
}
Не понимаю зачем нужна рекурсия, когда уже есть готовенький метод
0
rkiller
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 18
15.11.2009, 19:27  [ТС] #5
Цитата Сообщение от RNT Посмотреть сообщение
http://cplusplus.com/reference/string/string/length/

C++
1
2
3
4
5
6
7
8
9
10
11
// string::length
#include <iostream>
#include <string>
using namespace std;
 
int main ()
{
  string str ("Test string");
  cout << "The length of str is " << str.length() << " characters.\n";
  return 0;
}
Не понимаю зачем нужна рекурсия, когда уже есть готовенький метод
Но таким образом я бы и сам сделал но как сюда рекурсию присабачить я даже и не знаю. Может не с текстом а с цифрами что то получится
0
Monte-Cristo
2790 / 1376 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
15.11.2009, 19:31 #6
Как-то так.. я рекурсию стараюсь избегать, поэтому знаком немного
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
using namespace std;
 
int strlength(char *str);
 
int main()
{
    const int n = 50;
    char str[n];
    
    cout << "Input string:" << endl;\
    cin.getline(str, n);
    
    cout << "String length = " << strlength(str) << endl;
    
    system("pause");
    return 0;
}
 
int strlength(char *str)
{
    int res=0;
    if (*str!='\0')
    {
        res++;
        res+=strlength(++str);
    }
    return res;
}


Добавлено через 1 минуту
Цитата Сообщение от rkiller Посмотреть сообщение
как сюда рекурсию присабачить я даже и не знаю.
рекусрию никуда собачить не надо. от тебе требуется написать свою функцию нахождения длинны строки. скорее всего, это не через std::string, а через массив символов. хотя алгоритм для std::string такой же.
1
RNT
Автор FAQ
3135 / 355 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
15.11.2009, 19:37 #7
Вот рекурсивная функция, правда я использовал массив char:

C++
1
2
3
4
5
6
int length(char* str)
{
    if(*str)
        return length(++str)+1;
    else return 0;
}
1
15.11.2009, 19:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2009, 19:37
Привет! Вот еще темы с ответами:

Рекурсивная функция для вычисления арифметической функции - C++
Доброго время суток. Требуется построить рекурсивную функцию, реализующую вычисление арифметической функции:X1 * X2. С одноместными...

Рекурсивная функция вычисления разрядности числа в двоичном виде - C++
Есть неработающий код: #include &lt;iostream&gt; using namespace std; unsigned char capacity (unsigned char number) { ...

Рекурсивная функция вычисления умножения элементов одномерного массива - C++
Реализовать рекурсивную функцию вычисление умножения элементов одномерного массива, - текст задания. Нужно сделать с помощью функций, то...

Рекурсивная функция для вычисления наибольшего значения в одномерном массиве - C++
для вычисления наибольшего значения в одномерном массиве


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

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

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