Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VB - Csharp.docx
Скачиваний:
2
Добавлен:
22.11.2019
Размер:
29.45 Кб
Скачать

С#

2. Які особливості роботи з масивами в мові с#?

Масиви в С # дещо відрізняються від інших С-подібних мов.

Почнемо відразу з прикладів. Приклад перший:

int [] k; / / k - масив

k = new int [3]; / / Визначаємо масив з 3 цілих

k [0] = -5; k [1] -4; k [2] = 55; / / Задаємо елементи масиву

/ / Виводимо третій елемент масиву

Console.WriteLine (k [2]. ToString ());

Сенс наведеного фрагмента ясний з коментарів. Зверніть увагу на деякі особливості.

По-перше, масив визначається саме як

int [] k;

По-друге, так як масив являє собою посилальний об'єкт, то для створення масиву необхідний рядок

k = new int [3];

Саме в ньому ми і визначаємо розмір масиву. Крім того, можливі конструкції виду

int [] k = new int [3];

Елементи масиву можна задавати відразу при оголошенні. Наприклад:

int [] к = {-5, 4, 55};

Зрозуміло, наведені конструкції застосовні не тільки до типу int і не тільки до масиву розміру 3.

У С #, як і в C / C + +, нумерація елементів масиву йде з нуля. Таким чином, у нашому прикладі початковий елемент масиву - це k [0], a останній - k [2]. Елемента k [3], природно, немає.

Тепер переходимо до багатовимірним масивів. Ось так задається двовимірний масив:

int [] k = new int [2, 3];(int [,] k = new int [2, 3])

Зверніть увагу, що пара квадратних дужок тільки одна. У нашому прикладі у масиву 6 (= 2 * 3) елементів (k[0,0] - перший, k [1,2] - останній).

Аналогічно ми можемо задавати багатовимірні масиви. Ось приклад тривимірного масиву:

int [] к = new int [10,10,10];(int [ ,, ] к = new int [10,10,10];)

А ось так можна відразу ініціалізувати багатовимірні масиви:

int [,] k = {{2, -2}, {3, -22}, {0, 4}};

Наведені вище приклади багатовимірних масивів називаються прямокутними. Якщо їх представити у вигляді таблиці (у двовимірному випадку), то масив буде представляти собою прямокутник.

Поряд з прямокутними масивами існують так звані ступінчасті. Ось приклад:

/ / Оголошуємо 2-мірний ступінчастий масив

int [] [] k = new int [2] [];

/ / Оголошуємо 0-й елемент нашого ступеневої масиву

/ / Це знову масив і в ньому 3 елементи

k [0] = new int [3];

/ / Оголошуємо 1-й елемент нашого ступеневої масиву

/ / Це знову масив і в ньому 8 елементів

k [1] = new int [8];

k [1] [7] = 100; / / записуємо 100 в останній елемент масиву

Зверніть увагу, що у східчастих масивах ми задаємо декілька пар квадратних дужок (по розмірності масиву). І точно так само ми що-небудь робимо з елементами масиву - записуємо, читаємо і т. п.

Найважливіша і цікава можливість східчастих масивів - це їх «непрямокутність». Так, у наведеному вище прикладі в першому «рядку» масиву три цілих числа, а в другій - вісім. Часто це виявляється дуже до речі.

3.Розкажіть про методи для введення та виведення даних в мові c#

Оператори введення

Для того щоб отримати дані, що вводяться користувачем вручну (тобто з консолі), застосовуються команди

<Стрічкова змінна> = Console.ReadLine ()

Для того щоб перетворити до потрібного типу даних використовуємо об'єкт Convert

<Змінна цілого типу> = Convert.ToInt32 (<строкою змінна>);

<Змінна дійств типу> = Convert.ToDouble (<строкою змінна>);

<Змінна логічного типу> = Convert.ToBoolean (<строкою змінна>);

<Змінна цілого типу> = Convert.ToByte (<строкою змінна>);

<Змінна символьного типу> = Convert.ToChar (<строкою змінна>);

<Змінна цілого типу> = Convert.ToInt64 (<строкою змінна>);

Приклад

Int32 x; Double y; string s;

s = Console.ReadLine ();

x = Convert.ToInt32 (s);

/ / Без проміжної рядковий змінної

y = Convert.ToDouble (Console.ReadLine ());

Типи вводяться значень повинні збігатися з типами зазначених змінних, інакше виникає помилка. Тому потрібно уважно стежити за правильністю вводяться.

Для того, щоб забезпечити очікування введення будь-якої клавіші в кінці програми використовують

Console.ReadKey ();

Оператори виведення

Для того щоб вивести на екран будь-яке повідомлення, скористайтеся процедурою Console.Write або Console.WriteLine

Перша з них, надрукувавши на екрані все, про що її просили, залишить курсор в кінці виведеної рядки, а друга переведе його в початок наступної строчки.

Console.WriteLine (s) ;/ / змінна

Console.WriteLine (55.3) ;/ / константа

Console.WriteLine (y * 3 +7) ;/ / вираз

Console.Write (z) ;/ / змінна

Console.Write (-5.3) ;/ / константа

Console.Write (i * 3 +7 / j) ;/ / вираз

Щоб при виведенні даних вони не склеювалися, потрібно подбати про прогалини між виведеними змінними, також можна виводити списком кілька змінних:

Console.WriteLine ("Це число А = {0} далі B = {1} і, нарешті їх сума {2}", a, b, a + b);

Для форматування числових результатів можна використовувати метод String.Format або метод Console.Write, що викликає метод String.Format. Формат задається за допомогою рядків формату. Специфікація формату наступна: {N, M: Axx}, де N вказує позицію елемента в списку виводяться змінних (нумерація починається з 0); M - задає ширину області, в яку буде поміщено форматований значення, якщо M відсутня або негативно, значення буде вирівняно вліво, в іншому випадку - вправо; Axx - є необов'язковою рядком форматує кодів, які використовуються для управеніея форматуванням чисел, дати і часу, грошових знаків і т.д.

У наступній таблиці наведено підтримувані рядки стандартних форматів. Рядок формату приймає наступну форму: Axx, де A - описувач формату, а xx - описувач точності. Описувач формату управляє типом форматування, застосовуваним до числовому значенню, а описувач точності управляє кількістю значущих цифр або десяткових знаків форматованого результату.

C або c Валюта

Console.Write ("{0: C}", 2.5); Console.Write ("{0: C}", -2.5); / / $ 2.50 ($ 2.50)

D або d Десятковий формат

Console.Write ("{0: D5}", 25); / / 00025

E або e Інженерний формат

Console.Write ("{0: E}", 250000); / / 2.500000E +005

F або f Формат з фіксованою комою

Console.Write ("{0: F2}", 25); Console.Write ("{0: F0}", 25); / / 25.00 25

G або g Загальний формат

Console.Write ("{0: G}", 2.5); / / 2.5

N або n Числовий формат

Console.Write ("{0: N}", 2500000); / / 2,500,000.00

X або x Шістнадцятковий формат

Console.Write ("{0: X}", 250); Console.Write ("{0: X}", 0xffff); / / FA FFFF

Приклад

Int32 x; Double y; string s;

Console.Write ("Введіть X =");

s = Console.ReadLine ();

x = Convert.ToInt32 (s);

Console.Write ("Введіть Y =");

s = Console.ReadLine ();

y = Convert.ToDouble (s);

Console.WriteLine ("Твір X * Y = {0,9: g}", x * y);

Console.ReadKey ();

Приклад найпростішої програми

string s1;

Console.Write ("Введіть ваше ім'я");

s1 = Console.ReadLine ();

Console.WriteLine ("Ми раді вас вітати, {0: g}, в нашій програмі", s1);

Console.ReadKey ();

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]