Для начала я хотел бы сказать, что управлять компьютером и создавать программы может любой человек. Для создания компьютерных программ не нужно обладать невероятным интеллектом или ученой степенью в математических дисциплинах. Вам понадобится только желание в чем-то разобраться и терпение, чтобы не бросить занятия.
Умение писать программы — это такое же умение, как и умение плавать, танцевать или жонглировать. Некоторым людям действительно удается делать это намного лучше, чем другим, но любой человек сможет достичь определенных результатов при должной практике. Именно по этой причине дети становятся асами программирования в раннем возрасте. Дети не обязательно гениальны; они просто склонны познавать новое и не боятся ошибаться.
Несмотря на то, что компьютеры кажутся очень сложными электронными чудовищами, расслабьтесь. Совсем немногие знают, как именно работают поисковые машины, которые позволяют вам быстро находить необходимую информацию в Internet, a некоторые люди и не разобрались, как управлять автомобилем. Точно так же практически любой может научиться создавать программы, не вдаваясь в подробности о том, как именно работает компьютер.
Как написать программу.Программирование для чайников.
Вообще говоря, программа указывает компьютеру, как решить ту или иную проблему. Поскольку в мире полно проблем, количество программ, которые могут написать люди, бесконечно.
Однако, для того чтобы сообщить компьютеру, как решить одну громадную проблему, обычно вам придется рассказать компьютеру, как решить целый ряд мелких проблем, из которых и состоит большая проблема.
На самом деле программирование совсем несложно и не является чем-то загадочным и сверхъестественным. Если вы в состоянии написать пошаговые инструкции, которые позволят человеку найти ваш дом, вы сможете написать и компьютерную программу.
Самое сложное в программировании — определение небольших проблем, образующих проблему, которую вам необходимо решить. Так как компьютеры абсолютно глупы, вам придется рассказать им, как выполнять любые действия.
Если вы считаете, что создавать программу интереснее, чем ее использовать, у вас есть все необходимое для того, чтобы создавать компьютерные программы. Если вы хотите изучить написание компьютерных программ, вам необходимы три следующих качества.
Стремление. Если вы чего-то очень сильно хотите, вы обязательно это получите (но если вы совершите что-то противозаконное, вы рискуете провести немало времени в тюрьме). Если вы хотите научиться программировать, ваше желание обязательно вам поможет, независимо от того, сколько препятствий окажется у вас на пути.
Любознательность. Здоровая доза любознательности может подогревать ваше стремление к экспериментированию и дальнейшему совершенствованию навыков программирования даже после прочтения настоящей книги. Благодаря любопытству изучение программирования окажется для вас менее скучным и более интересным. А если вам интересно, вы обязательно изучите и запомните больше сведений, чем любой абсолютно незаинтересованный в этом человек (например, ваш начальник).
Как выучить C#? Самый аху#### способ!
Воображение. Создание компьютерных программ — это навык, но воображение поможет сделать этот навык более совершенным и направленным. Обладающий изрядной долей воображения начинающий программист всегда будет создавать намного более интересные и полезные программы, чем замечательный программист без воображения. Если вы не знаете, что же делать со своими навыками программирования, ваш талант просто погибнет без воображения.
Стремление, любознательность и воображение — вот три самых важных качества, которыми должен обладать каждый программист. Если вы обладаете ими, вам стоит беспокоиться только о мелочах: какой язык программирования изучать (например, C++), что там с математикой и т.д.
Среди многих языков программирования вы всегда сможете найти именно тот язык, который подходит для решения данной задачи. При появлении нового типа проблем люди создают новые языки.
Конечно, на самом деле компьютер понимает только один язык, состоящий из нулей и единиц, который называется машинным языком. Обычно программа, написанная на машинном языке, выглядит приблизительно так:
0010 1010 0001 1101
ООН 1100 1010 1111
0101 ОНО 1101 0101
1101 1111 0010 1001
Далее, очень существенно, для какой цели выбирается язык — для обучения программированию либо для решения конкретной прикладной задачи. В первом случае язык должен быть простым для понимания, строгим и по возможности лишенным «подводных камней». Во втором — пусть сложным, но эффективным и выразительным инструментом для профессионала, знающего чего он хочет.
Теперь мне бы хотелось разъяснить вам, что следует отличать язык программирования (Basic, Pascal) от его реализации, которая обычно представлена в составе среды программирования (Quick Basic, Virtual Pascal) — набора средств для редактирования исходных текстов, генерации исполняемого кода, отладки, управления проектами и т.д. Синтаксис и семантика языка программирования фиксируется в стандарте языка. Каждая среда программирования предоставляет свой интерпретатор или компилятор с этого языка, который зачастую допускает использование конструкций, не фиксированных в стандарте.
Рассмотрим основные и популярные языки программирования
Assembler Это ярчайший представитель языков низкого уровня, набор понятий которого основан на аппаратной реализации. Это средство автоматизации для программирования непосредственно в кодах процессора. Машинные команды описываются в виде мнемонических операций, что позволяет добиться достаточно высокой модифицируемости кода. Поскольку набор команд на разных процессорах различен, то и о совместимости говорить не приходится. Использование ассемблера целесообразно в случаях, когда необходимо напрямую взаимодействовать с оборудованием, либо получить большую эффективность для некоторой части программы за счет более высокого контроля над генерацией кода.
Кобол — Язык программирования высокого уровня, разработанный в конце 1950-х гг. ассоциацией КАДАСИЛ для решения коммерческих и экономических задач. Отличается развитыми средствами работы с файлами. Поскольку команды программ, написанных на этом языке, активно используют обычную английскую лексику и синтаксис, Кобол рассматривается как один из самых простых языков программирования. В настоящее время используется для решения экономических, информационных и других задач.
Фортран — Язык программирования высокого уровня, разработанный фирмой IBM в 1956 г. для описания алгоритмов решения вычислительных задач. Относится к категории процедурно-ориентированных языков. Наиболее распространенными версиями этого языка являются Фортран IV, Фортран 77 и Фортран 90. Используется на всех классах ЭВМ. Последняя его версия также применяется на ЭВМ с параллельной архитектурой.
Ада — Язык программирования высокого уровня, ориентированный на применение в системах реального времени и предназначенный для автоматизации задач управления процессами и/или устройствами, например, в бортовых (корабельных, авиационных и др.) ЭВМ. Разработан по инициативе министерства обороны США в 1980-х гг. Назван в честь английского математика Ады Августы Байрон (Лавлейс), жившей в 1815-1851 гг.
BASIC (Beginner’s All-purpose Symbolic Instruction Code) Рожденный в 60-е годы в Америке. Бейсик был задуман как простой язык для быстрого освоения. Бейсик стал фактическим стандартом для МикроЭВМ именно благодаря своей простоте как в освоении так и в реализации.
Однако для достижения этого качества был принят ряд решений (отсутствие типизации, нумерация строк и неструктурное GOTO, и др.), негативно сказывающихся на стиле изучающих программирование. Кроме того, недостаток выразительных средств привел к появлению огромного количества диалектов языка, не совместимых между собой. Современные, специализированные версии Бейсика (такие как Visual Basic) несмотря на приобретенную «структурность» обладают все теми же недостатками, прежде всего — небрежностью по отношению к типам и описаниям. Пригоден для использования на начальном этапе обучения, как средство автоматизации (в случаях когда он встроен в соответствующие системы) либо как средство для быстрого создания приложений.
Pascal Разработанный известным теоретиком Н.Виртом на основе идей Алгола-68, Паскаль предназначался прежде всего для обучения программированию. Построенный по принципу «необходимо и достаточно», он располагает строгим контролем типов, конструкциями для описания произвольных структур данных, небольшим, но достаточным набором операторов структурного программирования. К сожалению, обратной стороной простоты и строгости является громоздкость описаний конструкций языка. Наиболее известная реализация — Turbo/Borland Pascal — несмотря на отличия от стандарта Паскаля, представляет из себя среду и набор библиотек, сделавшие из учебного языка промышленную систему для разработки программ в среде MS-DOS.
C и C++ В основе языка C — требования системного программиста: полный и эффективный доступ ко всем ресурсам компьютера, средства программирования высокого уровня, переносимость программ между различными платформами и операционными системами. С++, сохраняя совместимость с C, вносит возможности объектно-ориентированного программирования, выражая идею класса (объекта) как определяемого пользователем типа. Благодаря перечисленным качествам, C/C++ занял позицию универсального языка для любых задач. Но его применение может стать неэффективным там, где требуется получить готовый к употреблению результат в кратчайшие сроки, либо там, где невыгодным становится сам процедурный подход.
Delphi — это не продолжатель дела Borland Pascal / Borland C, его ниша — т.е. быстрое создание приложений (Rapid Application Developing, RAD). Подобные средства позволяют в кратчайшие сроки создать рабочую программу из готовых компонентов, не растрачивая массу усилий на мелочи. Особое место в таких системах занимают возможности работы с базами данных.
Лисп — Алгоритмический язык, разработанный в 1960 г. Дж. Маккарти и предназначенный для манипулирования перечнями элементов данных. Используется преимущественно в университетских лабораториях США для решения задач, связанных с искусственным интеллектом. В Европе для работ по искусственному интеллекту предпочитают использовать Пролог.
Пролог — Язык программирования высокого уровня декларативного, предназначенный для разработки систем и программ искусственного интеллекта. Относится к категории языков пятого поколения. Был разработан в 1971 г. в университете г. Марсель (Франция), относится к числу широко используемых и постоянно развиваемых языков. Последняя его версия Prolog 6.0
ЛОГО — Язык программирования высокого уровня, разработан в Массачусетском технологическом институте в ориентировочно 1970 г. для целей обучения математическим понятиям. Используется также в школах и пользователями ПЭВМ при написании программ для создания чертежей на экране монитора и управления перьевым графопостроителем.
Java Как яркий пример специализации, язык Java появился в ответ на потребность в идеально переносимом языке, программы на котором эффективно исполняются на стороне клиента WWW. В ввиду специфики окружения, Java может быть хорошим выбором для системы, построенной на Internet/Intranet технологии.
Алгол — Язык программирования высокого уровня, ориентированный на описание алгоритмов решения вычислительных задач. Был создан в 1958 г. специалистами западно-европейских стран для научных исследований. Версия этого языка Алгол-60 была принята Международной конференцией в Париже (1960 г.) и широко использовалась на ЭВМ 2-го поколения. Версия Алгол-68, разработанная группой специалистов Международной федерации по обработке информации (ИФИП) в 1968 г., получила статус международного универсального языка программирования, ориентированного на решение не только вычислительных, но и информационных задач. Хотя в настоящее время Алгол практически не используется, он послужил основой или оказал существенное влияние на разработку более современных языков, например, Ада, Паскаль и др.
Самого лучшего языка не существует. Если вы собираетесь стать профессионалом в написании программ, вам необходимо изучить один из языков программирования высокого уровня (наиболее популярен язык программирования C++), а также один из языков программирования баз данных (например, SQL). Изучив язык программирования C++, вы не ошибетесь. Зная этот язык, вы всегда сможете найти работу в любой компании, занимающейся программированием.
Несмотря на большую популярность языка программирования C++, часто используются и другие языки. На многих устаревших компьютерах до сих пор работают программы, написанные на языке программирования COBOL. Поэтому нужны программисты, которые умеют усовершенствовать данные программы, а также писать новые. Очень часто крупные компании выплачивают таким программистам высокую заработную плату.
Если вы собираетесь работать самостоятельно, предпочтительнее всего научиться создавать собственные программы для баз данных. Для этого вам понадобится изучить такие языки программирования, как SQL или VBA, которые используются в программе Microsoft Access. Для того чтобы создавать Web-страницы, необходимо знать HTML, а также немного знать Java, JavaScript, VBScript и другие языки программирования для Internet. Самым нужным будет тот язык программирования, который позволит решить поставленные перед вами задачи легко и быстро. Это может быть язык программирования C++, BASIC, Java, SQL или язык ассемблера.
В заключение отметим, что с профессиональной точки зрения не так важно на каком языке и в какой среде работает программист, сколько как он выполняет свою работу. Меняется аппаратура и операционные системы. Возникают новые задачи из самых различных предметных областей. Уходят в прошлое и появляются новые языки. Но остаются люди — те, кто пишет и те, для кого пишут новые программы и чьи требования к качеству остаются теми же вне зависимости от этих изменений.
Вот с вами мы и рассмотрели основы программирования и основные языки программирования.
Желаю удачи в освоение программирования!
Источник: info-comp.ru
Пошаговые руководства для Visual Basic
В пошаговых руководствах содержатся инструкции по выполнению стандартных сценариев, что делает их удобным инструментом для начала изучения продукта в целом или его отдельных возможностей.
- Написание асинхронной программы
Демонстрирует создание асинхронных решений с помощью ключевых слов Async и Await. - Объявление и вызов событий
В этом пошаговом руководстве описывается, каким образом объявляются и вызываются события в Visual Basic. - Обработка событий
В этом пошаговом руководстве описывается обработка событий с помощью стандартного ключевого слова WithEvents или новых ключевых слов AddHandler / RemoveHandler . - Создание и реализация интерфейсов
В этом пошаговом руководстве описывается объявление и реализация интерфейсов в Visual Basic. - Определение классов
В этом пошаговом руководстве описывается объявление класса и его полей, а также свойств, методов и событий. - Написание запросов в Visual Basic
В этом пошаговом руководстве описывается, как использовать возможности языка Visual Basic для написания выражений запросов на языке LINQ. - Реализация IEnumerable(Of T) в Visual Basic
В этом пошаговом руководстве описывается создание класса, реализующего интерфейс IEnumerable(Of String) и класс, реализующий интерфейс IEnumerator(Of String) для считывания текстового файла строка за строкой. - Вызов API Windows
В этом пошаговом руководстве описывается, как использовать операторы Declare и вызывать API Windows. Содержит сведения об использовании атрибутов для управления маршалингом для вызова API и о том, как предоставить вызов API в качестве метода класса. - Создание объектов COM с помощью Visual Basic
В этом пошаговом руководстве описывается создание COM-объектов в Visual Basic, как с применением шаблона COM-класса, так и без него. - Реализация наследования с использованием COM-объектов
В этом пошаговом руководстве описывается использование Visual Basic 6.0 для создания COM-объекта, содержащего класс, и его последующее применение в качестве базового класса в Visual Basic. - Определение места записи сведений для My.Application.Log
В этом пошаговом руководстве описываются параметры My.Application.Log по умолчанию и способ определения параметров для приложения. - Изменение места записи сведений для My.Application.Log
В этом пошаговом руководстве описывается, как переопределить параметры My.Application.Log и My.Log по умолчанию для записи информации о событиях и настроить объект Log на запись в другие прослушиватели журналов. - Фильтрация выходных данных My.Application.Log
В этом пошаговом руководстве описывается изменение фильтрации журнала по умолчанию для объекта My.Application.Log . - Создание пользовательских прослушивателей журнала
В этом пошаговом руководстве демонстрируется создание пользовательского прослушивателя журнала и его настройка на прослушивание выходных данных объекта My.Application.Log . - Внедрение типов из управляемых сборок
В этом пошаговом руководстве описывается создание сборки и клиентской программы, в которую входят типы из этой сборки. - Проверка паролей на сложность (Visual Basic)
В этом пошаговом руководстве описывается, как проверять надежность пароля и передавать в параметр строки данные о том, какие проверки пароля завершаются с ошибкой. - Шифрование и расшифровка строк в Visual Basic
В этом пошаговом руководстве описывается использование класса DESCryptoServiceProvider для шифрования и расшифровки строк. - Управление файлами и папками в Visual Basic
В этом пошаговом руководстве описывается использование функций Visual Basic для определения сведений о файле, поиска строки в файле и записи в файл. - Управление файлами с помощью методов .NET Framework
В этом пошаговом руководстве описывается использование методов .NET Framework для определения сведений о файле, поиска строки в файле и записи в файл. - Пошаговое руководство. Основанная на тестировании поддержка с помощью возможности «Создание в результате использования»
В этом пошаговом руководстве описывается разработка типа «Сначала тест», при которой разработчик сначала пишет модульные тесты, а затем исходный код для их успешного выполнения.
Источник: learn.microsoft.com
Как стать программистом
Это моя личная ссылка-приглашение на Stepik для вас. Регистрируясь по этой ссылке, записываясь на курсы и решая задачи, Вы помогаете автору данного сайта принять участие в конкурсе платформы Stepik! Подробности конкурса здесь: https://vk.cc/75rKuS
суббота, 8 января 2011 г.
Занятие 1.Выбор среды программирования.Первая программа!Уроки программирования для чайников.Язык Си.
Доброго времени суток!
Сегодняшний наш урок по программированию будет посвящено выбору среды программирования и её настройке!После того, как мы настроим среду программирования мы с вами напишем первую программу. По традиции это будет программа выводящая на экран сообщение «Hello World». На её основе ознакомимся со структурой программ написанных на языке программирования Си. И в конце урока будет предложено для выполнения небольшое практическое задание. Вот такой вот вводный урок.
Приступим!
Вы можете прочитать новую (улучшенную) версию этого урока.
В своих уроках все примеры я буду показывать в среде программирования Microsoft Visual C++ 2008 Express Edition. Это студенческая версия, она полностью бесплатная. Вот ссылка для скачивания . На официальном сайт всегда доступна самая последняя версия вижуал студио . Для тех у кого качество доступа в интернет оставляет желать лучшего предлагаю скачать среду разработки Borland C++ 3.1! Линк для скачивания легко найдете в гугле. Все примеры исходных текстов программ, приводимые в дальнейших уроках, я буду писать так, чтобы они компилировались как в одной, так и в другой среде программирования.
UPD: 31.07.16 Или можете попробовать простую среду Pelles C. Инструкция.
Разберемся как создать свое первое приложение в Microsoft Visual C++ 2008 Express Edition. После запуска среды программирования перед вами появится вот такое окно:
Далее создаем пустой проект. Для этого в меню File -> New -> Project (Файл->Создать->Проект) либо нажимаем Ctrl+Shift+N. Появиться следующее окно:
В этом окне выбираем в левой части окна Win32 и в правой части Win32 Console Application (Консольное приложение Win32) .Задаем имя нашему проекту какое вам захочется. В строке Location(Расположение)можно поменяем путь сохранения проекта. И нажимайте Ок.
Появится следующее окно:
Выбираем в левой части окна Application Settings (Параметры приложения) и ставим галочку в пункт Empty project (Пустой проект).Заканчиваем создание проекта кнопкой Finish (готово).
Снова откроется главное окно, слева появиться наш проект. Теперь нам нужно добавить в него файл.Для этого заходим в меню Project -> Add New Item (Проект->Добавить новый элемент) или нажимаем Ctrl+Shift+A. Появиться следующее окно.
Выбираем тип файла C++ File (.cpp). Затем, в поле Name (Имя) вводим любое имя и жмем кнопку Add (Добавить).И перед нами откроется окно редактора, сюда мы и будем писать свою первую программу!
По сслыке представлена инструкция по созданию нового проекта в Visual Studio 2010.
Так с одной средой программирования разобрались, теперь Borland C++. Здесь все намного проще нежели в Microsoft Visual C++ 2008 Express Edition.
Запускаем среду программирования и перед нами появляется следующее окно:
Заходим в меню File->New и все готово. Вместо серой области появиться редактор кода.
Вот наконец-то мы можем перейти к самому процессу программирования. Напишем текст своей первой программы на C! По старой доброй традиции это будет программа, которая выводит на экран фразу Hello World!
Ниже представлен её код, перепишите его в редактор, только прошу вас, именно вручную набирайте все коды представленные здесь, это важно!Хочу сразу отметить, язык программирования С различает маленькие и большие буквы. Все стандартные операторы надо писать маленькими буквами.
Листинг 1.1
//первая программа
#include
int main( void )
printf( «Hello World n» );
return (0);
>
Далее, нам надо проверить нашу программу для этого её исходный текст надо скомпилировать, т.е. если по-простому перевести в язык понятный компьютеру и сделать исполняемый файл.
Вот тут мы рассмотрим вопрос поподробнее и разберемся с «горячими клавишам» команд, которые нам нужны на данном этапе, в наших средах программирования.
Начнем с Microsoft Visual C++ 2008 Express Edition.
F7 — Скомпилировать проект.
Ctrl+F5 — Запустить скомпилированный проект на выполнение.
Borland C++ 3.1
F9 — Скомпилировать проект.
Ctrl+F9 — Запустить скомпилированный проект на выполнение.
Alt+F5 — Просмотреть экран консоли.
Теперь зная эти команды сначала скомпилируем программу, а потом запустим её на выполнение.В среде Borland С++ надо еще просмотреть Если все сделано правильно то вы увидите вот такое окошко:
Если вы допустите где-то ошибку то компилятор вас об этом осведомит. В Microsoft Visual C++ 2008 Express Edition ниже текстового редактора есть небольшое окно в котором показывается ход выполнения компиляции, там же будет показаны различные предупреждения и ошибки возникшие во время компиляции.
Вот пример вывода в этом окне правильно написанной программы:
1>—— Построение начато: проект: Урок 1, Конфигурация: Debug Win32 ——
1>Компиляция.
1>1.cpp
1>Компоновка.
1>Внедрение манифеста.
1>Журнал построения был сохранен в «file://c:Documents and Settings1Мои документыVisual Studio 2008ProjectsУрок 1Урок 1DebugBuildLog.htm»
1>Урок 1 — ошибок 0, предупреждений 0
======== Построение: успешно: 1, с ошибками: 0, без изменений: 0, пропущено: 0 ========
А вот пример с ошибкой:
1>—— Построение начато: проект: Урок 1, Конфигурация: Debug Win32 ——
1>Компиляция.
1>1.cpp
1>c:documents and settings1мои документыvisual studio 2008projectsурок 1урок 11.cpp(5) : error C2143: синтаксическая ошибка: отсутствие «;» перед «return»
1>Журнал построения был сохранен в «file://c:Documents and Settings1Мои документыVisual Studio 2008ProjectsУрок 1Урок 1DebugBuildLog.htm»
1>Урок 1 — ошибок 1, предупреждений 0
========= Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 =========
В Borland C++ если во время компиляции обнаружены ошибки тоже появиться небольшое окно в котором будет указана краткое описание этой ошибки. Возможно в вашей версии все описания будут на английском, но это не проблема. Описание ошибки понятно даже на английском, например Syntax error это синтаксическая ошибка и т.д. В крайнем случае можно воспользоваться переводчиком. =)
Теперь построчно разберем нашу первую программу программу на С++.
//первая программа
Это строчный комментарий, он начинается с двух с // и продолжается до конца текущей строки. Данные комментарии появились в языке С++ в С их нет. В С использовались много строчные комментарии. Они начинаются с последовательности /* и заканчиваются */
Все что заключено между ними это и есть комментарий.Такой вид комментариев есть и в С и в С++. В комментариях можно использовать любые символы. Обычно комментарии используются программистом для описания всей программы или некоторого куска программы. Часто комментарии пишут перед каким-то сложным куском программы, для того чтобы описать что этот кусок программы делает.
- блок заголовочных файлов . Тут подключаются различные заголовочные файлы и библиотеки, функции из которых нам понадобятся в нашей программе.
- блок описания пользовательских функций .В данном блоке программист описывает свои функции нужные ему для решения каких то задач.Данный блок может отсутствовать,как например в нашей программе рассмотренной выше.
- блок описание главной функции. В этом блоке находится сама логика всей программы.
- научились создавать и управлять проектами в выбранной среде программирования.
- написали свою первую, саму простецкую, программу.
- ознакомились с некоторыми базовыми конструкциями языков программирования С/С++
- узнали основную структуру программ написанных на C/C++
Задание для практической работы .
- Перепишите код первой программы, и скомпилируйте её. Добейтесь чтобы у вас всё работало.
- Теперь стоит поэкспериментировать с кодом программы:
- Удалите строчку с подключением файла stdio.h, посмотрите какую ошибку вам выдаст компилятор, запомните . В будущем пригодиться, особенно если среда программирования на английском.Чтобы потом не спрашивать а что означает данная ошибка. НЕ ЗАБЫВАЙТЕ! После каждого опыта приводить программу снова в рабочее состояние.
- Теперь удалите символ ; в какой нибудь строке. И тоже посмотрите, что в этом случае напишет вам компилятор.
- А сейчас попробуйте просто внести любую ошибку, например, опечатку или регистр букв измените. Посмотрите на ошибку.
- Попробуйте теперь удалить оператор return(0); Посмотрите как ведет себя компилятор в этом случае, какую ошибку выдает.
В связи с тем, что комментариев к уроку стало слишком много и blogspot как-то некорректно стал их отображать. Я убираю возможность добавления комментариев к этому уроку. Если возникают вопросы их можно задавать в комментах в новой версии урока на сайте на сайте
Задачи с автоматической проверкой решения из новой версии курса.
Задачи на структуру программ на Си.
Если Вам понравился этот урок, расскажите о нем вашим друзьям. В этом Вам могут помочь кнопки основных социальных сетей, расположенные ниже. Вам остается всего лишь кликнуть по любой из них.
Источник: www.youngcoder.net