Помогите, прошу... Надо написать код в С++Для заданного числа найти все его делители.
..Надо написать код в С++
Для заданного числа найти все его делители.
Спасибо... но что-то мой визуал студио выдает кучу ошибок... (((
..Надо написать код в С++
Для заданного числа найти все его делители.
Спасибо... но что-то мой визуал студио выдает кучу ошибок... (((
void divisors(int n)
{
for(int=1; i<=sqrt(n)); i++)
if( n%i ==0 )
printf("%d %d", i, n/i);
}
Я думаю, что ВСЕ делители несколько иначе:
=Serge= , да, ты прав. Конечно же, число может делиться и на половину самого себя и даже на само себя, но с другой стороны нерационально проверять все числа до половины. Если порядок неважен, то можно, например, проверять все делители до корня из данного числа и писать их парами: сначала меньший найденный делитель, а затем результат деления от данного числа на этот делитель. Тогда, все делители >√n попадутся нам, когда мы будем проверять меньшие делители. Например, делитель n/2, если такой встретится, попадётся нам, когда мы будем проверят 2 и т. д. Однако, спасибо за поправку.
Я думаю, что ВСЕ делители несколько иначе:
void divisors(int n)
{
for(int=1; i < =n/2 ;i++)
if( n%i ==0 )
printf("%d ", i)
}
....