1 урок


[vk]http://vk.com/video_ext.php?oid=-66674957&id=167880434&hash=1b0e6cacc49f7e2b&hd=3[/vk]

Программы для работы

Презентация урока

Intro

Самое нужное о C# программировании! Потребуется Microsoft Visual Studio 2012 + Resharper 7 (совместимый со студией вашей версии)

Помощь в программировании:

Герберт Шилд (хорошая книга по программированию)

Темы занятия 1 (Использование базовых конструкций C#)

• Вводное слово по C#, MSVS, Resharper. • Обзор типов проектов и решаемые ими задачи. • Как работать с исходными кодами, редактор текста. Компилирование проекта. • Основные типы C# .NET. • Пространство имен. Константы, комментарии, переменные. • Операторы ветвлений, выбора (If..else, switch, ?:) • Логические, условные, унарные, операторы равенства. • Циклы (for, while, do ... while) • Перечисления. Массивы.

Код из урока:


            var r = new Random();
            const int tradeprice = 15110;
            const int stoppins = 300;
            const int buystoploss = tradeprice - stoppins;
            int activationtimes = 0;

            for (int i = 0; i < 100; i++)
            {
                var realPrice = r.Next(14950, 15220);
                if (realPrice < buystoploss)
                {
                    activationtimes++;
                    Console.WriteLine("OMG, stoploss activated! {0} exitprice = {1}", activationtimes, realPrice);
                }
                else
                {
                    Console.WriteLine("Profit = {0}", realPrice - tradeprice);
                }

                Thread.Sleep(100);
            }

Домашнее задание

Пользуясь знаниями, полученными из первого урока, написать программу, примитивно моделирующую предоставление кредитного плеча (см. видео). Использовать цикл, switch, enum, условные переходы.


using System;

namespace Hometask
{
    class Program
    {
		enum Command { BUY, SELL, QUIT}
		
        private static void Main(string[] args)
        {
		
			// TODO: обозначить параметры
			
			// TODO: цикл, проверяющий, не прервать ли всё + Sleep(100)
			
			// TODO: switch + Command, проверяет команды

			// TODO: расчет +/- 
			
			// Проверка счета на Marging Call
			
			
            Console.ReadLine();
        }
    }
}

Решение домашнего задания


using System;

namespace Hometask1
{
    class Program
    {
        enum Command { BUY, SELL, QUIT }  //Перечисление

        static void Main(string[] args)
        {
            string input;
            Command command;

            int account = 5000;  //Сколько денег было
            double shoulder = 0.01;  // Кредитное плечо

            int total_money = (int) (account/shoulder);  // Денег участвуют изначально
            int all_money = total_money; // Денег участвуют в процессе
            var r = new Random();

            do
            {
                Console.WriteLine("What do you want?");
                input = Console.ReadLine(); // читаем команду с консоли
                command = (Command)Enum.Parse(typeof(Command), input.ToUpper());  // String to Enum

                switch (command)  // Если команда
                {
                        case Command.SELL:  //Продавать
                         Console.WriteLine("SELLING");  // Продаем
                        break;
                        case Command.BUY: // Покупать
                         Console.WriteLine("BUYING");  // покупаем                      
                        break;
                }
				//Случайно генерируем, как изменился счет
                all_money = all_money * r.Next(97, 103) / 100;  // 97 - 103 

                if ((total_money - all_money) > account)  // Считаем прибыль/убыль, тчонее сравниваем
                {
                    Console.WriteLine("MARGIN CALL!!!"); // Если много в минус - марджин колл, команду ставим на выход
                    command = Command.QUIT;
                }

            } while (command != Command.QUIT);  // Проверяем, нет ли команды прекращения

            Console.WriteLine("Money for you = {0}", all_money * shoulder);  // Результат, можно что-то иное вывести
            Console.ReadLine();
        }
    }
}

Полезные ссылки Оформление кода C# MSDN -- База знаний онлайн Задать вопросы русским Задать вопросы иностранцам

Вложения: Проект




Thanks:


< 1 2 3 
nethask

Avatar
Date: 1/15/2014
Reply


Dropbox ссылочки на презентацию урока, а также книгу Герберта Шилда недействительны. Поправьте пожалуйста!

Thanks:

IvanB

Avatar
Date: 1/17/2014
Reply


nethask: Dropbox ссылочки на презентацию урока, а также книгу Герберта Шилда недействительны. Поправьте пожалуйста!

Спасибо! Заявка пошла на обработку.

Thanks:

centsk

Avatar
Date: 10/21/2015
Reply


IvanB:

nethask: Dropbox ссылочки на презентацию урока, а также книгу Герберта Шилда недействительны. Поправьте пожалуйста!

Спасибо! Заявка пошла на обработку. Прошел год.............

Thanks:

Mikhail Sukhov

Avatar
Date: 10/21/2015
Reply


Все материалы были перенесены в контакт. Структура данного форума со ссылками неактуальны много лет.

Thanks:
< 1 2 3 

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy