Как вывести из строки слова в которых есть цифра?
#include <iostream>
#include <cmath>
#include <stdio.h>
#include <ctype.h>
#include <time.h>
#include <stdlib.h>
#include <typeinfo>
using namespace std;
int main() {
string str;
cin >> str;
int len = str.length();
}
Вариантов много. Вот один из них:
string str;
//просто cin >> str читает до символа разделителья, поэтому:
getline(cin, str);
size_t p = 0, sz = 0;
const char delim = ' ';
while (sz != str.npos) {
p = str.find_first_not_of(delim, sz);
if (p == str.npos) break;
sz = str.find(delim, p);
std::string s = str.substr(p, sz - p);
const size_t len = s.length();
for (size_t i = 0; i < len; ++i) {
if (isdigit(s[i])) {
std::cout << s << '\n';
break;
}
}
}
Вот тогда еще вариант со строковым потоком. Переписав функцию checkWord вы получите решение другой задачи со словами
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
bool checkWord(string word) {
int i = 0;
int flag = false;
while (i < word.length() && flag == false) {
if (word[i] >= '0' && word[i] <= '9') {
flag = true;
}
else {
i++;
}
}
return flag;
}
int main()
{
string str;
string word;
cout << "str= ";
getline(cin,str);
stringstream ss;
ss << str;
while (ss >> word) {
if (checkWord(word) == true) {
cout << word << endl;
}
}
getchar();
return 0;
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Подскажите пожалуйста как сформировать массив положительных из уже существующего массива ,как именно работать с размерностью нового массива,если...
Суть задания: есть список покупок по днямСписок является вектором векторов
Мне надо пробежаться по list,который хранит имеет тип структурыКаким образом можно в цикле перебрать каждый элемент и распечатать? Допустим...
У меня обычный "пустой проект" в VS2019(С++), я нашёл как найти координаты окна и курсора,