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

Строки. нужен код для соритровки символов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ файлы http://www.cyberforum.ru/cpp-beginners/thread388554.html
Разработать алгоритм и составить программу для решения : Напишите программу, которая составляет частотный словарь заданного текста, пропуская при этом символы - разделители. Словом будем считать непрерывную последовательность символов латинского алфавита. Слова, различающиеся только регистром символов, считаются одинаковыми. Элемент частотного словаря содержит слово и количество повторений...
C++ Виды наследования С++ Построить класс статистическая выборка числовых величин со свойствами: количество элементов выборки, массив элементов выборки и методами: рассчитать дисперсию выборки; определить количество элементов выборки, которые строго больше некоторого значения Х(параметр), определить соответствует ли заданная выборка нормальному распределению случайных величин( вернуть истину или ложь), показать всю... http://www.cyberforum.ru/cpp-beginners/thread388551.html
C++ Начало пути
Всем привет! :) Решил изучать и писать на языке C++. Есть не большой опыт программирования(Pascal,Dephi). Сразу возникло куча вопросов: 1.В какой среде нужно начинать писать новичку? 2.Учебник Язык программирования C,Брайна Кернигана и Денниса Ритчи подходить для изучения C++? 3.В чем различия всех сред?
C++ Ряды Тейлора. Поможите?
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на интервале от xнач. до xкон. с шагом dx и с точностью e. Каждая строка таблицы должна содержать значение аргумента, значение функции и количество просуммированных членов ряда. Заранее всем спасибо за помощь! :)
C++ найти все слова содержащие максимальное количество гласных букв http://www.cyberforum.ru/cpp-beginners/thread388511.html
#include <stdio.h> #include <string.h> #define GLAS_LETT "AaEeIiOoUuYy" #define DELIM " ,.:;!?" int get_cnt_lett_of_glass(const char *wrd){ int cnt = 0, i, j; for(i = 0; i < strlen(wrd); ++i){ for(j = 0; j < strlen(GLAS_LETT); ++j){
C++ Win32 Mfc отличия не могу никак переделать из Win32 в MFC собственно в Win32 stdafx.h #include "../NativeToCLRWrapperLibrary/SomeClass.h" #pragma comment(lib, "NativeToCLRWrapperLibrary.lib") при переносе этих строк в MFC подробнее

Показать сообщение отдельно
Dima7147
0 / 0 / 0
Регистрация: 17.11.2011
Сообщений: 17
21.11.2011, 20:27  [ТС]     Строки. нужен код для соритровки символов
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include <iostream>
using namespace std;
int main()
{
    char a[256], b[256], s[256];
    gets(a);
    gets(b);
    int i = 0, j = 0, q = 0;
    while (i < strlen(a) && j < strlen(b))
    {
        while (!((a[i] > 64 && a[i] < 91) || (a[i] > 96 && a[i] < 123)))
            i++;
        while (!((b[j] > 64 && b[j] < 91) || (b[j] > 96 && b[j] < 123)))
            j++;
        if ((a[i] > b[j]) && ((a[i] > 64 && a[i] < 91) || (a[i] > 96 && a[i] < 123)) && ((b[j] > 64 && b[j] < 91) || (b[j] > 96 && b[j] < 123)))
        {
            while ((a[i] > 64 && a[i] < 91) || (a[i] > 96 && a[i] < 123))
            {
                s[q] = a[i];
                q++;
                i++;
            }
            s[q] = ' ';
            q++;
        }
        else 
        {
            while ((b[j] > 64 && b[j] < 91) || (b[j] > 96 && b[j] < 123))
            {
                s[q] = b[j];
                q++;
                j++;
            }
            s[q] = ' ';
            q++;
        }
    }
    if (i = strlen(a))
        while (j < strlen(b))
        {
            bool t = true;
            if ((b[j] > 64 && b[j] < 91) || (b[j] > 96 && b[j] < 123))
            {
                s[q] = b[j];
                q++;
                j++;
            }
            if (!((b[j] > 64 && b[j] < 91) || (b[j] > 96 && b[j] < 123)) && t == false)
            {
                s[q] = ' ';
                q++;
                j++;
                t = true;
            }
            if (!((b[j] > 64 && b[j] < 91) || (b[j] > 96 && b[j] < 123)) && t == true)
                j++;
        }
    else
        while (i < strlen(a))
        {
            bool t = true;
            if ((a[i] > 64 && a[i] < 91) || (a[i] > 96 && a[i] < 123))
            {
                s[q] = a[i];
                q++;
                i++;
            }
            if (!((a[i] > 64 && a[i] < 91) || (a[i] > 96 && a[i] < 123)) && t == false)
            {
                s[q] = ' ';
                q++;
                i++;
                t = true;
            }
            if (!((a[i] > 64 && a[i] < 91) || (a[i] > 96 && a[i] < 123)) && t == true)
                i++;
        }
        cout << s;
        return 0;
}
 Комментарий модератора 
Используйте теги форматирования кода!


вот мой вариант но не могу найти ошибку... отредактируйте плиз кто сможет))
просто тот код я немного не понял но в итоге

Пишет:
enter a first line:
15abr46987rbi]f';/sdfbx/s/rgent/

enter a second line:
h;liou0/hj,kn90hmn'd[dp

result:
15abr46987rbi]f' /sdfbx/s/rgent/ h liou0/hj kn90hmn'd[dp

,а должно на выходе выдавать только цифры...заменяя остальные символы пробелом ну т.е. вместо (a325b) должно будет выдать (a b)
 
Текущее время: 23:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru