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

Поиск простых чисел


DEFINT A-Z
CLS
MAXK = 500
DIM IS1(MAXK + 1)
FOR I = 0 TO MAXK - 1: IS1(I) = 1: NEXT I
FOR I = 0 TO MAXK
  IF IS1(I) = 1 THEN
    'если число еще не "проколото"
    PRIME = I + I + 3: ' сформировали очередное простое число
    N = N + 1: ' увеличили счетчик простых чисел
    PRINT USING "#####"; PRIME; : ' вывод очередного простого числа
    K = I + PRIME: ' индекс для первого "прокола"
    WHILE K <= MAXK
      REM  "проколы" чисел, делящихся на PRIME
      IS1(K) = 0: K = K + PRIME
    WEND
  END IF
NEXT I
  PRINT
  PRINT "Среди первых "; MAXK + 1; " нечетных чисел";
  PRINT " найдено "; N; " простых"
END