Дана строка, содержащая текст, кончающийся точкой. Вывести на экран слова,
Дана строка, содержащая текст, кончающийся точкой. Вывести на экран слова, содержащие три буковкы. C++
// 9rab.cpp: определяет точку входа для консольного прибавления.
//
include "stdafx.h"
include
include
using namespace std;
int main()
setlocale(LC_ALL, "Russian");
string s;
cout lt;lt; "Введите фразу" lt;lt; endl;
cin gt;gt; s; cout lt;lt; endl;
for (int i = 0; i lt; s.length();i++)
if (s.length() == 3) cout lt;lt; s lt;lt; endl;
return 0;
Не работает,почему?Может по иному как-то?
Безгачина
Алиса
for (int i = 0; i < s.length();i++) if (s.length() == 3) cout << s << endl;
Катя Аллахвардиева
Что вы пытаетесь сделать этой долею кода?
Юлия Халькина
пройтись с нулевого индекса строчки до размера
Сережа Хаткин
А проверкой?
Селидовкин
Ваня
Вы s.length() раз проверяете ВСЮ строчку на равенство 3
Леонид Коробов
Не каждое слово, а всю строчку
1 ответ
Алеша
//Во-первых, строчку нужно принимать через gerline, ибо через cin у вас в строку запишутся символы до первого пробела. Во -вторых, поиск слов из 3 знаков выполнен неправильно, поточнее он сработает в одном только случае, если вы введете строку из 3 символов, и то выведет 3 раза одно и то же слово.
//Вот как сделал я:
include lt;iostreamgt;
using namespace std;
int main()
string str;
int Size;
int ArrIndex = 0;
cout "Enter string: ";
getline (cin, str);
string Element[str.length()];
for (int i = 0; i lt; str.length(); i++)
if (str[i] != ' ' amp;amp; str[i] != '.')
Element[ArrIndex] += str[i];
else
ArrIndex++;
cout endl;
for (int j = 0; j lt; str.length(); j++)
Size = 0;
for (int k = 0; k lt; Element[j].length(); k++)
Size++;
if (Size == 3)
cout Element[j] endl;
return 0;
//Вот как сделал я:
include lt;iostreamgt;
using namespace std;
int main()
string str;
int Size;
int ArrIndex = 0;
cout "Enter string: ";
getline (cin, str);
string Element[str.length()];
for (int i = 0; i lt; str.length(); i++)
if (str[i] != ' ' amp;amp; str[i] != '.')
Element[ArrIndex] += str[i];
else
ArrIndex++;
cout endl;
for (int j = 0; j lt; str.length(); j++)
Size = 0;
for (int k = 0; k lt; Element[j].length(); k++)
Size++;
if (Size == 3)
cout Element[j] endl;
return 0;
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Игорь 14 лет назад был на 8 лет моложе, чем его
Математика.
Два тела массами m1 и m2 находящие на расстоянии R друг
Физика.
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
Облако тегов