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

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

Жанры

Шрифт:

Программа

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

Программа на языке 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. Генералы драконов
Фантастика:
фэнтези
5.00
рейтинг книги
Чужая семья генерала драконов

Золушка вне правил

Шах Ольга
Любовные романы:
любовно-фантастические романы
6.83
рейтинг книги
Золушка вне правил

Невеста снежного демона

Ардова Алиса
Зимний бал в академии
Фантастика:
фэнтези
6.80
рейтинг книги
Невеста снежного демона

Мастер темных Арканов 5

Карелин Сергей Витальевич
5. Мастер темных арканов
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Мастер темных Арканов 5

Идеальный мир для Лекаря 17

Сапфир Олег
17. Лекарь
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 17

Сирота

Ланцов Михаил Алексеевич
1. Помещик
Фантастика:
альтернативная история
5.71
рейтинг книги
Сирота

Герцогиня в ссылке

Нова Юлия
2. Магия стихий
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Герцогиня в ссылке

Идеальный мир для Лекаря 11

Сапфир Олег
11. Лекарь
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 11

Начальник милиции. Книга 5

Дамиров Рафаэль
5. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 5

Товарищ "Чума" 2

lanpirot
2. Товарищ "Чума"
Фантастика:
городское фэнтези
попаданцы
альтернативная история
5.00
рейтинг книги
Товарищ Чума 2

Жена моего брата

Рам Янка
1. Черкасовы-Ольховские
Любовные романы:
современные любовные романы
6.25
рейтинг книги
Жена моего брата

Вонгозеро

Вагнер Яна
1. Вонгозеро
Детективы:
триллеры
9.19
рейтинг книги
Вонгозеро

Газлайтер. Том 5

Володин Григорий
5. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 5

Семь Нагибов на версту

Машуков Тимур
1. Семь, загибов на версту
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Семь Нагибов на версту