Неправильный синтаксис около конструкции "!"

Объясните, пожалуйста, какая ошибка в выражении, переменные типа int

(@PersonId % @bufPersonId)!= @PersonId --строка взята из следующего кода

--Задание Напишите алгоритм, определяющий является ли значение некоторой целочисленной переменной простым числом.
--План. Уменьшаем делитель на 1 пока не получим в остатке от деления исходного числа на делитель нуль(составное) либо исходное число(простое)
--Вариант в котором делитель будет также простым числом пока не рассматриваю

DECLARE @PersonId INT = 37 --исходное число
DECLARE @bufPersonId INT = @PersonId --делитель

while ((@PersonId % @bufPersonId)!= @PersonId) AND ((@PersonId % (@bufPersonId-1))!= 0)   --пока @bufPersonId не равен 1 и не найден делитель
SET @bufPersonId = @bufPersonId-1 --уменьшаем делитель на 1

            IF (@bufPersonId = 1) --если делитель еденица
                Print ('Это простое число')
                ELSE              --если делитель найден
                Print ('Это не простое число')

Ответы (1 шт):

Автор решения: Aziz Umarov

Обновите скрипт

        DECLARE @PersonId INT = 37 --исходное число
        DECLARE @bufPersonId INT = @PersonId --делитель

        while ((@PersonId % @bufPersonId) <> @PersonId) AND 
            ((@PersonId % (@bufPersonId-1)) <> 0)   --пока @bufPersonId не равен 1 и не найден делитель
        SET @bufPersonId = @bufPersonId-1 --уменьшаем делитель на 1

        IF (@bufPersonId = 1) --если делитель еденица
            Print ('Это простое число')
            ELSE              --если делитель найден
            Print ('Это не простое число')

Добавил вывод делителя после каждого сета. Доходит до 2-х (хотя предполагалось до 1 и останавливается. При этом независимо от агруметнта выдает вариант, что число не простое

→ Ссылка