Строка

  • Автор темы KasimovBakyt
  • Дата начала
K

KasimovBakyt

#1
Помогите!
Для заданной строки символов найти наибольшее записанное в этой строке целое число (без учета знака числа). Например, для строки <<sdfvgsd1.9fdmjvd-15.2dnj05>>наибольшее целое число 15.
Я не знаю как символы отделить от цифр...
Помогите пожайлуста :eek:
 
R

rrrFer

#3
Код:
#include <iostream>
#include <sstream>
int main() {
std ::string str;
std ::stringstream sstr;
int	max, t;
char c;
bool fl;

str = "<<sdfvgsd1.9fdmjvd-15.2dnj05>>";

sstr << str;

fl = 0;
while( 0 == sstr .eof() ) {
c = sstr .peek();
while( 0 == sstr .eof() && ( c <= '0' || c >= '9' ) ) {
sstr .get();
c = sstr .peek();
}
sstr >> t;
if( 0 == fl || t > max )
max = t;
fl = 1;
}

std ::cout << max;

return 0;
}
Оптимизируй сам