<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.cs.hse.ru/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Vary10</id>
	<title>Wiki - Факультет компьютерных наук - Вклад [ru]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.cs.hse.ru/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Vary10"/>
	<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Vary10"/>
	<updated>2026-09-21T12:26:56Z</updated>
	<subtitle>Вклад</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Vary10&amp;diff=1819</id>
		<title>Участник:Vary10</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Vary10&amp;diff=1819"/>
		<updated>2015-03-17T22:40:41Z</updated>

		<summary type="html">&lt;p&gt;Vary10: /* CSChat */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==CSChat==&lt;br /&gt;
&lt;br /&gt;
====1. Разобрался с swift и написал игрушку в playground:====&lt;br /&gt;
 import Foundation&lt;br /&gt;
  &lt;br /&gt;
 class Soldier {&lt;br /&gt;
      &lt;br /&gt;
     var HP, Strength: Int&lt;br /&gt;
     var Team: String&lt;br /&gt;
     &lt;br /&gt;
     init (team: String) {&lt;br /&gt;
         HP = Int(arc4random_uniform(20)) + 40&lt;br /&gt;
         Strength = Int(arc4random_uniform(10)) + 1&lt;br /&gt;
         Team = team&lt;br /&gt;
     }&lt;br /&gt;
      &lt;br /&gt;
     func hit(enemy: Soldier) -&amp;gt; Int{&lt;br /&gt;
         var crit = Int(arc4random_uniform(3))&lt;br /&gt;
         var dam = (Strength + Int(arc4random_uniform(10)) + 1) * crit&lt;br /&gt;
         enemy.HP -= dam&lt;br /&gt;
         return dam&lt;br /&gt;
     }&lt;br /&gt;
      &lt;br /&gt;
     func dead() -&amp;gt; Bool{&lt;br /&gt;
         if HP &amp;lt;= 0 {&lt;br /&gt;
             println(&amp;quot;Soldier from team \(self.Team) dies.\n&amp;quot;)&lt;br /&gt;
         }&lt;br /&gt;
         return (HP &amp;lt;= 0)&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class Swordsman: Soldier {&lt;br /&gt;
    &lt;br /&gt;
     override func hit(enemy: Soldier) -&amp;gt; Int{&lt;br /&gt;
         var dam = super.hit(enemy)&lt;br /&gt;
         if dam != 0 {&lt;br /&gt;
             println(&amp;quot;Swordsman from team \(self.Team) slashes enemy soldier for \(dam) HP.\n&amp;quot;)&lt;br /&gt;
         } else {&lt;br /&gt;
             println(&amp;quot;Swordsman from team \(self.Team) misses.\n&amp;quot;)&lt;br /&gt;
         }&lt;br /&gt;
         return 1&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class Archer: Soldier {&lt;br /&gt;
     &lt;br /&gt;
     override func hit(enemy: Soldier) -&amp;gt; Int{&lt;br /&gt;
         var dam = super.hit(enemy)&lt;br /&gt;
         if dam != 0 {&lt;br /&gt;
             println(&amp;quot;Archer from team \(self.Team) slashes enemy soldier for \(dam) HP.\n&amp;quot;)&lt;br /&gt;
         } else {&lt;br /&gt;
             println(&amp;quot;Archer from team \(self.Team) misses.\n&amp;quot;)&lt;br /&gt;
         }&lt;br /&gt;
         return 1&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 class Army {&lt;br /&gt;
     &lt;br /&gt;
     let Name: String&lt;br /&gt;
     var Soldiers: [Soldier] = []&lt;br /&gt;
     &lt;br /&gt;
     init (n: Int, name: String) {&lt;br /&gt;
         Name = name&lt;br /&gt;
         for i in 0..&amp;lt;n {&lt;br /&gt;
             var k = Int(arc4random_uniform(2))&lt;br /&gt;
             if k == 0 {&lt;br /&gt;
                 Soldiers.append(Swordsman(team: name))&lt;br /&gt;
             } else {&lt;br /&gt;
                 Soldiers.append(Archer(team: name))&lt;br /&gt;
             }&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 func battle(A: Army, B: Army) -&amp;gt; Army {&lt;br /&gt;
     var attacker = true&lt;br /&gt;
     while A.Soldiers.count != 0 &amp;amp;&amp;amp; B.Soldiers.count != 0 {&lt;br /&gt;
         if attacker {&lt;br /&gt;
             A.Soldiers.last!.hit(B.Soldiers.last!)&lt;br /&gt;
             if B.Soldiers.last!.dead(){&lt;br /&gt;
                 B.Soldiers.removeLast()&lt;br /&gt;
             }&lt;br /&gt;
             attacker = false&lt;br /&gt;
         } else {&lt;br /&gt;
             B.Soldiers.last!.hit(A.Soldiers.last!)&lt;br /&gt;
             if A.Soldiers.last!.dead(){&lt;br /&gt;
                 A.Soldiers.removeLast()&lt;br /&gt;
             }&lt;br /&gt;
             attacker = true&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
     if A.Soldiers.count &amp;gt; 0 {&lt;br /&gt;
         return A&lt;br /&gt;
     } else {&lt;br /&gt;
         return B&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 println(battle(Army(n: 5, name: &amp;quot;Red&amp;quot;), Army(n: 5, name: &amp;quot;White&amp;quot;)).Name + &amp;quot; wins.\n&amp;quot;)}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2) Освоился в среде Xcode, написал простую записную книжку:&lt;br /&gt;
https://github.com/vary10/phonebook/tree/master/PhoneBook.git&lt;br /&gt;
&lt;br /&gt;
3) Узнал, как использовать CocoaPods, установил его в новое todo приложение:&lt;br /&gt;
https://github.com/vary10/ToDo.git&lt;br /&gt;
&lt;br /&gt;
4) С помощью CocoaPods установил Magical Record для лучшего использования бд CoreData в своем todo приложении:&lt;br /&gt;
https://github.com/vary10/ToDo.git&lt;br /&gt;
&lt;br /&gt;
5) Начал использовать делегатов, сделал popup-viewcontroller для выбора цвета для события в todo:&lt;br /&gt;
https://github.com/vary10/ToDo.git&lt;br /&gt;
&lt;br /&gt;
6) Перешел к работе над основным приложением, сделал внешний вид:&lt;br /&gt;
https://github.com/cs-hse-projects/CSChat.Valery_Girkin/tree/develop&lt;br /&gt;
&lt;br /&gt;
7) Научились перемещать вью:&lt;br /&gt;
https://github.com/vary10/physics.git&lt;/div&gt;</summary>
		<author><name>Vary10</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Vary10&amp;diff=1800</id>
		<title>Участник:Vary10</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Vary10&amp;diff=1800"/>
		<updated>2015-03-15T10:37:52Z</updated>

		<summary type="html">&lt;p&gt;Vary10: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==CSChat==&lt;br /&gt;
&lt;br /&gt;
====1. Разобрался с swift и написал игрушку в playground:====&lt;br /&gt;
 import Foundation&lt;br /&gt;
  &lt;br /&gt;
 class Soldier {&lt;br /&gt;
      &lt;br /&gt;
     var HP, Strength: Int&lt;br /&gt;
     var Team: String&lt;br /&gt;
     &lt;br /&gt;
     init (team: String) {&lt;br /&gt;
         HP = Int(arc4random_uniform(20)) + 40&lt;br /&gt;
         Strength = Int(arc4random_uniform(10)) + 1&lt;br /&gt;
         Team = team&lt;br /&gt;
     }&lt;br /&gt;
      &lt;br /&gt;
     func hit(enemy: Soldier) -&amp;gt; Int{&lt;br /&gt;
         var crit = Int(arc4random_uniform(3))&lt;br /&gt;
         var dam = (Strength + Int(arc4random_uniform(10)) + 1) * crit&lt;br /&gt;
         enemy.HP -= dam&lt;br /&gt;
         return dam&lt;br /&gt;
     }&lt;br /&gt;
      &lt;br /&gt;
     func dead() -&amp;gt; Bool{&lt;br /&gt;
         if HP &amp;lt;= 0 {&lt;br /&gt;
             println(&amp;quot;Soldier from team \(self.Team) dies.\n&amp;quot;)&lt;br /&gt;
         }&lt;br /&gt;
         return (HP &amp;lt;= 0)&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class Swordsman: Soldier {&lt;br /&gt;
    &lt;br /&gt;
     override func hit(enemy: Soldier) -&amp;gt; Int{&lt;br /&gt;
         var dam = super.hit(enemy)&lt;br /&gt;
         if dam != 0 {&lt;br /&gt;
             println(&amp;quot;Swordsman from team \(self.Team) slashes enemy soldier for \(dam) HP.\n&amp;quot;)&lt;br /&gt;
         } else {&lt;br /&gt;
             println(&amp;quot;Swordsman from team \(self.Team) misses.\n&amp;quot;)&lt;br /&gt;
         }&lt;br /&gt;
         return 1&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class Archer: Soldier {&lt;br /&gt;
     &lt;br /&gt;
     override func hit(enemy: Soldier) -&amp;gt; Int{&lt;br /&gt;
         var dam = super.hit(enemy)&lt;br /&gt;
         if dam != 0 {&lt;br /&gt;
             println(&amp;quot;Archer from team \(self.Team) slashes enemy soldier for \(dam) HP.\n&amp;quot;)&lt;br /&gt;
         } else {&lt;br /&gt;
             println(&amp;quot;Archer from team \(self.Team) misses.\n&amp;quot;)&lt;br /&gt;
         }&lt;br /&gt;
         return 1&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 class Army {&lt;br /&gt;
     &lt;br /&gt;
     let Name: String&lt;br /&gt;
     var Soldiers: [Soldier] = []&lt;br /&gt;
     &lt;br /&gt;
     init (n: Int, name: String) {&lt;br /&gt;
         Name = name&lt;br /&gt;
         for i in 0..&amp;lt;n {&lt;br /&gt;
             var k = Int(arc4random_uniform(2))&lt;br /&gt;
             if k == 0 {&lt;br /&gt;
                 Soldiers.append(Swordsman(team: name))&lt;br /&gt;
             } else {&lt;br /&gt;
                 Soldiers.append(Archer(team: name))&lt;br /&gt;
             }&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 func battle(A: Army, B: Army) -&amp;gt; Army {&lt;br /&gt;
     var attacker = true&lt;br /&gt;
     while A.Soldiers.count != 0 &amp;amp;&amp;amp; B.Soldiers.count != 0 {&lt;br /&gt;
         if attacker {&lt;br /&gt;
             A.Soldiers.last!.hit(B.Soldiers.last!)&lt;br /&gt;
             if B.Soldiers.last!.dead(){&lt;br /&gt;
                 B.Soldiers.removeLast()&lt;br /&gt;
             }&lt;br /&gt;
             attacker = false&lt;br /&gt;
         } else {&lt;br /&gt;
             B.Soldiers.last!.hit(A.Soldiers.last!)&lt;br /&gt;
             if A.Soldiers.last!.dead(){&lt;br /&gt;
                 A.Soldiers.removeLast()&lt;br /&gt;
             }&lt;br /&gt;
             attacker = true&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
     if A.Soldiers.count &amp;gt; 0 {&lt;br /&gt;
         return A&lt;br /&gt;
     } else {&lt;br /&gt;
         return B&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 println(battle(Army(n: 5, name: &amp;quot;Red&amp;quot;), Army(n: 5, name: &amp;quot;White&amp;quot;)).Name + &amp;quot; wins.\n&amp;quot;)}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2) Освоился в среде Xcode, написал простую записную книжку:&lt;br /&gt;
https://github.com/vary10/phonebook/tree/master/PhoneBook.git&lt;br /&gt;
&lt;br /&gt;
3) Узнал, как использовать CocoaPods, установил его в новое todo приложение:&lt;br /&gt;
https://github.com/vary10/ToDo.git&lt;br /&gt;
&lt;br /&gt;
4) С помощью CocoaPods установил Magical Record для лучшего использования бд CoreData в своем todo приложении:&lt;br /&gt;
https://github.com/vary10/ToDo.git&lt;br /&gt;
&lt;br /&gt;
5) Начал использовать делегатов, сделал popup-viewcontroller для выбора цвета для события в todo:&lt;br /&gt;
https://github.com/vary10/ToDo.git&lt;br /&gt;
&lt;br /&gt;
6) Перешел к работе над основным приложением, сделал внешний вид:&lt;br /&gt;
https://github.com/cs-hse-projects/CSChat.Valery_Girkin/tree/develop&lt;/div&gt;</summary>
		<author><name>Vary10</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Vary10&amp;diff=1644</id>
		<title>Участник:Vary10</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Vary10&amp;diff=1644"/>
		<updated>2015-02-21T12:38:11Z</updated>

		<summary type="html">&lt;p&gt;Vary10: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==CSChat==&lt;br /&gt;
&lt;br /&gt;
====1. Разобрался с swift и написал игрушку в playground:====&lt;br /&gt;
 import Foundation&lt;br /&gt;
  &lt;br /&gt;
 class Soldier {&lt;br /&gt;
      &lt;br /&gt;
     var HP, Strength: Int&lt;br /&gt;
     var Team: String&lt;br /&gt;
     &lt;br /&gt;
     init (team: String) {&lt;br /&gt;
         HP = Int(arc4random_uniform(20)) + 40&lt;br /&gt;
         Strength = Int(arc4random_uniform(10)) + 1&lt;br /&gt;
         Team = team&lt;br /&gt;
     }&lt;br /&gt;
      &lt;br /&gt;
     func hit(enemy: Soldier) -&amp;gt; Int{&lt;br /&gt;
         var crit = Int(arc4random_uniform(3))&lt;br /&gt;
         var dam = (Strength + Int(arc4random_uniform(10)) + 1) * crit&lt;br /&gt;
         enemy.HP -= dam&lt;br /&gt;
         return dam&lt;br /&gt;
     }&lt;br /&gt;
      &lt;br /&gt;
     func dead() -&amp;gt; Bool{&lt;br /&gt;
         if HP &amp;lt;= 0 {&lt;br /&gt;
             println(&amp;quot;Soldier from team \(self.Team) dies.\n&amp;quot;)&lt;br /&gt;
         }&lt;br /&gt;
         return (HP &amp;lt;= 0)&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class Swordsman: Soldier {&lt;br /&gt;
    &lt;br /&gt;
     override func hit(enemy: Soldier) -&amp;gt; Int{&lt;br /&gt;
         var dam = super.hit(enemy)&lt;br /&gt;
         if dam != 0 {&lt;br /&gt;
             println(&amp;quot;Swordsman from team \(self.Team) slashes enemy soldier for \(dam) HP.\n&amp;quot;)&lt;br /&gt;
         } else {&lt;br /&gt;
             println(&amp;quot;Swordsman from team \(self.Team) misses.\n&amp;quot;)&lt;br /&gt;
         }&lt;br /&gt;
         return 1&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class Archer: Soldier {&lt;br /&gt;
     &lt;br /&gt;
     override func hit(enemy: Soldier) -&amp;gt; Int{&lt;br /&gt;
         var dam = super.hit(enemy)&lt;br /&gt;
         if dam != 0 {&lt;br /&gt;
             println(&amp;quot;Archer from team \(self.Team) slashes enemy soldier for \(dam) HP.\n&amp;quot;)&lt;br /&gt;
         } else {&lt;br /&gt;
             println(&amp;quot;Archer from team \(self.Team) misses.\n&amp;quot;)&lt;br /&gt;
         }&lt;br /&gt;
         return 1&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 class Army {&lt;br /&gt;
     &lt;br /&gt;
     let Name: String&lt;br /&gt;
     var Soldiers: [Soldier] = []&lt;br /&gt;
     &lt;br /&gt;
     init (n: Int, name: String) {&lt;br /&gt;
         Name = name&lt;br /&gt;
         for i in 0..&amp;lt;n {&lt;br /&gt;
             var k = Int(arc4random_uniform(2))&lt;br /&gt;
             if k == 0 {&lt;br /&gt;
                 Soldiers.append(Swordsman(team: name))&lt;br /&gt;
             } else {&lt;br /&gt;
                 Soldiers.append(Archer(team: name))&lt;br /&gt;
             }&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 func battle(A: Army, B: Army) -&amp;gt; Army {&lt;br /&gt;
     var attacker = true&lt;br /&gt;
     while A.Soldiers.count != 0 &amp;amp;&amp;amp; B.Soldiers.count != 0 {&lt;br /&gt;
         if attacker {&lt;br /&gt;
             A.Soldiers.last!.hit(B.Soldiers.last!)&lt;br /&gt;
             if B.Soldiers.last!.dead(){&lt;br /&gt;
                 B.Soldiers.removeLast()&lt;br /&gt;
             }&lt;br /&gt;
             attacker = false&lt;br /&gt;
         } else {&lt;br /&gt;
             B.Soldiers.last!.hit(A.Soldiers.last!)&lt;br /&gt;
             if A.Soldiers.last!.dead(){&lt;br /&gt;
                 A.Soldiers.removeLast()&lt;br /&gt;
             }&lt;br /&gt;
             attacker = true&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
     if A.Soldiers.count &amp;gt; 0 {&lt;br /&gt;
         return A&lt;br /&gt;
     } else {&lt;br /&gt;
         return B&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 println(battle(Army(n: 5, name: &amp;quot;Red&amp;quot;), Army(n: 5, name: &amp;quot;White&amp;quot;)).Name + &amp;quot; wins.\n&amp;quot;)}&lt;/div&gt;</summary>
		<author><name>Vary10</name></author>
	</entry>
	<entry>
		<id>https://wiki.cs.hse.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Vary10&amp;diff=1643</id>
		<title>Участник:Vary10</title>
		<link rel="alternate" type="text/html" href="https://wiki.cs.hse.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Vary10&amp;diff=1643"/>
		<updated>2015-02-21T12:00:30Z</updated>

		<summary type="html">&lt;p&gt;Vary10: Новая страница: «CSChat»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CSChat&lt;/div&gt;</summary>
		<author><name>Vary10</name></author>
	</entry>
</feed>