|
Прошел курс. Получил код Dreamspark. Ввожу код на сайте, пишет: Срок действия этого кода проверки уже истек. Проверьте, правильно ли введен код. У вас осталось две попытки. Вы также можете выбрать другой способ проверки или предоставить соответствующие документы, подтверждающие ваш академический статус.
Как активировать код? |
Типы данных C#
Типы для представления чисел с плавающей точкой (вещественные типы)
| Псевдоним C# | Соответствие CLS | Системный тип | Диапазон | Пояснения |
|---|---|---|---|---|
| float | + | Single | 1.5x10-45 - 3.4x1038 | Знаковое с плавающей точкой 32 бит |
| double | + | Double | 5.0x10-324 - 1.7x10308 | Знаковое с плавающей точкой 64 бит |
Чаще всего используется тип double, поскольку он поддерживается множеством математических функций библиотеки .NET Framework. Большинство математических функций сосредоточено в классе System.Math
using System;
namespace Test
{
// Нахождение радиуса круга по его площади
class FindRadius
{
static void Main()
{
double radius, area = 10.0;
radius = Math.Sqrt(area / Math.PI);
Console.WriteLine("Площадь круга:
{0};", area);
Console.WriteLine("Радиус круга:
{0};", radius);
Console.Read();
}
}
}
Листинг
4.15 .
Пример. Вычисление радиуса круга по его площади
using System;
namespace Test
{
// Использование тригонометрических методов
class Trigonometry
{
static void Main()
{
for(int i = 0; i < 3; i++) // Внешний цикл
{
// alpha - угол в градусах
for(double alpha = 0D; alpha <= 180; alpha = alpha + 10)
{
switch(i + 1)
{
case 1: Console.WriteLine("Sin({0})={1}",
alpha, Math.Sin(alpha / 180 * Math.PI));
break;
case 2: Console.WriteLine("Cos({0})={1}",
alpha, Math.Cos(alpha / 180 * Math.PI));
break;
case 3: Console.WriteLine("Tan({0})={1}",
alpha, Math.Tan(alpha / 180 * Math.PI));
break;
}
}
Console.WriteLine();
}
Console.Read();
}
}
}
Листинг
4.16 .
Пример. Использование тригонометрических функций
Тип decimal
Предназначен для выполнения вычислений, связанных с денежными единицами.
| Псевдоним C# | Соответствие CLS | Системный тип | Диапазон | Пояснения |
|---|---|---|---|---|
| decimal | + | Decimal | 10-28 —1028 | Знаковое 128 бит |
Применение обычной арифметики с плавающей точкой чревато ошибками округления. Во избежании этих ошибок и предназначен тип decimal.
using System;
namespace Test
{
// Использование типа decimal для вычисления скидки
class UseDecimal
{
static void Main()
{
decimal price; // Цена
decimal discount; // Скидка
decimal discounted_price; // Цена со скидкой
// Вычисляем цену со скидкой
price = 19.95M; // Цена товара
discount = 0.15m; // Ставка дисконта равна 15%
discounted_price = price - (price * discount);// Скобки не обязательны
Console.WriteLine("Цена со скидкой: $"
+ discounted_price);
Console.Read();
}
}
}
Листинг
4.17 .
Использование типа decimal для вычисления скидки
using System;
namespace Test
{
/*
* Использование типа decimal для вычисления
* будущей стоимости капиталовложений
*/
class UseDecimal
{
static void Main()
{
decimal amount; // Исходный вклад
decimal rate_of_return; // Норма прибыли
int years; // Количество лет
amount = 1000M;
rate_of_return = .07m;
years = 10;
Console.WriteLine("Исходный вклад:
$" + amount);
Console.WriteLine("Норма прибыли:
" + rate_of_return);
Console.Write("Через " + years +
" лет будет $");
for(int i = 0; i < years; i++)
amount += amount * rate_of_return;
Console.WriteLine(amount);
Console.Read();
}
}
}
Листинг
4.18 .
Пример. Использование типа decimal для расчета прибыли
Символьный тип
В C# исмволы представлются не в однобайтном коде ASCII, а в двухбайтном коде Unicode. Это позволяет представлять алфавиты всех существующих в мире языков. Это 16 - разрядный тип без знака.
| Псевдоним C# | Соответствие CLS | Системный тип | Диапазон | Пояснения |
|---|---|---|---|---|
| char | + | Char | U+0000 - U+FFFF | Для описания только одного символа Unicode 16 бит |
Символьной переменной можно присвоить значение, заключив соответствующий символ в одинарные кавычки. Например
char ch; ch = 'X';
using System;
namespace Test
{
class UseDecimal
{
static void Main()
{
char ch0 = 'П', ch1 = 'р',
ch2 = 'и', ch3 = 'в',
ch4 = 'е', ch5 = 'т';
Console.WriteLine((int)ch0);
Console.WriteLine((int)ch1);
Console.WriteLine((int)ch2);
Console.WriteLine((int)ch3);
Console.WriteLine((int)ch4);
Console.WriteLine((int)ch5 + "\n");
Console.WriteLine(ch0 + ch1 + ch2 + ch3 + ch4 + ch5);
Console.WriteLine();
Console.WriteLine(ch0);
Console.WriteLine(ch1);
Console.WriteLine(ch2);
Console.WriteLine(ch3);
Console.WriteLine(ch4);
Console.WriteLine(ch5 + "\n");
Console.WriteLine("{0}{1}{2}{3}{4}{5}\n",
ch0, ch1, ch2, ch3, ch4, ch5);
string str = Convert.ToString(ch0)
+ Convert.ToString(ch1)
+ Convert.ToString(ch2)
+ Convert.ToString(ch3)
+ Convert.ToString(ch4)
+ Convert.ToString(ch5);
Console.WriteLine(str);
Console.Read();
}
}
}
Листинг
4.19 .
Пример. Использование типа char
Логический тип bool
Тип bool в C# представляет логические значения true или false ( ИСТИНА/ЛОЖЬ ), которые можно использовать в операторах управления (условия, циклы).
using System;
namespace Test
{
class UseBool
{
static void Main()
{
bool logical;
logical = false;
int i;
for(i = 0; i < 2; i++)
{
logical = !logical;
Console.Write("logical={0}: ", logical);
if(logical)
Console.WriteLine("Привет от Иванова!");
else
Console.WriteLine("Привет от Петрова!");
}
Console.WriteLine("10 > 9 равно " + (10 > 9));
Console.Read();
}
}
}
Листинг
4.20 .
Пример. Использование типа bool