Читайте также:
|
|
Полагаем, что некоторое знание языка у нас есть. Текст программного кода в консольном приложении должен размещаться внутри метода Main между фигурными скобками. Наберем в окне файла Program.cs текст. Не рекомендуется копировать приведённый текст - экономия времени (а по сути - лень) может оказать медвежью услугу, потому что при копировании мы не увидим, как среда понимает текст. При наборе разные слова будут окрашиваться разным цветом, а что-то среда будет нам подсказывать, избавляя от лишних ошибок. Итак, внутри метода Main набираем следующий текст:
int a,b,c1; //объявление переменных целого типа
a=Console.ReadLine(); //ввод значения с клавиатуры
b=3; // присваивание
c1=a+b; // вычисление
Console. WriteLine("сумма={0} ",c); //вывод результатов на экран
Разные фрагменты текста будут отображаться разным цветом. Зеленый цвет используется средой программирования для отображения комментариев (пояснений программиста), синий - для служебных слов языка (их компилятор «понимает» только в том смысле, который в них заложен). Например, слово int понимается как указание, что три имени (a, b, c1) - это имена переменных, которые при выполнении программы будут содержать значения целого типа. Голубым цветом отображаются имена классов. Красный цвет - это цвет для отображения строк.
Суть программы, которую вы набрали, достаточно проста. Объявляется, что будет использовано три переменных целого типа. Две из них получают численные значения: значение первой вводится с клавиатуры, а вторая получает значение при выполнении программы путём присваивания. Значение третьей переменной вычисляется как сумма двух других. Полученный результат выводится на экран, после чего программа завершает работу.
Подготовка программы к выполнению
Написать текст программы - это еще не значит, что программа уже создана. Важно написать ее так, чтобы в ней не было ошибок. Можно заподозрить, что в нашей программе есть ошибки. Среда программирования часть программного кода подчеркнула волнистой линией - это и говорит о наличии ошибок. Во второй строке подчеркнут почти весь оператор, в пятой - переменная c. Простейший способ проверить нормальность написанного кода - это попытаться немедленно выполнить программу. Среда программирования перед запуском программы обязательно проверит программу на наличие ошибок и сообщит о них. Но можно попробовать разобраться с ошибками до запуска. Для этого рассмотрим подчеркнутые элементы.
Установим указатель мышки на переменную c в пятой строке текста. На экране появится подсказка: «Элемент 'с' не существует в текущем контексте». Как это понимать? Дело в том, что пятый оператор выдает на экран вычисленное значение из переменной c. Но если внимательно посмотреть на текст программы, то можно увидеть, что в первой строке объявлены для использования переменные a, b и c1. Переменной c среди них нет - её вообще нигде никто не объявлял! Это нарушение замечено средой. После небольшого рассуждения можно понять, как исправить ошибку. Ведь есть переменная c1, которая объявлена и используется в четвертой строке для получения суммы. Видимо, эту переменную и надо использовать в пятой строке. Заменим c на c1.
Ошибка во второй строке идентифицируется более сложно. При наведении указателя на эту строку мы получим значительно больший объем информации, чем в первом случае. Система прокомментирует нам, что собой представляет указанная языковая конструкция и перечислит некоторые особенности её использования. Но в конце этой информации всё-таки также будет описана суть ошибки: «неявное преобразование типа string в int невозможно». В чём тут дело?
Выражение Console.ReadLine() вызывает для выполнения метод ReadLine из класса Console. Этот метод вводит с клавиатуры все символы, которые наберет пользователь до того, как будет нажата клавиша «ENTER». Все набранные символы будут сформированы в одну строку, т. е. значение типа string. Это значение во втором операторе присваивается переменной a. Но переменная a объявлена в программе как переменная типа int, т. е. как целочисленная. Такое присваивание запрещено: нельзя целочисленной переменной присвоить строковое значение. Перед присваиванием должно быть выполнено преобразование. Видимо, программист понадеялся на то, что в системе встроено неявное преобразование (по умолчанию). Система просигналила об обратном: неявное преобразование невозможно. Значит, эту ошибку надо также устранять программисту.
Это сделать несложно, если знать, что в языке имеются соответствующие возможности. В пространстве имен System имеется класс Convert, в котором хранятся различные методы преобразования строковых значений в другие типы данных. Есть метод ToInt32, который как раз и выполняет преобразование строки в целое число. Воспользуемся этим и заменим вторую строку текста на следующую:
a = Convert.ToInt32(Console.ReadLine());
Заметим, что текст больше не подчёркнут. Похоже, что ошибок нет. Можно попытаться выполнить программу.
Выполнение программы
Для выполнения программы воспользуемся комбинацией клавиш «CTRL-F5». Получим черное пустое окно. Это окно, в котором отображаются все результаты выполнения нашей программы. Так как наша программа сделана в виде консольного приложения, то мы видим на экране именно такое окно. Однако, оно пусто, и это не случайно: программа только начала исполнение и ещё не завершилась. Она ждёт. Вспомним, что вторая строка программы - это ввод значения с клавиатуры. Значит, надо это значение ввести. Введем, например, число - 8 и нажмём клавишу «ENTER». Отобразится следующее окно, в котором будет виден результат выполнения оператора ввода, вывода и строка, которая предлагает для окончательного завершения работы программы нажать любую клавишу. Если действительно нажать какую-нибудь клавишу, то чёрное окно закроется. Программная среда при завершении исполнения программы искусственно задержала окно, чтобы пользователь успел увидеть результаты своей работы.
Строка завершения выдается потому, что мы запустили программу из среды программирования. Если бы мы запустили готовый программный файл, то этой строки не было бы. Проверим это. Откроем папку D:\Study\ConsoleApplication1\ ConsoleApplication1\bin\debug.
В этой папке размещена готовая программа ConsoleApplication1 (exe-файл). Попробуем её выполнить. После запуска мы сможем ввести данные, но сразу после этого окно закрывается - настолько быстро она завершает свою работу. Ведь в тексте программы нет никаких задержек. А вот при запуске из среды окно на экране задерживается до нажатия какой-нибудь клавиши.
Нажмите любую клавишу. Работа с программой завершена. Завершите работу с программной средой. Задания для самостоятельной работы
1. При запуске рассмотренного примера работа программы начинается с отображения пустого окна. Пользователь должен сам догадаться, что можно вводить целое значение. Доработайте текст программы. Выдайте на экран поясняющее сообщение. Например, предложите пользователю ввести значение.
2. Разработайте собственный простой проект, сохраните его и продемонстрируйте работу с ним.
Дата добавления: 2015-08-09; просмотров: 125 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Имя и место размещения приложения | | | Создание Windows-приложения |