Имя: Пароль:
1C
1С v8
Подсчет целых чисел в строке
,
0 devochka_1c
 
08.04.12
17:52
Добрый день!
Подскажите, пожалуйста, как посчитать количество целых неотрицательных чисел в произвольной строке (Платформа 8.2)?
1 Armando
 
08.04.12
17:58
Парсить строку в цикле или регексп
2 НикДляЗапросов
 
08.04.12
18:02
(0) Лабороторная?
3 kotletka
 
08.04.12
18:07
213123,1314124,131312,12   вот сколько здесь целых чисел?
4 kotletka
 
08.04.12
18:07
условие уточни
5 Один С
 
08.04.12
18:09
(3) 4
6 kotletka
 
08.04.12
18:13
последнее число у меня 12,12
7 kotletka
 
08.04.12
18:13
я так хочу
8 Armando
 
08.04.12
18:14
(6) глупый что ли?
9 kotletka
 
08.04.12
18:14
(5)как тогда отличать целое от не целого?
10 devochka_1c
 
08.04.12
18:16
(4)Пользователь вводит произвольную строку, например, "пывывао8о ова4ывп 65 рв -86,4 ырввы 56пппп 89 рпавоп рррр -55 океоу". Ответом будет Количество = 2.
11 Один С
 
08.04.12
18:17
(9) ну мы с 1с отделяем целую часть от дробной точкой. а вы как?
12 kotletka
 
08.04.12
18:18
(5),(8) смотрим (10) и отвечаем я один глупый или тс тоже? или вы оба- двое тупанули
13 НикДляЗапросов
 
08.04.12
18:18
(10) Смешно, что за умолешеные пользователи?
14 wertyu
 
08.04.12
18:19
(10) ничего не получится - фотки нет
15 Armando
 
08.04.12
18:19
(12) ТС тоже
16 Один С
 
08.04.12
18:20
(10) отжежнихренасибе..
17 kotletka
 
08.04.12
18:20
(10)а вдруг символ "-"  это часть строки а -86,4 это число 86 и "-" и ",4" ты уж задание то уточни
18 kotletka
 
08.04.12
18:20
(15)запишем, Армандо с тз не работал, логика отсутствует
19 devochka_1c
 
08.04.12
18:22
(17) "-86,4" - это отрицательное число. В подсчет должны попасть только числа 65 и 89.
20 НикДляЗапросов
 
08.04.12
18:24
(19) Ну делай
21 Один С
 
08.04.12
18:24
я пас..
22 hhhh
 
08.04.12
18:26
(19) ну, цикл по символам с условиями. Действительно задание придурочное, поэтому готовое решение вы вряд ли найдете.
23 kotletka
 
08.04.12
18:26
ты не примеры свои давай, а определи: ряд цифр считается за одно число или можно за несколько, знак разделения дробной части
24 wertyu
 
08.04.12
18:28
(19) тогда уж количество = 5 )
25 devochka_1c
 
08.04.12
18:28
(23) знак разделения дробной части ",". знак "-" - отрицательное число...
26 wertyu
 
08.04.12
18:28
даже 6: 8 4 65 4 56 89
27 wertyu
 
08.04.12
18:29
(25) с чего бы это? а может знак разделения дробной части "."
28 devochka_1c
 
08.04.12
18:29
(24) нет, именно 2, т.к. числа должны быть разделены пробелами...вот такое дурацкое задание...(((
29 МихаилМ
 
08.04.12
18:30
30 aleks-id
 
08.04.12
18:31
плевая задачка.

мнстр = СтрЗаменить(СтрокаВвода," ",Символы.ПС);
всегострок=мнстр.КоличествоСтрок();
всегоцелыхположительныхчисел=0;
Для сч=1 По всегострок Цикл
  Попытка
     ааа=Число(СтрПолучитьСтроку(мнстр,сч);
     если Цел(ааа)=ааа и ааа > 0 Тогда
        всегоцелыхположительныхчисел=всегоцелыхположительныхчисел+1;
     КонецЕсли;
  Исключение
     Продолжить
  КонецПопытки;
Сообщить(всегоцелыхположительныхчисел);
31 wertyu
 
08.04.12
18:32
(30) хитрый, когда мы выпытали все условия )
32 Злобный Фей
 
08.04.12
18:32
НашаСтрока = СтрЗаменить(Стр," ",Символы.ПС);
   ВсегоЦелыхЧисел = 0;
   Для А = 1 По СтрЧислоСтрок(НашаСтрока) Цикл
       ТекСтрока = СтрПолучитьСтроку(НашаСтрока,А);
       Попытка
           НашеЧисло = Число(СтрЗаменить(ТекСтрока,",","."));
       Исключение
           Продолжить;
       КонецПопытки;
       Если НашеЧисло>0 И Цел(НашеЧисло) = НашеЧисло Тогда
           ВсегоЦелыхЧисел = ВсегоЦелыхЧисел + 1;
       КонецЕсли;
   КонецЦикла;
   Сообщить(ВсегоЦелыхЧисел);
33 aleks-id
 
08.04.12
18:33
+30
всегострок=СтрЧислоСтрок(мнстр)
34 Злобный Фей
 
08.04.12
18:33
Чьорт, (30) опередил
35 kotletka
 
08.04.12
18:33
(30)ниче не попутал, наФейхоя пробел " " приплел, кто сказал что числа разделены пробелами?
Для сч =1 по СтрДлина(ТвояСтрока) цикл
Если КодСимвлоа(Сч)<= код 0 по аски (не помню) и
   КодСимвлоа(Сч)>= Код 9 тогда
****


КонецЕсли
КонецЦикла
36 Злобный Фей
 
08.04.12
18:34
(35) читай (28)
37 kotletka
 
08.04.12
18:34
извиняюсь
38 wertyu
 
08.04.12
18:35
(34) у тебя правильнее )
39 aleks-id
 
08.04.12
18:35
не стритесь девочки ))))
40 aleks-id
 
08.04.12
18:37
(38) дело не в правильности кода а в логике алгоритма ;)
а он у нас одинаковый.
41 wertyu
 
08.04.12
18:37
(40) ты запятые не заменил, тебе жирный минус )
42 devochka_1c
 
08.04.12
18:38
Всем большое спасибо!!!
43 aleks-id
 
08.04.12
18:39
(41) не обольщайся. код в (32) вылетит в ошибку при разборе строки.
44 Злобный Фей
 
08.04.12
18:42
(43) На какой строке?
45 hhhh
 
08.04.12
18:44
(41) вроде Число() всегда спокойно хавало запятые.
46 aleks-id
 
08.04.12
18:46
(44) ты не учел, что функция Число() использует виндовые настройки разделителя дроби ;)
47 aleks-id
 
08.04.12
18:47
Встроенные функции языка
Число (Number)
Синтаксис:
Число(<Значение>)
Преобразует полученный параметр в значение типа Число.
Значение типа Строка преобразуется в число в том случае, если параметр является строковым представлением литерала численного типа. При этом строковое представление анализируется как с учетом региональных установок информационной
базы, так и без их учета. В противном случае будет выдано сообщение об ошибке выполнения функции.
48 aleks-id
 
08.04.12
18:47
апля. я лох :) сори :)
49 Злобный Фей
 
08.04.12
18:48
(45) Точно. Но лучше перебдеть