<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="//purl.org/rss/1.0/modules/content/"
	xmlns:wfw="//wellformedweb.org/CommentAPI/"
	xmlns:dc="//purl.org/dc/elements/1.1/"
	xmlns:atom="//www.w3.org/2005/Atom"
	xmlns:sy="//purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="//purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Клуб программистов &#187; C++</title>
	<atom:link href="/cpp/c/feed" rel="self" type="application/rss+xml" />
	<link>//rucoders.ru</link>
	<description>любые вопросы по PHP, С++, JAVA, Python, Perl</description>
	<lastBuildDate>Wed, 27 Apr 2011 23:23:50 +0000</lastBuildDate>
	<generator>//wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>многопоточность, как правильно? C++</title>
		<link>/t3266.htm</link>
		<comments>/t3266.htm#comments</comments>
		<pubDate>Wed, 31 Mar 2010 20:00:00 +0000</pubDate>
		<dc:creator>Гость</dc:creator>
				<category><![CDATA[вопросы по программированию]]></category>
		<category><![CDATA[C++]]></category>

		<guid isPermaLink="false">/?p=3266</guid>
		<description><![CDATA[здравствуйте. такие дела:
пытаюсь считать текст из файла пословно и добавить каждое слово в &#60;map&#62;
&#60;map&#62; определил глобально, файл тоже определен глобально.
функция чтения такая:
UINT reading_th1&#40;LPVOID pParam&#41;&#123;

string str;

while &#40;!mfile.eof&#40;&#41;&#41;&#123;
mfile &#38;gt;&#38;gt; str;
mymap&#91;str&#93;+=1;
&#125;

return 0;
&#125;
из мейна вызываю 4 потока
AfxBeginThread(reading_th1,NULL);
AfxBeginThread(reading_th1,NULL);
AfxBeginThread(reading_th1,NULL);
AfxBeginThread(reading_th1,NULL);
итог 3 состояния:
работает (при этом снижает общее время выполнения программы на несколько секунд, что и требуется)
зависает
ошибка
причем выскакивают рандомно, как понимаю это результат когда [...]]]></description>
			<content:encoded><![CDATA[<p>здравствуйте. такие дела:<br />
пытаюсь считать текст из файла пословно и добавить каждое слово в &lt;map&gt;<br />
&lt;map&gt; определил глобально, файл тоже определен глобально.</p>
<p>функция чтения такая:</p>
<div class="codecolorer-container php geshi" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">UINT reading_th1<span style="color: #009900;">&#40;</span>LPVOID pParam<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
<br />
string str<span style="color: #339933;">;</span><br />
<br />
<span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>mfile<span style="color: #339933;">.</span>eof<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
mfile <span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;&amp;</span>gt<span style="color: #339933;">;</span> str<span style="color: #339933;">;</span><br />
mymap<span style="color: #009900;">&#91;</span>str<span style="color: #009900;">&#93;</span><span style="color: #339933;">+=</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #b1b100;">return</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></div>
<p>из мейна вызываю 4 потока</p>
<p>AfxBeginThread(reading_th1,NULL);<br />
AfxBeginThread(reading_th1,NULL);<br />
AfxBeginThread(reading_th1,NULL);<br />
AfxBeginThread(reading_th1,NULL);</p>
<p>итог 3 состояния:<br />
работает (при этом снижает общее время выполнения программы на несколько секунд, что и требуется)<br />
зависает<br />
ошибка</p>
<p>причем выскакивают рандомно, как понимаю это результат когда потоки одновременно пытаются прочитать файл.</p>
<p>готов слушать ваши ругательста и угрозы побить по рукам, но дайте ссылки или сами напишите примеры и теорию как это использовать ПРАВИЛЬНО. сегодня первый день пытаюсь сам прикрутить потоки к своей программе. а в учебнике вузовском нету )</p>
]]></content:encoded>
			<wfw:commentRss>/t3266.htm/feed</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
		<item>
		<title>Помогите с Си, запутался с формированием матрицы</title>
		<link>/t3210.htm</link>
		<comments>/t3210.htm#comments</comments>
		<pubDate>Sat, 27 Mar 2010 19:04:00 +0000</pubDate>
		<dc:creator>Гость</dc:creator>
				<category><![CDATA[вопросы по программированию]]></category>
		<category><![CDATA[C++]]></category>

		<guid isPermaLink="false">/?p=3210</guid>
		<description><![CDATA[Дана целочисленная прямоугольная матрица.Опредилить кол-во нулевых элементов.Найти сумму положительных чётных элементов каждой строки матрицы.
Вот код (запутался с формированием матрицы)
Код
#include&#38;lt;stdio.h&#38;gt;
#include&#38;lt;stdlib.h&#38;gt;
#include&#38;lt;conio.h&#38;gt;
void main&#40;&#41;
&#123;
clrscr&#40;&#41;;
randomize&#40;&#41;;
int A&#91;10&#93;&#91;10&#93;,i,j,k=0,s=0;
for&#40;i=0;i&#38;lt;=10;i++&#41;;
for&#40;j=0;j&#38;lt;=10;j++&#41;;
scanf&#40;&#38;quot;%d&#38;quot;,&#38;amp;A&#91;i&#93;&#91;j&#93;&#41;;
&#123;k=0;
s=0;
for&#40;i=0;i&#38;lt;=10;i++&#41;;
for&#40;j=0;j&#38;lt;=10;i++&#41;;
if&#40;A&#91;i&#93;&#91;j&#93;==0&#41;
k++;
for&#40;i=0;i&#38;lt;=10;i++&#41;;
s=0;
for&#40;j=1;j&#38;lt;=10;j++&#41;;
if&#40;&#40;A&#91;i&#93;&#91;j&#93;&#38;gt;0&#41; &#38;amp;&#38;amp; &#40;A&#91;i&#93;&#91;j&#93;%2==0&#41;&#41;
s=s+A&#91;i&#93;&#91;j&#93;; &#125;
printf&#40;&#38;quot;Є®«ЁзҐбвў® г«Ґўле н«Ґ¬Ґв®ў:&#38;quot;,k&#41;;
printf&#40;&#38;quot;‘г¬¬Ї®«®¦ЁвҐ«мле зҐвле н«Ґ¬Ґв®ў Є ¦¤®© бва®ЄЁ ¬ ваЁжл:&#38;quot;,s&#41;;
getch&#40;&#41;;
&#125;
]]></description>
			<content:encoded><![CDATA[<p>Дана целочисленная прямоугольная матрица.Опредилить кол-во нулевых элементов.Найти сумму положительных чётных элементов каждой строки матрицы.</p>
<p>Вот код (запутался с формированием матрицы)<br />
Код</p>
<div class="codecolorer-container cpp geshi" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><div class="cpp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339900;">#include&amp;lt;stdio.h&amp;gt;</span><br />
<span style="color: #339900;">#include&amp;lt;stdlib.h&amp;gt;</span><br />
<span style="color: #339900;">#include&amp;lt;conio.h&amp;gt;</span><br />
<span style="color: #0000ff;">void</span> main<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><br />
<span style="color: #008000;">&#123;</span><br />
clrscr<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
randomize<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">int</span> A<span style="color: #008000;">&#91;</span><span style="color: #0000dd;">10</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #0000dd;">10</span><span style="color: #008000;">&#93;</span>,i,j,k<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span>,s<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">for</span><span style="color: #008000;">&#40;</span>i<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span>i<span style="color: #000040;">&amp;</span>lt<span style="color: #008080;">;</span><span style="color: #000080;">=</span><span style="color: #0000dd;">10</span><span style="color: #008080;">;</span>i<span style="color: #000040;">++</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">for</span><span style="color: #008000;">&#40;</span>j<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span>j<span style="color: #000040;">&amp;</span>lt<span style="color: #008080;">;</span><span style="color: #000080;">=</span><span style="color: #0000dd;">10</span><span style="color: #008080;">;</span>j<span style="color: #000040;">++</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000dd;">scanf</span><span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span><span style="color: #000040;">%</span>d<span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,<span style="color: #000040;">&amp;</span>amp<span style="color: #008080;">;</span>A<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span>j<span style="color: #008000;">&#93;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #008000;">&#123;</span>k<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span><br />
s<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">for</span><span style="color: #008000;">&#40;</span>i<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span>i<span style="color: #000040;">&amp;</span>lt<span style="color: #008080;">;</span><span style="color: #000080;">=</span><span style="color: #0000dd;">10</span><span style="color: #008080;">;</span>i<span style="color: #000040;">++</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">for</span><span style="color: #008000;">&#40;</span>j<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span>j<span style="color: #000040;">&amp;</span>lt<span style="color: #008080;">;</span><span style="color: #000080;">=</span><span style="color: #0000dd;">10</span><span style="color: #008080;">;</span>i<span style="color: #000040;">++</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>A<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span>j<span style="color: #008000;">&#93;</span><span style="color: #000080;">==</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span><br />
k<span style="color: #000040;">++</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">for</span><span style="color: #008000;">&#40;</span>i<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span>i<span style="color: #000040;">&amp;</span>lt<span style="color: #008080;">;</span><span style="color: #000080;">=</span><span style="color: #0000dd;">10</span><span style="color: #008080;">;</span>i<span style="color: #000040;">++</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
s<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">for</span><span style="color: #008000;">&#40;</span>j<span style="color: #000080;">=</span><span style="color: #0000dd;">1</span><span style="color: #008080;">;</span>j<span style="color: #000040;">&amp;</span>lt<span style="color: #008080;">;</span><span style="color: #000080;">=</span><span style="color: #0000dd;">10</span><span style="color: #008080;">;</span>j<span style="color: #000040;">++</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#40;</span>A<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span>j<span style="color: #008000;">&#93;</span><span style="color: #000040;">&amp;</span>gt<span style="color: #008080;">;</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span> <span style="color: #000040;">&amp;</span>amp<span style="color: #008080;">;</span><span style="color: #000040;">&amp;</span>amp<span style="color: #008080;">;</span> <span style="color: #008000;">&#40;</span>A<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span>j<span style="color: #008000;">&#93;</span><span style="color: #000040;">%</span><span style="color:#800080;">2</span><span style="color: #000080;">==</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><br />
s<span style="color: #000080;">=</span>s<span style="color: #000040;">+</span>A<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span>j<span style="color: #008000;">&#93;</span><span style="color: #008080;">;</span> <span style="color: #008000;">&#125;</span><br />
<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>Є®«ЁзҐбвў® г«Ґўле н«Ґ¬Ґв®ў<span style="color: #008080;">:</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,k<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>‘г¬¬Ї®«®¦ЁвҐ«мле зҐвле н«Ґ¬Ґв®ў Є ¦¤®© бва®ЄЁ ¬ ваЁжл<span style="color: #008080;">:</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,s<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
getch<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<span style="color: #008000;">&#125;</span></div></div></p>
]]></content:encoded>
			<wfw:commentRss>/t3210.htm/feed</wfw:commentRss>
		<slash:comments>39</slash:comments>
		</item>
		<item>
		<title>Как сделать так,что бы программа,написанная на Visual Studio C вела вычисления с двумя знаками после запятой?</title>
		<link>/t3194.htm</link>
		<comments>/t3194.htm#comments</comments>
		<pubDate>Thu, 25 Mar 2010 21:04:00 +0000</pubDate>
		<dc:creator>Гость</dc:creator>
				<category><![CDATA[вопросы по программированию]]></category>
		<category><![CDATA[C++]]></category>

		<guid isPermaLink="false">/?p=3194</guid>
		<description><![CDATA[Win32 console application
Как сделать так,что бы программа,написанная на Visual Studio C вела вычисления с двумя знаками после запятой?
Вот сама программа, но она делает расчеты с 5ю знаками после запятой, а мне нужно, что бы именно с двумя&#33; Заранее спасибо)
#include &#38;lt;stdio.h&#38;gt; 

int main&#40;&#41; 
&#123; 
freopen&#40;&#38;quot;input.txt&#38;quot;,&#38;quot;r&#38;quot;,stdin&#41;; 
freopen&#40;&#38;quot;output.txt&#38;quot;,&#38;quot;w&#38;quot;,stdout&#41;; 
float x,p,m,y; 
scanf &#40;&#38;quot;%f &#38;quot;,&#38;amp;x&#41;; 
scanf &#40;&#38;quot;%f &#38;quot;,&#38;amp;p&#41;; 
scanf &#40;&#38;quot;%f [...]]]></description>
			<content:encoded><![CDATA[<p>Win32 console application<br />
Как сделать так,что бы программа,написанная на Visual Studio C вела вычисления с двумя знаками после запятой?<br />
Вот сама программа, но она делает расчеты с 5ю знаками после запятой, а мне нужно, что бы именно с двумя&#33; Заранее спасибо)</p>
<div class="codecolorer-container cpp geshi" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><div class="cpp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339900;">#include &amp;lt;stdio.h&amp;gt; </span><br />
<br />
<span style="color: #0000ff;">int</span> main<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <br />
<span style="color: #008000;">&#123;</span> <br />
<span style="color: #0000dd;">freopen</span><span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>input.<span style="color: #007788;">txt</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,<span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>r<span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,<span style="color: #0000ff;">stdin</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
<span style="color: #0000dd;">freopen</span><span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>output.<span style="color: #007788;">txt</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,<span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>w<span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,<span style="color: #0000ff;">stdout</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
<span style="color: #0000ff;">float</span> x,p,m,y<span style="color: #008080;">;</span> <br />
<span style="color: #0000dd;">scanf</span> <span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span><span style="color: #000040;">%</span>f <span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,<span style="color: #000040;">&amp;</span>amp<span style="color: #008080;">;</span>x<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
<span style="color: #0000dd;">scanf</span> <span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span><span style="color: #000040;">%</span>f <span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,<span style="color: #000040;">&amp;</span>amp<span style="color: #008080;">;</span>p<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
<span style="color: #0000dd;">scanf</span> <span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span><span style="color: #000040;">%</span>f <span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,<span style="color: #000040;">&amp;</span>amp<span style="color: #008080;">;</span>m<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
<br />
<span style="color: #0000ff;">int</span> i,k<span style="color: #008080;">;</span> <br />
k<span style="color: #000080;">=</span>p<span style="color: #000040;">/</span><span style="color: #0000dd;">12</span><span style="color: #008080;">;</span> <br />
y<span style="color: #000080;">=</span>x<span style="color: #008080;">;</span> <br />
<span style="color: #0000ff;">for</span> <span style="color: #008000;">&#40;</span>i<span style="color: #000080;">=</span><span style="color: #0000dd;">1</span><span style="color: #008080;">;</span>i<span style="color: #000040;">&amp;</span>lt<span style="color: #008080;">;</span><span style="color: #000080;">=</span>m<span style="color: #008080;">;</span>i<span style="color: #000040;">++</span><span style="color: #008000;">&#41;</span> <br />
<span style="color: #008000;">&#123;</span> <br />
y<span style="color: #000080;">=</span>y<span style="color: #000040;">+</span><span style="color: #008000;">&#40;</span>y<span style="color: #000040;">*</span>k<span style="color: #000040;">/</span><span style="color: #0000dd;">100</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
<span style="color: #008000;">&#125;</span> <br />
<br />
<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span><span style="color: #000040;">%</span><span style="color:#800080;">.2f</span><span style="color: #000040;">&amp;</span>quot<span style="color: #008080;">;</span>,y<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <br />
<span style="color: #0000ff;">return</span> <span style="color: #0000dd;">0</span><span style="color: #008080;">;</span> <br />
<span style="color: #008000;">&#125;</span></div></div></p>
]]></content:encoded>
			<wfw:commentRss>/t3194.htm/feed</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>параллельное программирование. MasterSlave. С++</title>
		<link>/t3170.htm</link>
		<comments>/t3170.htm#comments</comments>
		<pubDate>Fri, 19 Mar 2010 23:05:00 +0000</pubDate>
		<dc:creator>Гость</dc:creator>
				<category><![CDATA[вопросы по программированию]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[помощь]]></category>

		<guid isPermaLink="false">/?p=3170</guid>
		<description><![CDATA[мне надо сделать задачу двумя способами
1 &#8211; это когла посылается по одному
2 &#8211; когда посылается по несколько
Поиск максимума из отрицательных элементов
вот я сделал второй способ когда посылается по несколько
#include &#60;mpi.h&#62;
&#160;#include &#60;stdio.h&#62;
&#160;#include &#60;string.h&#62;
&#160;#define TAG 0
&#160;int main&#40;int argc,char*argv&#91;&#93;&#41;
&#160;&#123;
&#160;MPI_Init&#40;&#38;argc,&#38;argv&#41;; // подключение к MPI
&#160;int temp;
&#160;int myrank;
&#160;int s;
&#160;MPI_Status status;
&#160;MPI_Comm_rank&#40;MPI_COMM_WORLD,&#38;myrank&#41;;
&#160;MPI_Comm_size&#40;MPI_COMM_WORLD, &#38;s&#41;;
&#160;if&#40;myrank==0&#41;
&#160;&#123;
&#160;bool found = false;
&#160;int i = 1;
&#160;int max;

while &#40;!found &#38;&#38; i [...]]]></description>
			<content:encoded><![CDATA[<p>мне надо сделать задачу двумя способами<br />
1 &#8211; это когла посылается по одному<br />
2 &#8211; когда посылается по несколько<br />
Поиск максимума из отрицательных элементов<br />
вот я сделал второй способ когда посылается по несколько</p>
<div class="codecolorer-container cpp geshi" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><div class="cpp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339900;">#include &lt;mpi.h&gt;</span><br />
&nbsp;<span style="color: #339900;">#include &lt;stdio.h&gt;</span><br />
&nbsp;<span style="color: #339900;">#include &lt;string.h&gt;</span><br />
&nbsp;<span style="color: #339900;">#define TAG 0</span><br />
&nbsp;<span style="color: #0000ff;">int</span> main<span style="color: #008000;">&#40;</span><span style="color: #0000ff;">int</span> argc,<span style="color: #0000ff;">char</span><span style="color: #000040;">*</span>argv<span style="color: #008000;">&#91;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#41;</span><br />
&nbsp;<span style="color: #008000;">&#123;</span><br />
&nbsp;MPI_Init<span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>argc,<span style="color: #000040;">&amp;</span>argv<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <span style="color: #666666;">// подключение к MPI</span><br />
&nbsp;<span style="color: #0000ff;">int</span> temp<span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000ff;">int</span> myrank<span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000ff;">int</span> s<span style="color: #008080;">;</span><br />
&nbsp;MPI_Status status<span style="color: #008080;">;</span><br />
&nbsp;MPI_Comm_rank<span style="color: #008000;">&#40;</span>MPI_COMM_WORLD,<span style="color: #000040;">&amp;</span>myrank<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp;MPI_Comm_size<span style="color: #008000;">&#40;</span>MPI_COMM_WORLD, <span style="color: #000040;">&amp;</span>s<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>myrank<span style="color: #000080;">==</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span><br />
&nbsp;<span style="color: #008000;">&#123;</span><br />
&nbsp;<span style="color: #0000ff;">bool</span> found <span style="color: #000080;">=</span> <span style="color: #0000ff;">false</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000ff;">int</span> i <span style="color: #000080;">=</span> <span style="color: #0000dd;">1</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000ff;">int</span> max<span style="color: #008080;">;</span><br />
<br />
<span style="color: #0000ff;">while</span> <span style="color: #008000;">&#40;</span><span style="color: #000040;">!</span>found <span style="color: #000040;">&amp;&amp;</span> i <span style="color: #000080;">&lt;</span> s<span style="color: #008000;">&#41;</span><br />
&nbsp;<span style="color: #008000;">&#123;</span><br />
&nbsp;MPI_Recv<span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>temp,<span style="color: #0000dd;">1</span>,MPI_INT,i,TAG,MPI_COMM_WORLD,<span style="color: #000040;">&amp;</span>status<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;received:%d<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>,temp<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp;found <span style="color: #000080;">=</span> temp <span style="color: #000080;">&lt;</span> <span style="color: #0000dd;">0</span><span style="color: #008080;">;</span><br />
&nbsp;i<span style="color: #000040;">++</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #008000;">&#125;</span><br />
&nbsp;<span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>found<span style="color: #008000;">&#41;</span><br />
&nbsp;<span style="color: #008000;">&#123;</span><br />
&nbsp;max <span style="color: #000080;">=</span> temp<span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000ff;">for</span> <span style="color: #008000;">&#40;</span><span style="color: #008080;">;</span> i<span style="color: #000080;">&lt;</span>s<span style="color: #008080;">;</span> i<span style="color: #000040;">++</span><span style="color: #008000;">&#41;</span><br />
&nbsp;<span style="color: #008000;">&#123;</span><br />
&nbsp;MPI_Recv<span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>temp,<span style="color: #0000dd;">1</span>,MPI_INT,i,TAG,MPI_COMM_WORLD,<span style="color: #000040;">&amp;</span>status<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;%d received:%d<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>,myrank, temp<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>temp <span style="color: #000080;">&lt;</span> <span style="color: #0000dd;">0</span> <span style="color: #000040;">&amp;&amp;</span> temp <span style="color: #000080;">&gt;</span> max<span style="color: #008000;">&#41;</span><br />
&nbsp;max <span style="color: #000080;">=</span> temp<span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #008000;">&#125;</span><br />
&nbsp;<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;Max value is :%d<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>,max<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #008000;">&#125;</span><br />
&nbsp;<span style="color: #0000ff;">else</span><br />
&nbsp;<span style="color: #0000dd;">printf</span> <span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;max not found<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
<br />
&nbsp;<span style="color: #008000;">&#125;</span><br />
&nbsp;<span style="color: #0000ff;">else</span><br />
&nbsp;<span style="color: #008000;">&#123;</span><br />
&nbsp;<span style="color: #0000ff;">int</span> val<span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>myrank <span style="color: #000040;">%</span> <span style="color: #0000dd;">2</span><span style="color: #000080;">==</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span><br />
&nbsp;<span style="color: #008000;">&#123;</span><br />
&nbsp;val<span style="color: #000080;">=</span>myrank<span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #008000;">&#125;</span><br />
&nbsp;<span style="color: #0000ff;">else</span> val<span style="color: #000080;">=</span><span style="color: #000040;">-</span>myrank<span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;%d sended: %d<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>, myrank, val<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp;MPI_Send<span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>val,<span style="color: #0000dd;">1</span>,MPI_INT,<span style="color: #0000dd;">0</span>,TAG,MPI_COMM_WORLD<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #008000;">&#125;</span><br />
<br />
&nbsp;MPI_Finalize<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #0000ff;">return</span> <span style="color: #0000dd;">0</span><span style="color: #008080;">;</span><br />
&nbsp;<span style="color: #008000;">&#125;</span></div></div>
]]></content:encoded>
			<wfw:commentRss>/t3170.htm/feed</wfw:commentRss>
		<slash:comments>52</slash:comments>
		</item>
	</channel>
</rss>
