Чтение онлайн

на главную - закладки

Жанры

Шрифт:

Программа

Структура программы

Программа на языке C# представляет собой объект Program.

В листинге 1 приведено объявление класса Program, сгенерированное средой разработки как результат активизации процесса создания нового консольного приложения.

Листинг 1.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

}

}

}

Изначально

класс Program содержит один единственный метод Main. Именно этот метод выполняется при запуске программы. Поэтому, в простейшем случае, инструкции, реализующие алгоритм программы, надо поместить в метод Main, между фигурными скобками, следующими за закрывающей скобкой, ограничивающей список параметров метода Main.

В листинге 2 приведено объявление класса Program приложения расчета среднего веса предмета (в дальнейшем, для краткости, вместо слов “объявление класса Program”, будем говорить “программа”).

Листинг 2. Средний вес

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

double w = 0.0; // вес помидоров

int k = 0; // количество помидоров

double m = 0.0; // средний вес одного помидора

string st = "";

Console.Write("Общий вес (кг.) >");

st = Console.ReadLine;

w = System.Convert.ToDouble(st);

Console.Write("Количество (шт.) >");

st = Console.ReadLine;

k = System.Convert.ToInt32(st);

Console.WriteLine;

m = w / k;

String res = "Общий вес: " + w.ToString + " кг. \n" +

"Количество: " + k.ToString + " шт.\n" +

"–\n" +

"Средний вес: " + m.ToString + " кг.\n\n";

Console.WriteLine(res);

Console.Write("Press any key to continue…");

int ch = Console.Read;

}

}

}

На примере программы Средний вес кратко рассмотрим некоторые инструкции языка C#.

Как было сказано, в простейшем случае, инструкции, реализующие алгоритм программы, находятся в методе Main. Инструкция

double w = 0.0;

это объявление переменной w. Слово double, стоящее перед именем переменной, показывает, что переменная w вещественная. После имени переменной стоит символ “присвоить” (в математике он называется “равно”) за которым следует вещественная константа 0.0 – ноль (черточка внутри овала позволяет

различать букву О и цифру ноль). Это показывает, что переменной w присваивается начальное значение. Символ “точка с запятой” отмечает конец инструкции объявления переменной. Далее, одна за другой, следуют две наклонные черты, которые отмечают начало однострочного комментария, поясняющего, в рассматриваемом случае, назначение переменной w.

В следующей строке аналогичным образом объявляется целая переменная k (int – сокращение от integer, целое). Переменной k также присваивается начальное значение, которое задается целой константой.

Далее следуют объявления вещественной переменной m и строковой переменной st. Начальным значением переменной st является “пустая” (не содержащая ни одного символа), строка, т.к. после символа “присвоить” указана строковая константа, в которой между первой и второй двойными кавычками нет ни одного символа.

Следует обратить внимание, инструкции объявления переменных не являются выполняемыми, они только сообщают компилятору информацию о том, что идентификаторы, указанные в этих инструкциях являются именами переменных.

Первой выполняемой инструкцией программы является инструкция

Console.Write("Общий вес (кг.) >");

Не трудно догадаться, что она выводит на консоль, т.е. в окно, в котором работает программа, текст Общий вес (кг.) > и тем самым показывает пользователю, какую информацию он должен ввести.

Далее следует инструкция

st = Console.ReadLine;

В результате ее выполнения в переменную st записывается значение метода ReadLine – строка символов, которую пользователь набрал на клавиатуре. Надо понимать, что метод ReadLine возвращает именно строку символов, причем, даже в том случае, если строка будет содержать только цифры, все равно это строка, а не число.

Следующая инструкция

w = System.Convert.ToDouble(st);

присваивает значение переменной w, в качестве которого используется значение метода ToDouble, который преобразует значение строковой переменной st (в ней находится строка, введенная пользователем) в соответствующее вещественное число типа double. Обратите внимание, метод ToDouble вернет значение только в том случае, если строка, указанная в качестве его параметра, содержит правильное изображение вещественного числа. Правильной строкой для метода ToDouble является непустая строка, состоящая только из цифр (перед первой цифрой может находиться минус) и содержащая правильный десятичный разделитель – запятую (при стандартной для России настройке Windows).

Следующие три инструкции

Console.Write("Количество (шт.) >");

st = Console.ReadLine;

k = System.Convert.ToInt32(st);

обеспечивают ввод значения переменной k. Так как переменная k целого типа, то для преобразования строки, введенной пользователем, в целое значение используется метод ToInt32. Метод ToInt32 вернет значение только в том случае, если строка, указанная в качестве его параметра, содержит правильное изображение целого числа. Правильной строкой для метода ToInt32 является непустая строка, состоящая только из цифр (перед первой цифрой может находиться минус).

Поделиться:
Популярные книги

Жена проклятого некроманта

Рахманова Диана
Фантастика:
фэнтези
6.60
рейтинг книги
Жена проклятого некроманта

Сын Тишайшего

Яманов Александр
1. Царь Федя
Фантастика:
попаданцы
альтернативная история
фэнтези
5.20
рейтинг книги
Сын Тишайшего

Демон

Парсиев Дмитрий
2. История одного эволюционера
Фантастика:
рпг
постапокалипсис
5.00
рейтинг книги
Демон

30 сребреников

Распопов Дмитрий Викторович
1. 30 сребреников
Фантастика:
попаданцы
альтернативная история
фэнтези
фантастика: прочее
5.00
рейтинг книги
30 сребреников

Небо в огне. Штурмовик из будущего

Политов Дмитрий Валерьевич
Военно-историческая фантастика
Фантастика:
боевая фантастика
7.42
рейтинг книги
Небо в огне. Штурмовик из будущего

Осознание. Пятый пояс

Игнатов Михаил Павлович
14. Путь
Фантастика:
героическая фантастика
5.00
рейтинг книги
Осознание. Пятый пояс

Камень

Минин Станислав
1. Камень
Фантастика:
боевая фантастика
6.80
рейтинг книги
Камень

Блокада. Знаменитый роман-эпопея в одном томе

Чаковский Александр Борисович
Проза:
военная проза
7.00
рейтинг книги
Блокада. Знаменитый роман-эпопея в одном томе

Цикл "Отмороженный". Компиляция. Книги 1-14

Гарцевич Евгений Александрович
Отмороженный
Фантастика:
боевая фантастика
рпг
постапокалипсис
5.00
рейтинг книги
Цикл Отмороженный. Компиляция. Книги 1-14

Книга 4. Игра Кота

Прокофьев Роман Юрьевич
4. ОДИН ИЗ СЕМИ
Фантастика:
фэнтези
боевая фантастика
рпг
6.68
рейтинг книги
Книга 4. Игра Кота

Мастер 2

Чащин Валерий
2. Мастер
Фантастика:
фэнтези
городское фэнтези
попаданцы
технофэнтези
4.50
рейтинг книги
Мастер 2

Новый Рал 2

Северный Лис
2. Рал!
Фантастика:
фэнтези
7.62
рейтинг книги
Новый Рал 2

Низший 2

Михайлов Дем Алексеевич
2. Низший!
Фантастика:
боевая фантастика
7.07
рейтинг книги
Низший 2

Под маской, или Страшилка в академии магии

Цвик Катерина Александровна
Фантастика:
юмористическая фантастика
7.78
рейтинг книги
Под маской, или Страшилка в академии магии