Либо смотря на код (замечают что || это не |, или что && это не &, и т.п.), либо при работе программы подают в ее алгоритмы тестовые значения и смотрят правильно ли отработала. Если нет значит где-то ошибка, может и в логике.