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

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

Войти
Регистрация
Восстановить пароль
 
Vlad708
4 / 4 / 0
Регистрация: 04.11.2012
Сообщений: 72
#1

Сравнение кол-ва символов рекурсией - C++

07.12.2012, 19:46. Просмотров 245. Ответов 1
Метки нет (Все метки)

Применить рекурсивную функцию для определения каких цифр (1, 2, 3) больше среди цифр натурального числа.

Попытался сам сделать, но что-то вообще никак не пойму как всё красиво реализовать...
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 <stdio.h>
#include <conio.h>
 
int fun(int n) {
  int s=1,i,c;
  if ( (n==3) || (n==5) || (n==1) ) return 1;
    else
  if (n!=0)
   c=n%10;
    if (c==1)
      return 1+fun(n/10);
    if (c==3)
      return s+fun(n/10);
    if (c==5)
      return s+fun(n/10);
}
 
void vvod( int *n) {
  printf("Введите число\n");
  scanf("%i",n);
}
 
void main () {
  clrscr ();
  int n;
  vvod(&n);
  printf("%d",fun(n));
  getch ();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2012, 19:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сравнение кол-ва символов рекурсией (C++):

Удалить конец строки символов. Ввести кол-во удаляемых символов , вывести результат ,String ,задачка,С++ - C++
Удалить конец строки символов. Ввести количество удаляемых символов , вывести результат на печать . Помогите плиз с задачкой. тема :...

Как заставить Strncpy вложить в itog часть символов строки str, если дина str больше, чем кол-во нужных нам символов? - C++
strncpy(itog,str,size+1); cout&lt;&lt;itog; itog вообще не выводится Добавлено через 2 минуты Вот код. #include &lt;iostream&gt; ...

подсчет кол-ва символов в массиве - C++
count выдает постоянное кол-во символов в считаном массиве! Не пойму в чем дело.Если это мусор, пытался обнулить через memset() -не...

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

Ограничение на ввод определённого кол-ва символов - C++
Народ очень нужно сделать так, чтобы при вводе в какое-нибудь поле(string), оно либо позволяло: - вести только 8 символов - принять...

Вывести слово с максимальным кол-вом символов - C++
Добрый день. Я хожу к репетитору по программированию (с++). Пока просто пытаюсь понять азы. На дом было дано задание, которое заключается в...

1
MrGluck
Модератор
Эксперт CЭксперт С++
7278 / 4439 / 650
Регистрация: 29.11.2010
Сообщений: 12,017
07.12.2012, 19:54 #2
Если без проверки на то, что подобных цифр быть не может, то
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
 
int foo(int x, int n1, int n2, int n3)
{
    if (x == 0)
        return (n1 > n2 ? (n1 > n3 ? 1 : 3) : (n2 > n3 ? 2 : 3));
    switch (x % 10)
    {
        case 1 : n1++; break;
        case 2 : n2++; break;
        case 3 : n3++; break;
        default : break;
    }
    return foo(x / 10, n1, n2, n3);
}
 
int main()
{
    int x;
    std::cin >> x;
    std::cout << foo(x, 0, 0, 0);
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.12.2012, 19:54
Привет! Вот еще темы с ответами:

Подсчет кол-ва символов в строке во входном файле - C++
Подскажите как подсчитать кол-во символов в строке, введенная из файла, тип char. Заранее спасибо.

Как подсчитать кол-во символов между двумя знаками? - C++
В вообщем суть задания в том, чтобы посчитать кол-во символов между двумя знаками, может кто написать код для этого? фулл задание:...

Сравнение символов - C++
#include &lt;iostream&gt; using namespace std; int main() { char t = &quot;ab&quot;; char j = &quot;ac&quot;; if(t &gt; j)cout &lt;&lt; 5; ...

Сравнение русских символов. - C++
Проблема с русскими символами. Русские символы заносятся в массив занимая две ячейки( 2 байта ). Думаю это связано с UTF-8 кодировкой. ...


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

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

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