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

Определить количество слов в строке и вывести на экран слова строки в столбик - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ проверка попадания точки в заданную область (вопрос) http://www.cyberforum.ru/cpp-beginners/thread175964.html
Задание: 1.Записать логическое выражение,соответствующее заданной области истинности 2.Составить программу для: подсчета количества точек, попавших в заданную область формирования массива из координат точек, попавших в заданную область. http://ipicture.ru/uploads/101013/UWUTORqqAO.jpg помогите сделать или объясните как.
C++ В заданном массиве целых чисел указать те числа, в которых больше всего единиц Помогите, пожалуйста, с задачец. В заданном массиве целых чисел указать те числа, в которых больше всего единиц http://www.cyberforum.ru/cpp-beginners/thread175935.html
C++ Связный список, перегрузка операторов
Доброго дня. Задача в том, что бы сделать перегрузку оператора копирования для связного списка (односвязный список). И собственно сам вопрос, даже рассуждение: если делать копирование, то нужно создавать новый эелементы для нового списка, т.к. при удалении старого, все его адреса станун не действительными. Или это всё как проще? ЗЫ Меня интересуют мысли, а не код :)
Метод Рунге-Кутта. C++
хотелось бы спросить знающих людей. Мне необходимо решить систему ДУ уравнений методом Рунге_кутта 4 порядка. А значит мне нужно в цикле на каждом шаге рассчитывать этим методом значения нескольких переменных. Как это реализовать? Условно, мне надо каждый раз рассчитывать Vx, Vy, x, y -скорости и координаты. Первая моя идея такая: 1. НАписать функции рассчета Vx, Vy, x, y; затем,...
C++ Найти n чисел Мерсенна http://www.cyberforum.ru/cpp-beginners/thread175876.html
Числа Мерсенна. Простые число Мерсенна -это число, которое может быть представлено в виде: 2^p-1, где р-тоже простое число. Написать программу для нахождения n таких чисел.
C++ дано множество отрезков.найти max объединение дано множество отрезков.найти max объединение.подскажите плиз алгоритм. подробнее

Показать сообщение отдельно
Devastator1
4 / 4 / 0
Регистрация: 12.10.2010
Сообщений: 21
13.10.2010, 17:43     Определить количество слов в строке и вывести на экран слова строки в столбик
Добрый вечер! Помогите разобраться:

Исходное задание:
Дана строка текста, в которой слова разделены символами # и пробелами.

А) определяет количество слов в строке и выводит на экран слова этой строки в столбик;
(решено)

Б) находит самое короткое слово(решено) и его порядковый номер в строке, определить сколько раз буква «N» встречается в этом слове.

Остались вопросы: как определить порядковый номер самого короткого слова? как определить сколько раз буква "N" встречается в этом слове?

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

т.е если исходная строка: привет как дела
первая функция обработала: привет
вторая функция получит на вход: привет

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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace std;
void small( char string[] )
{
        const char delimiters[] = " #" ; 
        char *word, *minword = 0;
        size_t minnumber = 150;
        word = strtok(string, delimiters);
 
        while(word != 0) {
                if(minnumber > strlen(word)) {
                        minnumber = strlen(word);
                        minword = strdup(word);
                }
                word = strtok(NULL, delimiters);
        }
 
        cout<<"The smaller word: "<<minword<<endl;
 
}
void num( char string[] )
{
const char delimiters[] = " #"; 
char **words = NULL, *p = NULL;
int i;
int cnt=0;
 
for ( p = strtok(string, delimiters); p != NULL; p = strtok(NULL, delimiters) )     
{
            if ( ( words = (char**)realloc(words, sizeof(char*) * (cnt + 1)) ) == NULL ){
                    cout<<"No memory";
                    exit(1);
            }
            if ( ( words[cnt] = strdup(p) ) == NULL ){
                    cout<<"Duplicate word!!!";
                    exit(1);
            }
            ++cnt;
    }
    
   cout<<"Kol-vo slov in string: "<<cnt<<endl;
    
   for ( i = 0; i < cnt; ++i )
   {
            cout<<words[i]<<endl;
   }
    for ( i = 0; i < cnt; ++i ){
            if ( words[i] != NULL ){
                    free(words[i]);
                    words[i] = NULL;
            }
    }
    free(words);
    words = NULL;
}
int main()
{  
char string[]="privet kak dela#idut#normalno";
char string1[]="privet kak dela#idut#normalno";
num(string);
small(string1);
system("pause");            
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru