Показать сообщение отдельно
  #1 (permalink)  
Старый 01.02.2019, 23:13
Новичок на форуме
Отправить личное сообщение для Антон789456 Посмотреть профиль Найти все сообщения от Антон789456
 
Регистрация: 01.02.2019
Сообщений: 3

Дана строка, найти сумму всех чисел в ней
Привет, мне лабу дали, одно из заданий такое: Дан текст. Найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова.

я попробовал написать код, но он почему то выводит первое попавшееся число в строке и завершается. В чём косяк, поможете?
var str = "Произвольный текст, содержащий цифры вроде 1, 2, 45 или 36";

function check(s){
    var sum = 0;
    while ((str[s] >= '0') && (str[s]<='9')) {

        sum = sum*10 + +str[s];

        s++;
    }
    return sum;
}

function index(f){

    while ((str[f] >= '0') && (str[f]<='9'))  f++;

    return f;

}

var summa = 0;
var i = 0;
do {

    if ((str[i] >= '0') && (str[i]<='9')){

        summa = summa + check(i);

        i = i + index(i);

    } i++

} while (i < str.length);

console.log(summa);
Ответить с цитированием