Это моя функция для нахождения простых чисел
void print(int num)
{
for(int i=2; i<num/2; i++)
{
if(num%i==0)
{
cout<<"not prime\n";
exit(0);
}
}
cout<<"prime\n";
}
Мой ввод в число. Я пытаюсь найти время выполнения, используя большой о. Я помню, что поиск времени выполнения имел какое-то отношение к журналу.
В худшем случае моя программа будет запускать n/2 -1 раз?
Да, цикл работает n/2-1 раз и содержит только команды постоянной сложности, поэтому ваше время выполнения оценивается как * (n/2-1) для некоторого a. В big-o это записывается как O (n/2-1), и поскольку постоянные факторы не имеют значения, это равно O (n).
(как в сторону: это фактически theta (n), что означает, что он не просто ограничен сверху n, но также снизу на n)