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

строки - C++

Восстановить пароль Регистрация
 
LIzardsd
Сообщений: n/a
11.05.2012, 16:08     строки #1
Вводиться строка.Вывести на экран все слова строки, содержащие две буквы D.
Есть код на паскале но на с++ перевести не получаеться помогите пожалуйста

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Var s,p:string[25]; i,j,k:integer;
Begin
Writeln('Input string:'); Readln(s);
For i:=1 to length(s) do
 If not(s[i]=' ') and not (i=length(s)) then p:=p+s[i]
  Else
   Begin
    If i=length(s) then p:=p+s[length(s)];
    For j:=1 to length(p) do If p[j]='D' then inc(k);
    If k=2 then Write(p,' ');
    k:=0; p:='';
   End;
Readln;
End.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2012, 16:08     строки
Посмотрите здесь:

C++ как сделать из строки массив из символов этой строки
C++ Отсортировать цифры, символы и буквы из строки в отдельные строки
Разработка функции (размещение строки s1 в середине строки s2 длиной l) C++
C++ Структуры и строки (как поменять значение строки в структуре?)
C++ Слияних 2 файлов в третий + строки + использование командной строки
C++ Вводятся 2 строки. Перевернуть обе строки, склеить и вывести
C++ Даны строки s, s0. Найти количество вхождений строки s0 в строку s
C++ Разместить текст первой строки по центру второй строки

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
11.05.2012, 18:28     строки #2
LIzardsd, А вы хоть пытались?


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
#include <iostream>
#include <string>
 
using namespace std;
 
int main()
{
    string s, p;
    int k = 0;
    cout << "Input string: ";
    getline(cin, s);
    for(int i = 0; i < s.length(); i++)
    {
        if(s[i] != ' ' && i != s.length() + 1)
        {
            p += s[i];
        }
        else
        {
            for(int j = 0; j < p.length(); j++)
            {
                if(p[j] == 'D')
                {
                    k++;
                }
            }
            if(k == 2)
            {
                cout << p.data();
            }
            k = 0;
            p = " ";
       }
    }
    system("pause >> null");
    return 0;
}
Вся строка должна закончиваться пробелом, иначе если в последнем слове две "D", оно не выводится!
Yandex
Объявления
11.05.2012, 18:28     строки
Ответ Создать тему
Опции темы

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