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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
DEM90
17 / 17 / 1
Регистрация: 06.05.2009
Сообщений: 115
#1

Слова английского текста рассортировать по возрастанию количества заданной буквы в слове - C++

15.05.2009, 15:58. Просмотров 1437. Ответов 7

Создать динамический массив строк как динамический массив указателей на строки .
Слова английского текста рассортировать по возрастанию количества заданной буквы в слове. Слова с одинаковым количеством такой буквы расположить в алфавитном порядке.

при изучении С++ наткнулся на такую задачку, а как решить - без понятия... Буду очень рад помощи...

Добавлено через 13 часов 27 минут 13 секунд
Неужели это такая сложная задача? Если не программно, то не могли бы вы объяснить, что такое и как создаётся ДИНАМИЧЕСКИЙ МАССИВ УКАЗАТЕЛЕЙ НА СТРОКИ...
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2009, 15:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Слова английского текста рассортировать по возрастанию количества заданной буквы в слове (C++):

Удалить слова, начинающиеся с заданной подстроки, а слова без заданной подстроки, упорядочить по возрастанию - C++
С консоли осуществляется ввод массива строк. Удалить все слова, начинающиеся с заданной подстроки. Все строки, не содержащие заданной...

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

В заданной тексте определить все гласные буквы, встречающиеся в каждом слове - C++
Из условия вытекает, что работать надо либо с char, либо string... Берем первое слово, дробим его на отдельные элементы, оставляем только...

Удалить из слова X все буквы, которые встречаются в слове Y - C++
#include <iostream> using namespace std; main() { string x, y; cin >>x; cin >>y;

Вычеркните из одного слова все буквы, встречающиеся в другом слове. - C++
Вычеркните из одного слова все буквы, встречающиеся в другом слове.

Исправить код, чтобы сортировались слова в строке, а не буквы в слове - C++
Надо чтобы сортировались слова в строке, а не буквы в слове. Заранее благодарю (программа писалась без стандартных функций) #include...

7
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
15.05.2009, 16:21 #2
Цитата Сообщение от DEM90 Посмотреть сообщение
Если не программно, то не могли бы вы объяснить, что такое и как создаётся ДИНАМИЧЕСКИЙ МАССИВ УКАЗАТЕЛЕЙ НА СТРОКИ...
C++
1
2
3
4
5
6
7
8
const int maxstr = 10; //число строк
const int maxlen = 80; //длина строки
int i;
char **strptr; //массив указателей на строки
 
strptr = new char*[maxstr];
for(i = 0; i < maxstr; i++)
    strptr[i] = new char[maxlen];
1
DEM90
17 / 17 / 1
Регистрация: 06.05.2009
Сообщений: 115
16.05.2009, 01:33  [ТС] #3
Gravity, спасибо!

Добавлено через 8 часов 36 минут 22 секунды
Как создавать это разобрался, а вот как делать вторую часть задания, подскжаите плиз...
0
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.05.2009, 05:06 #4
Цитата Сообщение от DEM90
Слова английского текста рассортировать по возрастанию количества заданной буквы в слове. Слова с одинаковым количеством такой буквы расположить в алфавитном порядке.
Это qsort, функция сравнения должна быть чуть сложнее, чем обычно бывает

C
1
2
3
4
5
6
7
8
9
10
11
12
/* CountCharLine:  считает в строке l количество символов ch */
int CountCharLine(const char *l, int ch)
{
    int n;
    
    if (l == NULL)
        return EOF;
    for (n = 0; *l; l++)
        if (*l == ch)
            n++;
    return n;
}
там нужно будет условие if, которое на базе CountCharLine будет либо результат возвращать -1 0 1 когда они не равны, либо тоже возвращать -1 0 1 когда они равны, но тогда проверять строки через strcmp (чтобы определить алфавитный порядок)

пример qsort, где Func простая
0
Вложения
Тип файла: zip qsort_strparray.zip (566 байт, 24 просмотров)
DEM90
17 / 17 / 1
Регистрация: 06.05.2009
Сообщений: 115
25.05.2009, 01:14  [ТС] #5
Скажите, а нету ли какого-либо другого способа сортировать текст? Что бы имнео своими функциями без помощи qsort`a
0
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
25.05.2009, 06:01 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
можно методом обмена

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/* SortLines:  сортирует строки в lines в количестве nlines по алфавиту */
void SortLines(char lines[][MAXLINE], unsigned nlines)
{
    int i, j;
    char tmp[MAXLINE];
    
    for (i = 0; i < nlines; i++)
        for (j = i+1; j < nlines; j++)
            if (strcmp(lines[i], lines[j]) > 0) {
                strcpy(tmp, lines[i]);
                strcpy(lines[i], lines[j]);
                strcpy(lines[j], tmp);
            }
}
1
Новичёк
0 / 0 / 0
Регистрация: 16.05.2009
Сообщений: 8
02.06.2009, 00:52 #7
А у меня не получается запустить вашу функцию Не могли бы вы написать полностью код, а то у меня одни ошибки((
0
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
02.06.2009, 02:17 #8
тут полный пример для сортировки строк
0
Вложения
Тип файла: zip sort_lines.zip (636 байт, 48 просмотров)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.06.2009, 02:17
Привет! Вот еще темы с ответами:

Поиск заданной буквы в строке. Определения количества слов - C++
В заданной строке определить количество слов, в которых заданная буква встречается больше одного раза. Язык С. Помогите пожалуйста!

Напишите программу, которая удаляет из слова X все буквы, которые встречаютьс в слове Z - C++
Программа работает не правильно:( не могу понять как удалить буквы. #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; ...

Программа для нахождения общего количества вхождений заданной буквы - C++
Составить программу для нахождения общего количества заданной буквы в трех заданных предложениях. (Определить функцию для расчета...

Выяснить, есть ли в заданной строке слова, которые содержат все буквы слова "read" - C++
Помогите, пожалуйста, с кодом на с++. Задание было такое: Дано строку символов. Выяснить, есть ли в ней слова, которые содержат все...


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

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
02.06.2009, 02:17
Ответ Создать тему
Опции темы

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