Как написать код для генератора простых чисел, используя указанный интерфейс.Простые номера с использованием интерфейса
ответ
Я думаю, это то, что вы просили.
int isPrime(int i) {
int j;
if(i == 1 || i == 2)
return 1;
if(i % 2 == 0)
return 0;
for (j = 3; j < sqrt(n); j += 2)
if (i % j == 0)
return 0;
return 1;
}
void generator(int start, int end) {
int i;
if(start > end) {
int temp = start;
start = end;
end = start;
}
for (i = start; i<=end; i++)
if(isPrime(i))
printf("%d\n", i);
}
int main() {
generator(7900, 7920);
return 0;
}
Спасибо, что поделились этим venkatesh – Arun
Сначала, если в генераторе() для вашего первого ограничения. Я меняю начальные и конечные значения, если они начинаются больше, чем конец (case start = 10, end = 1), а затем он переходит из начального значения в конец и проверяет, что каждое значение является простым или нет. – Venkatesh
Вы хотите, чтобы я объяснил isPrime()? – Venkatesh
Здесь он делает забавную вещь в конце, но она работает. Вы можете увидеть его в действии здесь http://operationwalrus.com/primeval.php?x=1&y=100
<?
$x = $_GET['x'];
$y = $_GET['y'];
//$x and $y must be ordered acendingly
if ($x > $y) {
$temp = $x;
$x = $y;
$y = $temp;
}
$num = range($x, $y);
sort($num);
$arr = (findPrimeValues($num, $x, $y));
$arr = array_values(array_filter($arr));
for ($i=0;$i <= $y+1;$i++) {
$prnt = $arr[$i] . ', ';
str_replace(', ,', "",$prnt);
print_r($prnt);
}
function findPrimeValues($num, $x, $y) {
//1 is not prime. See: http://en.wikipedia.org/wiki/Prime_number#Primality_of_one
$pos = array_search(1, $num);
if (is_int($pos)) {
unset($num[$pos]);
}
/**
* if a number in the range is divisible by two and its not two, then it's
* not prime and it's removed from the array.
*/
for ($i=$x;$i <= $y;$i++) {
if (($i !== 2) && ($i % 2 == 0)) {
$pos = array_search($i, $num);
unset($num[$pos]);
}
}
/**
* Checks the odd numbers. If any of them is a factor, then it returns false.
* The sqrt can be an aproximation, hence just for the sake of
* security, one rounds it to the next highest integer value.
* $u is the number we are testing against.
*/
for ($u=$x;$u <= $y; $u++) {
for ($i = 3; $i <= ceil(sqrt($u)); $i = $u + 2) {
if($u % $i == 0) {
$pos = array_search($u, $num);
unset($num[$pos]);
}
}
}
return($num);
}
'$ x = $ _GET ['x']; $ y = $ _GET ['y']; 'изменить их на' $ x = number; $ y = number; ' –
- 1. C Программа - простые номера
- 2. простые номера C#
- 3. Циклы и простые номера
- 4. Большие простые номера в c
- 5. Фибоначчи и простые номера Python
- 6. MyBatis: Получение номера строк с использованием java-интерфейса mapper
- 7. Простые формы с использованием формообразователя
- 8. Простые меню с использованием Qt4
- 9. найти простые номера до X - сложность
- 10. Простые номера между двумя большими номерами?
- 11. Простые номера без петли без рекурсивных
- 12. Javascript/JQuery простые функции пользовательского интерфейса
- 13. Возможно создание первичного номера с использованием Фибоначчи?
- 14. Простые обращения API REST с использованием Spring?
- 15. Простые линии с использованием морского берега
- 16. Простые транзакции с использованием Spring JDBC?
- 17. backtest простые стратегии с использованием R
- 18. Найти простые комбинации с использованием строк Python
- 19. Простые запросы с помощью API Twitter с использованием только access_token
- 20. Узнаваемые номера с использованием PHP
- 21. Сортировка с использованием индексного номера
- 22. Форматирование номера с использованием php
- 23. Простые часы работы
- 24. метод переопределения с использованием интерфейса
- 25. с использованием реализации явного интерфейса
- 26. java.lang.UnsatisfiedLinkError с использованием нативного интерфейса
- 27. с использованием интерфейса в C#
- 28. Реализация CRUD с использованием интерфейса
- 29. Generic функции с использованием интерфейса
- 30. Отображение DTO с использованием интерфейса
вам нужно сегментированное сито –
почему это помечено C? –
Мне немного непонятно, что вы просите. И это не похоже на JavaScript, PHP или C. Неясно, на каком языке он вообще. –