Примеры программ на языке QBASIC

Определение количества различных цифр в числе


REM Определение количества различных цифр в числе
DECLARE FUNCTION NumDig! (N&)
CLS
INPUT "Введите число : ", N&
PRINT "Количество разных цифр в его записи = "; NumDig(N&)
END

FUNCTION NumDig (N&)
REM Выделение и подсчет количества разных цифр в числе N
DIM d(10)
IF N& < 10 THEN NumDig = 1: EXIT FUNCTION
DO
  k% = N& MOD 10:  ' Выделение очередной цифры
  d(k%) = d(k%) + 1:  'Посчет количества цифр, равных k
  N& = (N& - k%) / 10: ' Удаление обработанной цифры
LOOP UNTIL N& = 0
FOR k% = 0 TO 9: ' Цикл подсчета количества обнаруженных цифр
  IF d(k%) <> 0 THEN s = s + 1: ' Если d(i)=0, цифры i не было
NEXT k%
NumDig = s
END FUNCTION