Из этой лекции вы узнаете о — переменной.
Несмотря на то, что переменная — это основной элемент программного кода, некоторые ресурсы посвященные основам программирования уделяет переменной непростительно мало внимания. Объяснение переменной на таких ресурсах сводится к определению переменной, после чего идут практические примеры по ее использованию. Не осознав смысла и сути переменной, и сразу перейдя к практическому применению у обучающегося, складывается неверное представление о переменной и от обучающегося можно услышать следующую трактовку инициализации переменной, к примеру «int number =10;» — переменная number равна 10, что является неверным. Но обвинять авторов в непрофессионализме нельзя. Подавляющее большинство из них — это большие профессионалы своего дела, и для них переменная, это как цифры для профессора математики или ноты для великого композитора. Авторы таких работ даже представить себе не могут, что суть и смысл переменной может быть представлена в совершенно неправильном понимании.
Что бы избежать неправильного понимания переменной, мы начнем объяснение с малого. А именно для чего нужна переменная, раскроем ее смысл.
Давайте вспомним первую программу, состоящую из операции Console.WriteLine(); и литерала "Hello World!". Такая программа после запуска будет производить одно действие — выводить сообщение "Hello World!" и ничего больше. Для изменения выводимой строки, придется вносить изменения в программный код, а затем вновь компилировать программу. Конечно же для пользователя это не приемлемо.
Поэтому возникает необходимость изменять значение без изменения программного кода. Выходом из сложившейся ситуации является создание некоего объекта, который будет частью программного кода, и сможет хранить изменяемое значение. К примеру, почтовый ящик в доме. Сам ящик является часть дома, но его содержимое можно изменять, не изменяя сам дом.
В программирование, такой объект(ящиком) называется — переменная. По аналогии с литералом, который не изменяется в ходе выполнения программы, переменная создается именно для хранения изменяемого значения. В этом и есть смысл переменной. Хранить изменяемое значение.
Запустим VS, создадим проект и напишем следующую строку — string text; , здесь слово text — это имя переменной.
Слово string — это тип данных, который указывает с какими характеристиками будет хранится значение. О типах данных поговорим позже. В отличие от литерала, тип которого известен по формату записи, у переменной тип значения неизвестен заранее. Его нужно указать явно. Это связано со принципом следования. При считывании инструкции, создающей переменную, вначале считывается информация о переменной.
Такая операция называется объявлением переменной.
static void Main(string[] args)
{
string text;
}
После объявления переменной доступ к переменной осуществляется по имени переменной без указания типа данных. Если указать тип данных перед именем переменной, то это будет команда на объявление аналогичной переменной, что приведет к ошибке.
Соблюдая формат записи, аналогично литералам, поместим в переменную text, строковое значение, состоящее из различных символов заключенных в двойные кавычки, и выведем на экран, но не литерал, а значение, хранимое в переменной с именем text.
static void Main(string[] args)
{
string text;
text = "Hello World!";
Console.WriteLine(text);
}
Для записи значения(присвоения) используется знак — « = », оператор присваивания. Операция присваивания является операцией над операндами. Оператор « = » берет операнд-значение справа от себя и связывает его с операндом-переменной слева.
В переменной может хранится только одно значение, при записи нового значения в переменную text, старое будет заменено на новое.
Обычно переменные не объявляются, а инициализируются. Инициализация —процесс, при котором переменной сразу присваивается значение.
Добавим в код программы переменную для хранения целочисленного значения. Так как хранение целочисленного значения кардинально отличается от хранения строкового значения, то при объявлении переменной используется другой тип данных — int,с соответствующим форматом записи в виде набора цифр без дробной части.
Формат записи значения очень важен, так как по нему определяется характеристика значения — число это или строка. Попытка, записать в переменную с типом данных int, значение отличное от цифр или в переменную с типом данных string, значение без двойных кавычек, вызовет ошибку.
static void Main(string[] args)
{
int number;
number = 38;
string text = "Христа-Искупителя ";
Console.WriteLine("Высота " + text + number + " м");
}
Как видите, в строке вывода на экран мы использовали литералы и переменные, только в отличие от неизменяемых литералов, при изменении значения в переменной, изменяется и выводимая информация на экран. Знак « + » используется не для сложения, но для склеивания строки. Склеивание строки через знак « + » называется — конкатенацией.
На ваш вопрос: «Но если откомпилировать такую программу, то чем она будет отличаться от программы с литералами? Так же, как и с литералами, без доступа к коду программы, значение переменной изменить невозможно.» Забежим вперед и напишем программу ожидающая ввод с клавиатуры некоторого значения.
static void Main(string[] args)
{
Console.WriteLine("Введите наименование объекта");
string text = Console.ReadLine();
Console.Clear();
Console.WriteLine("Вы ввели имя объекта: " + text);
}
Здесь переменная « text » инициализируется значением введенным с клавиатуры.
В заключение.
Компьютерная программа предназначена для автоматизации вычислительных процессов. Основой таких процессов являются поступившие на вход различные значения. Для хранения таких значений в памяти компьютера создаются места хранения, называемые — переменная. Переменная имеет имя, по которому пользователь получает доступ к этой переменной. Тип данных определяет, с какими характеристиками в переменной может хранится изменяемое значение.
Здесь мы ничего не пишем о типах данных. Тема о типах данных, очень важная и объемная, поэтому будет рассмотрена в следующих лекция. Пока возьмем за правило использовать в программах только целочисленные значения с типом данных intи строковые значения с типом данных string, не забывая формат записи значений.
Для записи в переменную некоторого значения используется оператор « = », который берет операнд-значение справа от себя и связывает его с операндом-переменной слева.
Нередко знак « = », означающий запись значения правого операнда в левый, у обучающегося ассоциируется со знаком равно и тогда вкрадывается мысль, что к примеру, переменная number равна числу 38.
Нет и еще раз нет. Переменная number не равна 38. Переменная вообще не может быть равна хранимому значению, это совершено не сравнимые понятия, такие как пенал и фломастер, телефонная книга и номер телефона, автобус и пассажиры, гараж и автомобиль.
На этом занятие закончено.
Удачи в выполнении практических заданий! Но
Автор считает, что решение практических задач на следующий день, приносит больше пользы, чем решение задач сразу после ознакомления с теорией.
Вы можете самостоятельно найти задачи для закрепления теоретического материала или оценить труд автора и оплатить задачи и ответы к ним. Для связи basicprog@mail.ru.