Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпори гос.docx
Скачиваний:
21
Добавлен:
13.09.2019
Размер:
2.93 Mб
Скачать

49.3. Матриця лінійного оператора. Приклади.

Нехай А – деякий Л.О. у просторі Vn. Виберемо у просторі Vn довільний базис . Оператор А відображає вектори цього базису в деякі вектори . Кожен вектор однозначно виражається через вектори базису .

Нехай

(5)

Складемо з коефіцієнтів аik матрицю

Рядками матриці А є координатні рядки векторів (і= 1,2,...,n) в базисі .

Оскільки координатні рядки векторів визначені однозначно, то і матриця А визначається оператором А однозначно. Матрицю А назвемо матрицею Л.О. А в базисі і навпаки, якщо задана квадратна матриця А (n-го порядку), то в базисі

однозначно задається оператор А.

Дійсно, знаючи матрицю А знайдемо спочатку вектори

Далі, в силу теореми 2, визначимо Л.О. А', який вектори відображає у вектори . Цей оператор буде єдиним, а тому і матрицею цього оператора буде матриця А.

Отже, якщо у векторному просторі Vn вибрати фіксований базис, то між Л.О. і квадратними матрицями n-го порядку існує взаємооднозначна відповідність.

Приклад 2. Візьмемо за базис простору W3 систему одиничних векторів, напрямлених по осях координат. Тоді, . А тому матриця оператора А буде мати вигляд

Канонічне рівняння еліпса запишемо в такому вигляді:

.

Очевидно, що для будь-яких х і у маємо:

Аналогічно, ; .

На основі цього робимо висновок, що еліпс має центр симетрії в початку координат, а вісі х і у є його осями симетрії.

Канонічне рівняння еліпса можна записати в еквівалентній формі

(6)

Оскільки еліпс симетричний відносно координатних осей, то для вивчення його форми досить розглянути частину, розміщену в першому квадранті. Для точок першого квадранта і тому (6)матиме вигляд

З цієї формули видно, що при х=0 координата у точки еліпса має найбільше значення x=b.

При зростанні х від 0 до а підкореневий вираз спадає, отже, спадає від bдо нуля і ордината у.

При подальшому зростанні х, тобто при x>a, підкореневий вираз стане від’ємним, і ордината у не буде мати дійсних значень.

Це означає, що на еліпсі немає точок з абсцисою, більшою а. Оскільки еліпс симетричний відносно координатних осей х і у, то за допомогою симетрії можна встановити його вигляд повністю (рис.2).

Довжини 2а і 2b (a>b) називають відповідно великою і малою віссю, а числа a i bвеликою і малою півосями еліпса.

Рис.2.

Точки (-а, 0), (а, 0),(0, -b), (0, b) називають вершинами еліпса.

Вони є точками перетину еліпса з осями.

2. Опис рядків у мові програмування с. Операції над рядками, функції для обробки рядків Рядки

В мові Сі немає змінних рядкового типу. Відомо, що рядкова константа з програми на Сі зберігається в пам’яті ЕОМ як послідовність символів, що завершується кодом символу ’\0’. Цей символ відсутній у вихідному тексті програми і автоматично додається до коду кожної рядкової константи компілятором. Рядкова константа може бути використана безпосередньо у відповідних виразах.

Рядок – це нуль або більше символів, заключених в подвійні лапки. Наприклад, ”РЯДОК”. Лапки не входять в рядок. Фактично рядкова константа – це масив символів. У внутрішньому представленні рядка в кінці автоматично поміщається нуль-символ або нуль-термінатор (‘\0’), тому для рядка потрібно пам’яті на 1 байт більше, ніж кількість символів між подвійними лапками.

Символьна константа і рядок, що містить 1 байт, не одне і те ж. Тобто, ‘x’ != “x”. Тут “x” – це масив символів, який містить один символ (х) та ‘\0’, ‘x’ – це ціле значення, яке рівне коду літери х з таблиці ASCII.

При ініціалізації масиву символів можна використовувати рядкову константу:

Char s[6] = “Hello”; // ініціалізуємо змінну s як масив з 6 елементів (1 для нуль-символа ‘\0’).

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

Якщо задається розмір масиву, а рядок довший, то видається повідомлення про помилку. Якщо рядок коротший, то зайві елементи масиву містять «сміття».

Особливий випадок – ініціалізація двомірного масива рядками. Опишемо двомірний масив string, який складається з трьох рядків по п’ятдесят байт. Рядки ініціалізуються символами. В кінці кожного рядка ставиться символ ‘\0’:

char string [3][50] = { “Список”, “Студентів”, “групи” };

printf(“%c”, string[2][1]); // друкується символ ’р’

В рядкових, як і в символьних константах, можуть використовуватися спеціальні управляючі знаки типу «\n», «\t», «\f» та інші.

При написанні програм зазвичай потрібно проводити різні маніпуляції з рядками: копіювати та переносити з одного місця пам’яті в інше, перевіряти наявність в рядках певних підпослідовностей символів, зчіпляти, обрізати рядки і таке інше. Мова Сі містить велику колекцію функцій для роботи з рядками.