﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">7 семинар</title>
  <id>~/topic/3387/7-seminar/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-05T17:56:58Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=3387" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/24000/</id>
    <title type="text">Запись урока: Часть 1 http://vk.com/video_ext.php?oid=-66674957&amp;amp;id=167891624&amp;amp;hash=f0ca69e514ff475e&amp;amp;h...</title>
    <published>2013-02-13T11:25:24Z</published>
    <updated>2014-03-06T09:18:18Z</updated>
    <author>
      <name>Самунджян Артем</name>
      <uri>https://stocksharp.ru/users/675/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;span style="font-size:120%"&gt;&lt;b&gt;Запись урока: &lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;Часть 1 &lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;[vk]http://vk.com/video_ext.php?oid=-66674957&amp;amp;id=167891624&amp;amp;hash=f0ca69e514ff475e&amp;amp;hd=3[/vk]&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;Часть 2 &lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;[vk]http://vk.com/video_ext.php?oid=-66674957&amp;amp;id=167894426&amp;amp;hash=6b0bfcf795fbaf49&amp;amp;hd=3[/vk]&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;Темы занятия:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Повторное рассмотрение ключевых моментов по изученному материалу.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;Домашнее задание:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Ко все методам написать тесты или хотя бы вызвать каждый из методов с различными параметрами и проверить результат &amp;quot;на глазок&amp;quot;. Но лучше написать тесты - ведь тесты дают гарантии и вселяют уверенность))&lt;br /&gt;&lt;br /&gt;1. Написать метод, вычисляющий значение простого числа по его номеру. Простое число - то которое делится лишь на 1 и на само себя.&lt;br /&gt;&lt;br /&gt;2. Написать метод проверки числа на простоту. Использовать этот метод в решении предыдущего задания.&lt;br /&gt;&lt;br /&gt;3. Написать метод, возвращающий все простые числа. Я не ошибся. Все. Использовать конструкцию yield return.&lt;br /&gt;&lt;br /&gt;4. Написать метод MergeSum, принимающий на вход 2 последовательности интов и возвращающий одну последовательность с поэлементной суммой. Использовать yield return.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;Полезные ссылки:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;1. Скачать &lt;a target="_blank" rel="nofollow" href="https://stocksharp.ru/away/?u=AQAAAAAAAAAiKfMI3ZVSBoAXeJfDFRtYJ2Pf98Wbw6mg0v0BUiJQsjs_QiqTL8paDS_QgJ2qg8M" title="http://www.jetbrains.com/dotcover/"&gt;&lt;span style="color:darkred"&gt;dotCover&lt;/span&gt;&lt;/a&gt; (используется при тестировании).&lt;br /&gt;2. &lt;a target="_blank" href="http://msdn.microsoft.com/ru-ru/library/9k7k7cf0.aspx" title="http://msdn.microsoft.com/ru-ru/library/9k7k7cf0.aspx"&gt;Информация о yield return.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;Пример решения домашнего задания:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class='spoilertitle'&gt;&lt;input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_6bce79f464964a838539ffb97418b01f');" title='Показать спойлер' /&gt;&lt;/div&gt;&lt;div class='spoilerbox' id='spolier_6bce79f464964a838539ffb97418b01f' style='display:none'&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace App0526
{
    public class Program
    {
        // 1. Написать метод, вычисляющий значение простого числа по его номеру. 
        // Простое число - то которое делится лишь на 1 и на само себя.
         
        /// &amp;lt;summary&amp;gt;
        /// Поиск простого числа по его порядковому номеру
        /// &amp;lt;/summary&amp;gt;
        /// &amp;lt;param name=&amp;quot;index&amp;quot;&amp;gt;Порядковый номер числа&amp;lt;/param&amp;gt;
        /// &amp;lt;returns&amp;gt;Простое число&amp;lt;/returns&amp;gt;
        public static int SimpleByIndex(int index)
        {
            for (int candidate = 2; true; candidate++)
            {
                if (!IsValueSimple(candidate)) 
                    continue;
                if (index == 0)
                    return candidate;
                index--;
            }
        }

        // 2. Написать метод проверки числа на простоту. 
        // Использовать этот метод в решении предыдущего задания.
         
        /// &amp;lt;summary&amp;gt;
        /// Проверка числа на принадлежность к множеству простых чисел
        /// &amp;lt;/summary&amp;gt;
        /// &amp;lt;param name=&amp;quot;value&amp;quot;&amp;gt;Проверяемое число&amp;lt;/param&amp;gt;
        /// &amp;lt;returns&amp;gt;Является ли простым&amp;lt;/returns&amp;gt;
        public static bool IsValueSimple(int value)
        {
            if (value &amp;lt; 2) return false;
            for (int i = 2; i &amp;lt; value; i++)
                if (value%i == 0)
                    return false;
            return true;
        }

        // 3. Написать метод, возвращающий все простые числа. 
        // Я не ошибся. Все. Использовать конструкцию yield return.
        
        /// &amp;lt;summary&amp;gt;
        /// Получение всех простых чисел
        /// &amp;lt;/summary&amp;gt;
        /// &amp;lt;returns&amp;gt;Все постые числа, начиная с 2&amp;lt;/returns&amp;gt;
        public static IEnumerable&amp;lt;int&amp;gt; AllSimpleNumbers()
        {
            for (int candidate = 2; true; candidate++)
            {
                if (IsValueSimple(candidate))
                    yield return candidate;
            }     
        }

        // 4. Написать метод MergeSum, принимающий на вход 2 
        // последовательности интов и возвращающий одну последовательность 
        // с поэлементной суммой. Использовать yield return.
        
        /// &amp;lt;summary&amp;gt;
        /// Слияние 2-х последовательностей поэлементным суммированием
        /// &amp;lt;/summary&amp;gt;
        /// &amp;lt;param name=&amp;quot;a&amp;quot;&amp;gt;Первая последовательность&amp;lt;/param&amp;gt;
        /// &amp;lt;param name=&amp;quot;b&amp;quot;&amp;gt;Вторая последовательность&amp;lt;/param&amp;gt;
        /// &amp;lt;returns&amp;gt;Последовательность с поэлементной суммой&amp;lt;/returns&amp;gt;
        public static IEnumerable&amp;lt;int&amp;gt; MergeSum(IEnumerable&amp;lt;int&amp;gt; a, IEnumerable&amp;lt;int&amp;gt; b)
        {
            var en1 = a.GetEnumerator();
            var en2 = b.GetEnumerator();

            while (true)
            {
                bool b1 = en1.MoveNext();
                bool b2 = en2.MoveNext();
                if (!b1 &amp;amp;&amp;amp; !b2)
                    break;

                int v1 = b1 ? en1.Current : 0;
                int v2 = b2 ? en2.Current : 0;
                yield return v1 + v2;
            }
        }

        }
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:120%"&gt;Вложения&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="https://stocksharp.ru/away/?u=AQAAAAAAAADXjL5CL3VluFBlkphAxfOmgzHwBS6gmZ6H1CH1BJ_rN_4qYbIz0eRYJiis-L8IAwA" title="https://vk.com/doc-66674957_276915055"&gt;Исходные коды&lt;/a&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>