Имя: Пароль:
1C
1С v8
Не выделяет целую часть
🠗 (Волшебник 28.10.2019 17:52)
0 sidalexsandr
 
28.10.19
17:24
Вот функция
Функция ЦифруПоНомеру(M, K)
    
    HH = 1;
    Пока HH < (K-1) Цикл
        
        M = Цел(M / 10);
        HH = HH + 1;
        
        
    КонецЦикла;
    
    Возврат M;

КонецФункции
1 vova1122
 
28.10.19
17:31
(0) и правильно делает что не выделяет. Если у тебя К будет =2 или меньше, то в цикл вообще не попадаешь....
2 Жан Пердежон
 
28.10.19
17:35
учу пользоваться отладчиком. ДОРОГО
3 sidalexsandr
 
28.10.19
17:43
(1) Исправил
Функция ЦифруПоНомеру(M, K)
    
    HH = 1;     
    Пока HH < K Цикл
        
        M = Цел(M / 10);
        HH = HH + 1;         
        
    КонецЦикла;
    
    Возврат M;

КонецФункции


Теперь выдает всё время 0
4 Chum
 
28.10.19
17:48
(3) В чем смысл твоей функции? Вернуть цифру по номеру позиции в числе?

Не проще ли:

М - число
К - позиция

Возврат Число(Сред(М, 1, К))
или
Возврат Число(Сред(Строка(М), 1, К))
5 Жан Пердежон
 
28.10.19
17:50
(3) цена растёт с каждым постом
6 Волшебник
 
28.10.19
17:50
Жан Пердежон, рекламные объявления платные
7 ChMikle
 
28.10.19
17:51
Может быть сразу функцию Цел()
8 xXeNoNx
 
28.10.19
17:51
(7) тссс, осознание придет позже)
9 sidalexsandr
 
28.10.19
17:51
(4) У меня стоит условие без использования строковых функций
10 pechkin
 
28.10.19
17:52

Цел(M % (pow(10,K))/pow(10,K-1))
11 Волшебник
 
28.10.19
17:52
(9) Все учебные задачки выполняйте без мисты, пожалуйста.
12 sidalexsandr
 
28.10.19
18:07
Понял