Урок №1: Введение в C# — Знакомство с языком и первой программой
1. Введение: Что такое программирование и зачем нам C#?
Привет, будущий программист! 👋 Сегодня мы начинаем наше путешествие в мир создания программ. Представь, что компьютер — это очень умный, но буквально понимающий всё робот. Он умеет выполнять только те команды, которые записаны на его языке. Наша задача — научиться давать ему такие команды, чтобы он делал то, что нам нужно.
Программирование — это процесс написания инструкций для компьютера. Эти инструкции мы записываем на специальном языке, который называется языком программирования. Сегодня мы познакомимся с одним из самых мощных и популярных языков — C# (читается как "Си Шарп").
Почему C#?
- Надёжность: На C# пишут банковские системы, игры (например, в Unity), приложения для Windows, веб-сайты и даже программы для космоса! 🚀
- Понятность: Его синтаксис (правила написания) очень похож на английский язык, поэтому его легко читать.
- Сообщество: Миллионы программистов по всему миру используют C#. Если у тебя возникнет вопрос, ты всегда найдёшь ответ в интернете.
Аналогия из жизни: Представь, что C# — это язык, на котором ты разговариваешь с очень строгим, но умным другом-роботом. Ты говоришь: "Сделай то-то", и он делает, но только если команда сказана абсолютно правильно. Если ошибиться в слове — робот не поймёт и выдаст ошибку.
2. Теория: Основные понятия
Прежде чем писать код, давай разберёмся с базовыми вещами.
2.1. Что такое программа?
Программа — это набор команд, которые компьютер выполняет одну за другой. Простейшая программа может выглядеть так:
// Вывести на экран приветствие
Console.WriteLine("Привет, мир!");
Здесь Console.WriteLine — это команда "напиши строчку". Всё, что внутри кавычек, будет напечатано на экране.
2.2. Переменные — это коробки для данных
Представь, что тебе нужно хранить число или текст. Для этого используют переменные. Это как коробки с наклейками: у каждой коробки есть имя (название переменной) и содержимое (значение).
В C# переменная должна быть объявлена — то есть мы должны сказать: "Я хочу коробку такого-то типа". Типы бывают разные:
- int — для целых чисел (например, 5, -10, 0).
- double — для дробных чисел (например, 3.14, -0.5).
- string — для текста (например, "Привет", "Москва", "123").
- bool — для правды или лжи (true/false).
Аналогия из жизни: Переменная int — это коробка, в которую можно положить только целые яблоки (1, 2, 3). double — коробка, куда можно положить половинку яблока (1.5). string — коробка для записок с текстом.
2.3. Как объявить переменную?
Синтаксис (правило) такой: тип имя = значение;
// Объявляем целочисленную переменную
int age = 15; // возраст — целое число
// Объявляем дробную переменную
double pi = 3.14; // число Пи — дробное
// Объявляем текстовую переменную
string name = "Аня"; // имя — текст
// Объявляем логическую переменную
bool isStudent = true; // true — правда, false — ложь
Обрати внимание: каждая команда заканчивается точкой с запятой ;. Это как точка в конце предложения — компьютер понимает, что команда закончена.
2.4. Комментарии — твои заметки
Когда пишешь код, полезно оставлять заметки для себя или других программистов. Это называются комментарии. Компьютер их игнорирует, они нужны только людям.
// Это однострочный комментарий — две косые черты
/*
А это многострочный комментарий.
Он начинается с /* и заканчивается на */
Всё внутри — не выполняется.
*/
3. Примеры кода: Пишем первую программу
Теперь самое интересное — напишем настоящую программу! Мы будем использовать консольное приложение — это программа, которая работает в чёрном окошке (консоли) и общается с тобой через текст.
Пример 1: Приветствие
using System; // Подключаем библиотеку для работы с консолью
class Program // Объявляем класс (пока просто запомни, что так надо)
{
static void Main() // Главный метод — с него начинается программа
{
// Выводим текст на экран
Console.WriteLine("Привет, мир!");
Console.WriteLine("Добро пожаловать в C#!");
// Ждём, пока пользователь нажмёт Enter
Console.ReadLine();
}
}
Разбор:
- using System; — как будто мы открываем ящик с инструментами. System — это набор готовых команд (библиотека), которые мы можем использовать.
- class Program — программа состоит из классов. Пока считай, что это просто "обёртка" для нашего кода.
- static void Main() — это точка входа. Компьютер начинает выполнять программу именно отсюда.
- Console.WriteLine() — команда "вывести строку и перейти на новую строку".
- Console.ReadLine() — ждёт, пока пользователь что-то введёт (или просто нажмёт Enter). Это нужно, чтобы окно не закрылось сразу.
Пример 2: Работа с переменными
using System;
class Program
{
static void Main()
{
// Объявляем переменные
string userName = "Максим";
int userAge = 14;
double averageGrade = 4.5;
// Выводим информацию на экран
Console.WriteLine("Имя: " + userName);
Console.WriteLine("Возраст: " + userAge);
Console.WriteLine("Средний балл: " + averageGrade);
Console.ReadLine();
}
}
Обрати внимание: мы соединяем текст и переменные знаком +. Это называется конкатенация — склеивание строк.
Пример 3: Ввод данных от пользователя
using System;
class Program
{
static void Main()
{
// Спрашиваем имя
Console.Write("Введите ваше имя: "); // Write — без перехода на новую строку
string name = Console.ReadLine(); // Считываем введённый текст
// Спрашиваем возраст
Console.Write("Введите ваш возраст: ");
int age = Convert.ToInt32(Console.ReadLine()); // Преобразуем текст в число
// Выводим результат
Console.WriteLine("Привет, " + name + "!");
Console.WriteLine("Через год тебе будет " + (age + 1) + " лет.");
Console.ReadLine();
}
}
Разбор:
- Console.Write() — выводит текст без перехода на новую строку (курсор остаётся рядом).
- Console.ReadLine() — считывает то, что ввёл пользователь, как строку (тип string).
- Convert.ToInt32() — преобразует строку в число. Это нужно, потому что возраст — это число, а ReadLine возвращает текст.
- (age + 1) — мы можем делать математические операции прямо внутри вывода.
Пример 4: Простая математика
using System;
class Program
{
static void Main()
{
// Объявляем две переменные
int a = 10;
int b = 3;
// Выполняем операции
int sum = a + b; // Сложение
int diff = a - b; // Вычитание
int product = a * b; // Умножение
int quotient = a / b; // Деление (целое, так как int)
int remainder = a % b; // Остаток от деления
// Выводим результаты
Console.WriteLine("Сумма: " + sum);
Console.WriteLine("Разность: " + diff);
Console.WriteLine("Произведение: " + product);
Console.WriteLine("Целое от деления: " + quotient);
Console.WriteLine("Остаток: " + remainder);
Console.ReadLine();
}
}
Важно: Если делить целые числа (int), то результат будет целым (без дробной части). 10 / 3 = 3, а не 3.333. Остаток (1) можно получить через %.
4. Практика: Давай попробуем сами!
А теперь представь, что ты — шеф-повар, а компьютер — твой помощник. Ты даёшь ему инструкции, и он их выполняет. Ниже я дам тебе несколько заданий. Попробуй написать код сам, а потом сравни с моим решением.
Задание 1: Калькулятор возраста собаки
Напиши программу, которая спрашивает возраст человека, а потом выводит, сколько лет было бы собаке (считаем, что 1 человеческий год = 7 собачьих).
Подсказка: используй Convert.ToInt32 для ввода возраста и умножение на 7.
Задание 2: Личная визитка
Создай программу, которая запрашивает имя, фамилию и город проживания, а потом выводит красивую визитку:
*****************
* Имя: Иван *
* Фамилия: Петров *
* Город: Москва *
*****************
Подсказка: используй Console.WriteLine для каждой строки. Звёздочки можно нарисовать вручную.
Задание 3: Конвертер валют
Пользователь вводит сумму в рублях. Программа выводит эту же сумму в долларах (курс: 1 доллар = 75 рублей) и в евро (1 евро = 85 рублей).
Подсказка: используй double для дробных чисел.
Задание 4: Среднее арифметическое
Программа запрашивает три числа (целых) и выводит их среднее арифметическое. Например, для чисел 5, 10, 15 ответ будет 10.
Подсказка: сложи все числа и раздели на 3. Не забудь, что результат может быть дробным!
Задание 5: Секундомер
Пользователь вводит количество часов, минут и секунд. Программа переводит всё в секунды и выводит общее количество секунд.
Подсказка: 1 час = 3600 секунд, 1 минута = 60 секунд.
5. Итог: Что мы узнали сегодня?
Поздравляю! 🎉 Ты сделал первый шаг в мир программирования на C#. Давай подведём итоги:
- Мы узнали, что программа — это набор команд для компьютера.
- Познакомились с переменными — коробками для хранения данных (int, double, string, bool).
- Научились выводить текст на экран (Console.WriteLine) и считывать ввод пользователя (Console.ReadLine).
- Поняли, как делать комментарии и математические операции.
- Написали свою первую программу!
Золотое правило программиста: Не бойся ошибок! Они — твои учителя. Если программа не работает, прочитай сообщение об ошибке (оно обычно подсказывает, что не так) и попробуй снова. Каждый великий программист начинал с "Hello, World!" и сотен ошибок.
Домашнее задание: Попробуй выполнить все 5 практических заданий. Если что-то не получается — напиши код в комментариях к уроку, я помогу разобраться. В следующем уроке мы узнаем, как заставить программу принимать решения (условные операторы) и повторять действия (циклы). Удачи! 🚀