<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; CMD/BAT: Простые числа]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=11539</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=11539&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «CMD/BAT: Простые числа».]]></description>
		<lastBuildDate>Thu, 28 Apr 2016 14:09:38 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[CMD/BAT: Простые числа]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=103178#p103178</link>
			<description><![CDATA[<p>При выполнении &quot;Prime.bat 1000&quot; будет файл &quot;prime.txt&quot; с простыми числами от 2 до 1000<br /></p><div class="codebox"><pre><code>@echo off
setlocal enabledelayedexpansion
if exist prime.txt del prime.txt
Call :fast1 %1 &gt; prime.txt
set p=2
set size=
	:loop
	set z=0
	if exist prime2.txt del prime2.txt
	Call :fast2 &gt; prime2.txt
	del prime.txt
	ren prime2.txt prime.txt
	set fp=
	for /f %%i in (prime.txt) do (
		if not defined fp if %%i gtr !p! set fp=%%i
	)
	set p=!fp!
	for /f %%i in (&quot;prime.txt&quot;) do set size=%%~zi
	if !size!==!last! exit /b
	set last=!size!
	goto loop
endlocal
exit /b

:fast1
for /l %%i in (2,1,%1) do Echo %%i
goto :eof

:fast2
for /f %%i in (prime.txt) do (
	set /a np=p*p
	if %%i lss !np! Echo %%i
	if %%i geq !np! (
		set /a &quot;t=%%i %% p&quot;
		if not !t!==0 (Echo %%i) else (set /a z+=1)
	)
)
goto :eof</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (torus)]]></author>
			<pubDate>Thu, 28 Apr 2016 14:09:38 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=103178#p103178</guid>
		</item>
	</channel>
</rss>
