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

Количество слов и цифр в строке, и последовательность - C++

Восстановить пароль Регистрация
 
Timon779
1 / 1 / 0
Регистрация: 11.06.2010
Сообщений: 65
16.01.2011, 19:48     Количество слов и цифр в строке, и последовательность #1
Помогите, осталось решить всего 2 задачи из 10 заданных))
Нужно дописать решение, но чтобы его принимал компилятор BORLANDC, потому что сдаем пока только на нём.
В первой задание:
Сколько слов и цифр в строке?
Написал, как найти количество слов, но как вычислите количество цифр?
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
//254(3).cpp
#include <stdio.h>
#include <conio.h>
 
enum {OUT, IN};
 
int main(void)
{
   int c, nw, state;
   clrscr();
   state = OUT;
   nw=0;
   printf("Введите текст: ");
   while( (c=getchar()) != '\n')
      if(c==' ' || c=='.' || c== '\t') {
     state = OUT;
      } else if(state==OUT) {
     state = IN;
     nw++;
      }
   printf("В тексте %d слов.\n", nw);
   getch();
   return 0;
}
Во второй:
Найти все натуральные n-значные числа, цифры в которых образуют строго возрастающую последовательность (например, 1234, 5789).
С этой сколько предложенных вариантов ни пробовал, не получается.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2011, 19:48     Количество слов и цифр в строке, и последовательность
Посмотрите здесь:

C++ Вычыслить количество слов в строке, длинна которых равна 3 символам и вывести их на экран, если же таких слов нет, то выдать об этом сообщение.
C++ В заданной строке определить количество слов (в строке может содержаться несколько пробелов подряд).
Cтрока: Определить количество средних слов в строке и какое из слов начинается на большую по коду букву C++
C++ Дана последовательность n натуральных чисел. Для каждого числа вычислить количество его цифр и сумму этих цифр. Вывести на экран каждое число, количес
C++ Массив символов (Подсчитать количество слов в строке, при условии, что в качестве разделителя слов используется один или несколько пробелов)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
16.01.2011, 20:02     Количество слов и цифр в строке, и последовательность #2
Цитата Сообщение от Timon779 Посмотреть сообщение
Найти все натуральные n-значные числа, цифры в которых образуют строго возрастающую последовательность (например, 1234, 5789).
С этой сколько предложенных вариантов ни пробовал, не получается.
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
#include <iostream>
#include <sstream>
#include <string>
#include <cmath>
#include <algorithm>
#include <iterator>
 
int main()
{
    int n = 0;
    std::cin >> n;
    for(int i = pow(10.0, static_cast<double>(n - 1)); i < pow(10.0, static_cast<double>(n)) - 1; ++i)
    {
        std::ostringstream ost;
        ost << i;
        std::string str = ost.str(), tmp = ost.str();
        std::sort(tmp.begin(), tmp.end());
        std::string::iterator it = std::unique(tmp.begin(), tmp.end());
        tmp.resize(it - tmp.begin());
        if(tmp == str)
            std::cout << str << ' ';
    }
 
    return 0;
}
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
16.01.2011, 20:05     Количество слов и цифр в строке, и последовательность #3
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 <stdio.h>
int col=0; 
void rec(int poz, int N, int a)
{
    if(poz==N)
    {
        col++;
        return;
    }
    for(int i=a+1; i<10; i++)
        rec(poz+1, N, i);
} 
int main(){
    int N;
    printf("N= ");
    scanf("%d", &N);
    for(int i=1; i<10; i++)
        rec(1, N, i);
    printf("Rez= %d\n", col);
 
        return 0;
}
Timon779
1 / 1 / 0
Регистрация: 11.06.2010
Сообщений: 65
16.01.2011, 21:14  [ТС]     Количество слов и цифр в строке, и последовательность #4
asics ты мне выкладывал уже этот код, я говорю, у меня BORLANDC, он половины библиотек там не воспринимает

Добавлено через 1 минуту
Цитата Сообщение от valeriikozlov Посмотреть сообщение
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 <stdio.h>
int col=0; 
void rec(int poz, int N, int a)
{
    if(poz==N)
    {
        col++;
        return;
    }
    for(int i=a+1; i<10; i++)
        rec(poz+1, N, i);
} 
int main(){
    int N;
    printf("N= ");
    scanf("%d", &N);
    for(int i=1; i<10; i++)
        rec(1, N, i);
    printf("Rez= %d\n", col);
 
        return 0;
}
спасибо, проверю, отпишусь
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
16.01.2011, 21:23     Количество слов и цифр в строке, и последовательность #5
2.

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
30
31
32
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <malloc.h>
 
int foo(int one, int dig)
{
    char* Arr;
    Arr=(char*)malloc((dig+1)*sizeof(char));
    sprintf(Arr, "%d", one);
    int i=0;
    for(i=0; i<dig-1; ++i)
        if(Arr[i] >= Arr[i+1])
        {
            free(Arr);
            return 0;
        }
    free(Arr);
    return 1;
}
 
int main()
{
    int N=0;
    printf("Enter N: ");
    scanf("%d", &N);
    int i=0;
    for(i=(int)pow((double)10, N-1); i != (int)pow((double)10, N); ++i)
          if(foo(i, N) == 1)
             printf("%d\n", i);
    return 0;
}
Timon779
1 / 1 / 0
Регистрация: 11.06.2010
Сообщений: 65
17.01.2011, 01:06  [ТС]     Количество слов и цифр в строке, и последовательность #6
Цитата Сообщение от ForEveR Посмотреть сообщение
2.

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
30
31
32
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <malloc.h>
 
int foo(int one, int dig)
{
    char* Arr;
    Arr=(char*)malloc((dig+1)*sizeof(char));
    sprintf(Arr, "%d", one);
    int i=0;
    for(i=0; i<dig-1; ++i)
        if(Arr[i] >= Arr[i+1])
        {
            free(Arr);
            return 0;
        }
    free(Arr);
    return 1;
}
 
int main()
{
    int N=0;
    printf("Enter N: ");
    scanf("%d", &N);
    int i=0;
    for(i=(int)pow((double)10, N-1); i != (int)pow((double)10, N); ++i)
          if(foo(i, N) == 1)
             printf("%d\n", i);
    return 0;
}
спасибо! Заработало!))) Ведь если я ввожу 3, в конце такие числа вылезают: 569, 578, 579, 589, 678 и т.д. это же правильно?

Добавлено через 1 минуту
осталась только задача со словами и числами в предложении
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9372 / 5422 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
17.01.2011, 01:10     Количество слов и цифр в строке, и последовательность #7
Цитата Сообщение от Timon779 Посмотреть сообщение
осталась только задача со словами и числами в предложении
Здесь не помогли?
Дублирование тем - нарушение правил форума. На первый раз устное предупреждение...
Timon779
1 / 1 / 0
Регистрация: 11.06.2010
Сообщений: 65
17.01.2011, 02:04  [ТС]     Количество слов и цифр в строке, и последовательность #8
Цитата Сообщение от easybudda Посмотреть сообщение
Здесь не помогли?
Дублирование тем - нарушение правил форума. На первый раз устное предупреждение...
мне код с примером был нужен, я же там написал, что часть сделал, но не все, а потом тема в историю ушла. Теперь вот последнюю задачу осталось доделать
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.01.2011, 17:31     Количество слов и цифр в строке, и последовательность
Еще ссылки по теме:

Количество слов в заданной строке (для каждого из слов) C++
C++ Дана строка. Словом в ней назовем последовательность подряд идущих латинских букв (больших или маленьких). Подсчитать количество слов в строке
C++ Подсчитать количество букв, слов и цифр в строке

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

Или воспользуйтесь поиском по форуму:
Timon779
1 / 1 / 0
Регистрация: 11.06.2010
Сообщений: 65
18.01.2011, 17:31  [ТС]     Количество слов и цифр в строке, и последовательность #9
up! Остался первый вопрос
Yandex
Объявления
18.01.2011, 17:31     Количество слов и цифр в строке, и последовательность
Ответ Создать тему
Опции темы

Текущее время: 17:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru