Алгоритмізація та програмування

Сутність програмування, мислення і властивості програміста. Поняття та види запису алгоритмів. Основні алгоритмічні структури, робота з векторами і матрицями в програмуванні. Пристрої виведення інформації, правила запису алгоритмів для комп'ютерів.

Рубрика Программирование, компьютеры и кибернетика
Вид курс лекций
Язык украинский
Дата добавления 21.07.2017
Размер файла 1,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

У формальному записі алгоритму можна використовувати тільки ті команди, які входять в СКІ виконавця. Крім того, треба дотримуватися спеціальних правил оформлення, які дозволять виконавцю розпізнати команди і визначити послідовність їх виконання.

/* Це назва алгоритму*/

/* Ця дужка позначає початок алгоритму*/

посадити ріпку/* команда закінчується знаком

;*/

виростити ріпку;

намагатися витягти ріпку;

покликати Бабку; намагатися витягти ріпку;

покликати Внучку; намагатися витягти ріпку;

покликати Жучку; намагатися витягти ріпку;

покликати Кішку; намагатися витягти ріпку;

покликати Мишку; витягнути ріпку;

/* Тут алгоритм закінчується */

Виконавцем для цього алгоритму є дід - саме він повинен виконувати ці команди.

Правила запису алгоритмів для комп'ютерів

Алгоритм можна записати різними способами і навіть на різних мовах. Хоча при цьому виконавець може, звичайно, їх не зрозуміти. Ви знаєте, що є спеціальні види виконавців алгоритмів - комп'ютери. Вони виконують програми.

Програма - це алгоритм, записаний у формі, зрозумілій комп'ютеру.

Існують спецяльні правила запису програм для комп'ютерів. На малюнку вгорі сторінки їх характерні елементи виділені в рамках:

1.будь-який алгоритм має назву;

2.алгоритм починається з відкриваючої фігурної дужки "{" і закінчується закриваючою фігурною дужкою "}"; команди, розташовані між цими дужками, називаються тілом алгоритму;

3. в алгоритм можуть входити тільки ті команди, які є в СКІ виконавця;

4. кожна команда закінчується знаком ";", який позначає кінець команди;

5.для того, щоб нам було легше розбиратися в програмах, використовують коментарі - текстові пояснення, які починаються знаками / * і закінчуються знаками * /; виконавець не звертає уваги на коментарі в алгоритмі.

Незалежно від того, на якій мові програмування буде написана програма, алгоритм розв'язання будь-якої задачі на ЕОМ може бути складений з команд:

* проходження, включає в себе:

* присвоювання;

* введення;

* висновок;

* цикл;

* розгалуження;

* звернення до допоміжного алгоритму.

Практика.

Дано три цілих числа: A, B, C. Перевірити істинність висловлювання: «Справедливо подвійне нерівність A <B <C».

Дано три цілих числа: A, B, C. Перевірити істинність висловлювання: «Рівно два з чисел A, B, C є позитивними».

Дано два числа. Вивести більше з них.

Дано три числа. Знайти суму двох найбільших з них.

Лекція 4. "Формальне представлення алгоритмічних структур, ч.2"

Що таке цикл.

Часто виконавцю треба виконати якусь послідовність команд кілька разів. Наприклад, у задачах, подібних For 1 необхідно вивести кілька разів на екран певне число К.

Якщо ці команди треба повторити заздалегідь відоме програмісту число разів (наприклад тільки 7 разів), то можна легко 7 разів написати однакові команди виведення. Але уявіть, що треба зробити однакові операції 1000 або 20000 разів! Крім того існують ситуації коли ми незнаємо заздалегідь скільки разів необхідно виконати ту чи іншу команду, а знаємо тільки умову по якій необхідно закінчити роботу. У програмуванні в таких випадках використовується спеціальна команда (оператор циклу), яка говорить виконавцю, що якусь частину програми треба зробити кілька разів.

Цикл - це багаторазове повторення однакових дій

Тіло циклу - це команди, які виконуються декілька разів.

Крок циклу (Ітерація) - це однократне виконання тіла циклу.

Цикл з умовою

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

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

Для цієї мети служить спеціальний вид циклу - цикл поки (або while, від англійського while - поки). Такий вид циклу називається циклом з умовою, оскільки він закінчується, коли порушується умова в заголовку циклу.

Правило використання циклу поки

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

Оператор циклу починаєтся заголовком циклу - ключовим словом поки, за яким у дужках вказується логічна команда - умова, при якій виконується цикл.

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

Умова перевіряється напочатку циклу, тобто якщо перед виконанням циклу умова помилкова, то цикл не виконається жодного разу.

У циклі виконуються всі оператори, укладені у фігурні дужки; Якщо тіло циклу включає всього один оператор, дужки можна не ставити.

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

Приклад. При такій програмі цикл не виконається жодного разу, так як, умова не виконується.

Main {

i=5;

while (i==0) {

i=i+1;

}

}

Важливо пам'ятати, що умова не перевіряється всередині тіла циклу, а тільки тоді, коли виконується команда в заголовку циклу.

З циклом поки пов'язане одна з найбільш неприємних помилок програмістів - зациклення (вічний цикл). Воно відбувається в тих випадках, коли умова в заголовку циклу поки ніколи не стає помилковою.

Приклад. Ця програма призводить до зациклення, так як умова виконується завжди.

main {

i=5;

while (i==5) {

printf(“%d”,i);

}

}

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

Приклад. Вивести N раз число K.

For1 {

введення N, K;

i=0;

поки (i<N) {

виведення (K);

i=i+1;

}

}

Нерідкодля вирішення завдань доводитися використовувати вкладені цикли.

Вкладений цикл - це такий цикл, який знаходиться всередині іншого циклу.

Цикл з параметром

Для спрощення виду програми при вирішенні завдань і збільшення надійність коду використовується модифікований вид циклу - так званий цикл з параметром або з автоінкрементом. Справа в тому, що в більшості циклів, перебираються деякі елементи - ряди чисел, множини, масиви і т.д. При цьому існує ймовірність того, що програміст забуде або переплутає присвоєння початкового значення змінної-індексом (i = 0;) або збільше її в тілі циклу (i = i +1;). Щоб зосередити всі операції з цієї змінної i (вона називається параметром циклу) в одному місці, використовують третій вид циклу, який так і називається - цикл для або for (від англійського "??для"), який дозволяє замінити цикл поки.

for (i = 0; i <n; i = i +1) {

}

Як видно з цієї програми, всі операції зі змінною тепер згруповані в заголовку циклу for між круглими дужками. Три частини відділяються знаком «;», так само як і кінець команди:

початкова умоваi=1 виконується один раз перед початком циклу;

Умова продовженняi<nговорить про те, за якої умови цикл буде виконуватися (якщо в початку ця умова невірна, то цикл не виконається жодного разу);

Зміна змінної циклуi=i+1 - цей оператор виконується кожен раз в кінці чергового проходу тіла циклу.

Завдання

Відповідність між блок-схемами, алгоритмічною мовою,і лексичними конструкціями С.

Поки<умова >роби

<дію>(Блок команд)

кц;

while(умова)

{

<дія>

}

Делай

<дія> (Блок команд)

поки<умова>

do

{

<дія>

}

while(умова);

Дляi=n1 доn2 черезh

<дія> (Блок команд)

кц;

for (i=n1;i<=n2;i+=h)

{

<дія>

}

1. Поляков К. Алгоритми і виконавці, 1992-2010

2. Іванова Г.С. Основи програмування, 2002.

Практика.

Дано цілі числа K і N (N> 0). Вивести N раз число K.

Дано два цілих числа A та B (A <B). Вивести в порядку зростання всі цілі числа, розташовані між A і B (включаючи самі числа A і B), а

також кількість N цих чисел.

Дано ціле число N (> 0). Знайти значення виразу

1.1-1.2 +1.3 - ...

Практика. "Методологія вирішення задач з циклами"

Дано дійсне число A і ціле число N (> 0). використовуючи один цикл, знайтисуму

1 + A + A2 + A3 + ... + AN.

Дано ціле число N (> 0). Якщо воно є ступенем числа 3, то вивести TRUE, якщо не є - вивести FALSE.

Дано набір ненульових цілих чисел; ознака його завершення - число 0. Вивести суму всіх позитивних парних чисел з даного набору. Якщо потрібні числа в наборі відсутні, то вивести 0.

Лекція 5. "Масиви"

Завдання

Дано набір з N цілих чисел. Знайти мінімальний елемент в наборі.

Розв'язок на псевдокоді.

{

введення (N);

введення (А);

min = A; i = 0;

while (i <N) {

введення (A);

if (A <min) {min = A;}

i + +;

}

}

Питання:

- Який з рівних мінімальних елементів буде знайдений? (Перший)

- А як знайти останній? (Змінити на A <= min)

- А як вивести всі елементи набору без найменшого?

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

Як ви вже знаєте, ваші програми під час виконання зберігають інформацію в змінних. До цих пір кожна змінна в програмі зберігала тільки одне значення в кожен момент часу. Однак у більшості випадків програмами необхідно зберігати безліч значень, наприклад 100 назв книг або N імен файлів. Якщо вашим програмам необхідно зберігати кілька значень, вони повинні використовувати спеціальну структуру даних, звану масивом. Для оголошення масиву необхідно вказати ім'я, тип масиву та кількість значень, які масив буде зберігати.

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

При оголошенні масиву ви повинні вказати тип значень, що зберігаються в масиві, а також кількість значень (званих елементами масиву).

Всі елементи всередині масиву повинні бути одного і того ж типу, наприклад, int, float або char.

Іншими словами, масив - це пронумерована послідовність величин однакового типу, що позначається одним ім'ям. Елементи масиву розташовуються в послідовних комірках пам'яті, позначаються ім'ям масиву та індексом. Кожне із значень, складових масива, називається його компонентом (або елементом масиву). [2]

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

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

При оголошенні масиву програми можуть використовувати оператор присвоєння для ініціалізації елементів масиву.

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

Програми широко використовують масиви.

Оголошення змінної масиву

Масив являє собою змінну, яка здатна зберігати одне або кілька значень. Подібно змінним,яка використовує нащі програмами досі, масив повинен мати тип (наприклад, inl, char або float) і унікальне ім'я. На додаток до цього вам слід вказати кількість значень, які масив буде зберігати. Все зберігаються в масиві значення повинні бути одного і того ж типу. Іншими словами, ваша програма не може помістити значення типу float, char і long в один і той же масив. Наступне оголошення створює масив з ім'ям test_scores, який може вміщати 100 цілих значень для тестових очок:

int test_scores [100]; / / ------> Розмір масиву

Коли компілятор зустрічає оголошення цієї змінної, він розподілить достатньо пам'яті для зберігання 100 значень типу int. Значення, які у масиві, називаються елементами масиву.

Масиви зберігають кілька значень одного і того ж типу

В міру ускладнення вашим програмам потрібно працювати з декількома значеннями одного і того ж типу. Наприклад, програми можуть зберігати вік 100 службовців або вартість 25 акцій. Замість того щоб змушувати програму працювати з 100 або з 25 змінними з унікальними іменами, C дозволяє вам визначити одну змінну - масив -, яка може зберігати декілька пов'язаних значень.

Для оголошення масиву ви повинні вказати тип і унікальне ім'я масиву, а також кількість елементів, які буде містити масив. Наприклад, наступні оператори оголошують три різних масивів:

float part_cost [50];

int employee_age [100];

float stock_prices [25];

Створення масиву. Наступна програма ARRAY. CPP створює масив з ім'ям values, який вміщує п'ять цілочисельних значень. Далі програма присвоює елементам значення 100, 200, 300, 400 і 500:

void main (void)

{

int values ??[5]; / / Оголошення масиву

values ??[0] = 100;

values ??[1] = 200;

values ??[2] = 300;

values ??[3] = 400;

values ??[4] = 500;

}

Як бачите, програма присвоює перше значення елементу 0 (values ??[0]). Вона також присвоює останнє значення елементу 4 (розмір Масиву (5) мінус 1).

Використання індексу для звернення до елементів масиву

Як ви вже знаєте, масив дозволяє вашим програмам зберігати кілька значень в одній і тій же змінній. Для звернення до певних значень, що зберігаються в масиві, використовуйте значення індексу, яке вказує на потрібний елемент. Наприклад, для звернення до першого елементу масиву test_scores ви повинні використовувати значення індексу 0. Для звернення до другого елементу використовуйте індекс 1. Подібно до цього, для звернення до третього елементу використовуйте індекс 2. Як показано на рис. 16.1, перший елемент масиву завжди має індекс 0, а значення індексу останнього елемента на одиницю менше розміру масиву:

Важливо пам'ятати, що С завжди використовує 0 для індексу першого елемента масиву, а індекс останнього елемента на одиницю менше розміру масиву.

Масив дозволяє вашим програмам зберігати кілька значень всередині однієї і тієї ж змінної. Для звернення до певного значення всередині масиву програми використовують індекс. Кажучи коротко, значення індексу вказує необхідний елемент масиву. Всі масиви С починаються з елемента з індексом 0. Наприклад, наступний оператор присвоює значення 100 першому елементу масиву з ім'ям scores:

scores [0] = 100;

Коли ваша програма оголошує масив, вона вказує кількість елементів, які масив може зберігати. Наприклад, наступний оператор оголошує масив, здатний зберігати 100 значень типу int.

В даному випадку масив являє собою елементи від scores [0] до scores [99].

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

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

Використання індексної змінної

Якщо ваші програми використовують масив, звичайною операцією є використання індексної змінної для звернення до елементів масиву. Наприклад, припустимо, що змінна i містить значення 3, наступний оператор присвоює значення 400 елементу values ??[3J:

values ??[i] = 400;

Приклад.

int Ar [4];

i = 2;

Ar [0] = 1; Ar [1] = Ar [0];

Ar [2] = 3;

Ar [0 +3] = 7;

Ar [i] = Ar [0] +2;

Ar [i] = i-Ar [i-1];

i = i-1;

Ar [i] = Ar [i] + Ar [i + +];

if (Ar [i-1]> 0) {Ar [Ar [i-2]] = Ar [i-1] + Ar [Ar [i]] + i * 2;}

виведення і ініціалізація

Наступна програма використовує індексну змінну i всередині циклу для виведення елементів масиву. Змінна i ініціалізується нулем, так що програма може звертатися до елементу values ??[0]. Цикл завершується, коли i більше 4 (останній елемент масиву):

# Include <stdlib.h>

# Include <stdio.h>

# Include <conio.h>;

void main (void)

{

int values ??[5]; / / Оголошення масиву int i;

values ??[0] = 100;

values ??[1] = 200;

values ??[2] = 300;

values ??[3] = 400;

values ??[4] = 500;

printf ("Масив містить наступні значення");

i = 0;

while (i <5) {

printf ("% d \ n", values ??[i]);

i + +;

}

}

Кожен раз, коли цикл for збільшує змінну i, програма може звернутися до наступного елементу масиву. Експериментуйте з цією програмою, змінюючи цикл for наступним чином:

i = 4;

while (i> = 0) {

printf ("% d \ n", values ??[i]);

i -;

}

У даному випадку програма буде виводити елементи масиву від більшого до меншого. [1]

Якщо за кожним елементом масиву закріплений лише один його порядковий номер, то такий масив називається лінійним. Взагалі кількість індексів елементів масиву визначає розмірність масиву. За цьою ознакою масиви поділяються на одномірні (лінійні), двовимірні, тривимірні і т.д.

Приклад: числова послідовність парних натуральних чисел 2, 4, 6, ..., N являє собою лінійний масив, елементи якого можна позначити А [1] = 2, А [2] = 4, А [3] = 6, .. ., А [К] = 2 * (К +1), де К - номер елемента, а 2, 4, 6, ..., N - значення. Індекс (порядковий номер елемента) записується у квадратних дужках після імені масиву.

Наприклад, A [7] - сьомий елемент масиву А; D [6] - шостий елемент масиву D.

Введення елементів.

# include <stdio.h>;

# include <conio.h>;

int A [10000], i, n;

void main (void) {

scanf ("% i", & n);

while (i <n)

{

printf ("Enter A [% d]", i);

scanf ("% d", & A [i]);

printf ("\ n");

i + +;

}

}

Практика

Дано масив A розміру N. Вивести спочатку його елементи з парними номерами (в порядку зростання номерів), а потім - елементи з непарними номерами (також в порядку зростання номерів):

A2, A4, A6, ...

A1, A3, A5, ...

Умовний оператор не використовувати.

Дано ціле число N і набір з N чисел. Знайти мінімальний і максимальний з елементів даного набору і вивести їх в зазначеному порядку.

Дано дійсне число B, ціле число N і набір з N дійсних чисел, впорядкованих за зростанням. Вивести елементи набору разом з числом B, зберігаючи впорядкованість виведених чисел.

Дан масив розміру N. Знайти кількість ділянок, на яких його елементи зростають.

Типи данних - це ті значення які можна записати у змінну.

Змінна - це комірка в якій є інформація.

Тип данних - це діапазон значень, який можна зберігати в змінній.

Підпрограма - виконує окрему особливу задачу, отримує при цьому з основної програми аргументи, та повертає в основну чи головну програму тільки один результат.

Компоненти обчислювального пристрія

1. Введення

2. Виведення

3. Системний блок

4. Периферійні

Склад системного блоку:

1. Схеми що керують роботою комп'ютера та виконують обчислювальну інформацію.

2. Накопичувачі інформації.( пам'ять, карта пам'яті: кеш, флеш, оперативна).

3. Блок живлення: частота, звужуваннярізної гармоніки, різний видживлення.

4. Допоміжні пристрої: USB забеспечує з Wi-Fi.

Головним елементом що обчислює є мікропроцесор. До складу якого входить:

1. Пристрій керування

2. Арифметико-логічний пристрій

3. Мікропроцесорна пам'ять

4. Інтерфейсна система

Параметри мікропроцесора:

1. Об'єм пам'яті

2. Тактова частота

3. Формфактор

4. Розрядка

5. Напруга живлення

6. Напруга

Системна шина - основна інтерфейс на система, що забезпечує сполучення зв'язка між усіма частинами.

Склад:

1. Шина адресу - призначена для передачі адресу, комірок пам'яті.

2. Шина данних

3. Шина інструкції

4. Шина живлення

Пам'ять:

1. Регістри

2. Кеш

3. Оперативна пам'ять

Іспит

Місячна оцінка знань і умінь виставляється на підставі поточних оцінок, іспит в перший місяць не проводитиметься

В кінці місяця студенти повинні знати:

- Призначення, застосування і способи графічного опису базових алгоритмічних структур (слідування, розгалуження, цикл);

- Структуру та основні частини С-програми.

Вміти розв'язувати задачі:

- Коректної графічної побудови блок-схем по заданій умові;

- Завдання на розгалуження і цикли

- Створення вектора за певним законом;

Лекція 6. "Основи мови С"

Пристрої виведення інформації:

1. Монітор

2. Принтер

Монітори:

Монітомр (monitor -- слідкувати) або дисплей (display -- відображувати) -- електронний пристрій для відображення інформації. Сучасні комп'ютерні монітори бувають кількох типів:

· на основі електронно-променевої трубки (CRT).

· рідкокристалічні (LCD, TFT як підвид LCD)

· плазмові

· проекційні

· OLED-монітори

Плазмові і проекційні монітори використовують там, де потрібен великий розмір екрану (діагональ метр і більше).

Характеристики моніторів

· Розмір екрану -- визначається довжиною діагоналі (традиційно вимірюється в дюймах)

· Співвідношення сторін екрану -- стандартний (4:3) та широкоформатний (16:9, 16:10)

· Роздільність дисплею -- кількість пікселів по вертикалі та горизонталі

· Глибина кольору -- кількість біт на кодування одного пікселя (від монохромного (1 біт) до 32-бітного)

· Розмір зерна (для CRT) чи пікселя (для LCD)

· Частота оновлення зображення (виміруюється в герцах, для LCD практично однакова)

· Швидкість відклику пікселів (не для всіх типів моніторів, у LCD, як правило, суттєво нижча ніж у CRT)

· Максимальний кут огляду -- максимальний кут під яким не виникає суттєвого погіршення якості зображення (актуально для LCD)

Терміни монітор та дисплей -- дещо відмінні. Дисплей, як пристрій для відображення інформації, має ширше застосування, наприклад, дисплей мобільного телефону, а термін монітор пов'язується з комп'ютером або телеекраном дистанційного спостереження[джерело не вказано 297 днів].

Без можливості бачити результати своєї роботи, персональний комп'ютер став би марним інструментом. Необхідно яким-небудь чином спостерігати за сигналами комп'ютерної системи, щоб знати, чим вона займається в цей час. Сьогодні реалізацією подібного роду функцій займається відеосистема. Стандартним пристроєм виводу інформації, якому вже десятки років, є монітор.

Монітори, побудовані на електронно-променевих трубках (ЕПТ), активно витісняються новим поколінням рідкокристалічних моніторів, зручнішим і економнішим.

Екрани LCD (Liquid Crystal Display, рідкокристалічні монітори) зроблені з речовини (цианофеніл), що перебуває в рідкому стані, але при цьому має деякі властивості, притаманні кристалічним тілам. Фактично це рідина з анізотропними властивостями (зокрема, оптичними), зв'язаних з упорядкованістю орієнтації її молекул.

Монітори з електронно-променевою трубкою (CRT Cathode Ray Tube)

Монітор з електронно-променевою трубкою є подібним до телевізора. Основною складовою є вакуумна запаяна трубка. Передня частина трубки, яку бачить користувач покрита прошарком люмінофору - спеціальною речовиною, що здатна світитися. В задній частині трубки (горловині) містяться 3 електронні пушки, які при нагріванні випромінюють потоки електронів. Електронні промені пришвидшуються за допомогою спеціальної системи, проходять скрізь металеву сітку і попадають на люмінофорове покриття екрану.

Люмінофорове покриття складається з точок, що містять 3 складові RGB - червону, зелену та синю (Red, Green, Blue).

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

Сполучення трьох базових кольорів в різних пропорціях надає до 16 мільйонів відтінків. Якщо всі складові мають максимальну інтенсивність світіння - утворюється білий колір, якщо нульову інтенсивність - чорний колір.

Колірна схема RGB використовується для формування кольорів у пристроях, що випромінюють світло.

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

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

Частоту проходження променів (частоту поновлення випромінювання екрану) називають частотою розгортки, вона вимірюється в Герцах. В сучасних моніторах цей показник є в межах 100-180 Гц, тобто промені пробігають весь екран 100-180 разів за секунду.

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

Основні характеристики електропроміневих моніторів

Розмір екрану. Вимірюється по діагоналі екрану у дюймах. Самими поширеними є розміри 17, 19 та 21 дюймів. Чим більший розмір екрану, тим дорожчий монітор.

Розмір зерна. Це мінімальна точка екрану (яка складається з трьох колірних складових), що має свій колір та яскравість. В сучасних моніторах цей показник складає 0,2-0,24 мм.

Роздільна здатність екрану. Залежить від розміру екрану і вказує скільки точок по горизонталі та вертикалі монітор здатен відтворити чітко.

Для сучасних моніторів цей показник починається з величини 1024х768 точок і вище. В документації на монітор вказують верхню межу роздільної здатності. На сьогоднішній день максимальною роздільною здатністю є 3840х2400 точок (розмір екрану 21дюйм, розмір зерна - 0,2 мм.)

Частота розгортки (частота оновлення екрану). Від цього показника залежить комфортність роботи за монітором. Мінімально допустимою є частота в 75 Гц, але чим вище встановлено цей показник, тим краще.

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

Клас захисту. Загально прийнятим є стандарт ТСО, що гарантує безпечність та екологічність моніторів, які призначені для користувачів Європи та Швеції. На тепер діє клас ТСО'03, що визначає значення різних типів випромінювання, інтенсивності світіння люмінофору, яскравість, енергоспоживання, рівень шумів тощо. Існують стандарти ТСО'93, ТСО'95, ТСО'99.

Рідкокристалічні дисплеї (TFTLCD. ThinFilmTransistorLiquidCrystalDisplay)

Перший працездатний рідкокристалічний дисплей представили вчені Фергесон (Fergason) та Вільямс (Williams) з корпорації RCA (Radio Corporation of America). Перші застосування рідкокристалічних дисплеїв було втілено в калькуляторах, кварцових годинниках, ігрових приставках, згодом у мобільних телефонах та мобільних комп'ютерах. На тепер це є самий популярний тип дисплеїв для персональних комп'ютерів.

Екран рідкокристалічного дисплею складається з двох скляних пластин, між якими знаходиться матриця з комірками. Комірки заповнені рідиною, так званими рідкими кристалами - це великі молекули, що під впливом електричного заряду здатні змінювати свою орієнтацію і відповідно змінювати властивості світлового променя, що проходить скрізь них.

Кожна комірка з'єднана з відповідним транзисторним ключем від якого з певною частотою надходить електронний заряд, що і змінює оптичні властивості рідких кристалів.

Матриця ззаду рівномірно підсвічується білим світлом. Світло проходить скрізь поляризаційний фільтр, що розділяє його на 3 колірні складові базових кольорів, і після проходження через колірний фільтр на екрані утворюється колірне зображення.

В рідкокристалічних дисплеях частота поновлення екрану збігається з частотою подання електричного розряду до комірок, тому вона зазвичай є меншою ніж в моніторах з електронно-променевою трубкою і складає порядку 75-85 Гц.

Основні характеристики рідкокристалічних дисплеїв

Розмір екрану. Вимірюється в дюймах по діагоналі екрану. Діапазон розмірів є дуже широким від 19 до 29, 30, 42, 52 дюймів. Важливим фактором тут є відношення сторін екрану (ширина х висота), так званий формат екрану. Популярними є 4х3, 16х9, 16х10, 5х4. Існують моделі, де екран можна повертати на 900, що є зручним для роботи в Інтернеті та з текстовими документами.

Максимальна роздільна здатність

Називається native і відповідає кількості комірок у матриці. Якщо користувач хоче застосувати меншу роздільну здатність, існує 2 способи:

· Центрування (centering). Для формування зображення використовується та кількість точок, що обрав користувач і зображення з'являється у центрі екрану, навколо будуть чорні поля.

· Розтягнення (expansion). Зображення займає весь екран і за рахунок інтерполяції погіршується різкість, можуть спостерігатися подвоєння або розмивання контурів.

Яскравість та контрастність. Яскравість вимірюється в канделах на кв.м. і складає 250-300 кд/кв.м.

Контрастність - це відношення між самим яскравим білим кольором і самим яскравим чорним кольором. В сучасних моніторах цей показник складає від 1 000:1 до 30 000:1.

Кут огляду. Великою проблемою рідкокристалічних дисплеїв був обмежений кут огляду, де зображення відображається вірно. Наразі ця проблема вирішується і кути огляду по вертикалі та горизонталі складають 1600-1700.

Переваги рідкокристалічних дисплеїв перед ЕПТ моніторами

· Зменшене енергоспоживання у 3-4 рази.

· Малі розміри у глибину (5-10 см.).

· Мала вага (4-8 кг. проти 20-30 кг.).

· Електромагнітне випромінювання відсутнє. На користувача світить лише світло.

Недоліки рідкокристалічних дисплеїв

· Дисплей є вразливим до фізичного впливу. Сильний натиск на екран чи удар може пошкодити комірки і в подальшому вони не будуть працювати (на екрані з'являються чорні точки).

· Нерівномірність підсвічування екрану (всередині екрану яскравість є на 10-20% більшою ніж по краях).

· Занадто яскраві та насичені кольори, що невірно відтворює зображення.

Лідерами серед фірм-виробників є компанії Samsung, Sony, Philips, LG. Ціни залежать від розміру екрану і є у межах від 150 дол. і вище.

Плазмовіпанелі (PDP Plasma Display Panel)

Розробкою таких пристроїв займалися провідні виробники Fujitsu, Mitsubishi, Pioneer.

Принцип дії є схожим на функціонування рідкокристалічних дисплеїв. Простір між скляними пластинами заповнюється інертним газом (аргоном чи неоном). Матриця містить комірки з електродами, до яких подається високочастотна напруга. Під дією напруги в газовій ділянці навколо електроду виникає електричний розряд, і вона починає світитися. Фактично, кожна комірка матриці працює як маленька флуоресцентна лампа (лампа денного світла).

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

Головні недоліки плазмових панелей:

· Високе енергоспоживання.

· Поки що низька роздільна здатність.

· Обмежений термін придатності (10 000 годин, для офісного режиму роботи складає приблизно 5 років).

· Вигоряння плазми. Не бажано, щоб на екрані постійно була одна картинка (логотипи, піктограми), тому що комірки можуть запам'ятати цю інформацію і в подальшому не реагувати на іншу.

· Висока ціна від 1 000 дол. і вище.

Через такі обмеження газоплазмові панелі найчастіше використовують як телевізори, інформаційні табло для презентацій, конференцій та реклами.

Сенсорні екрани (TouchScreen)

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

Застосування в багатьох областях:

· Інформаційні та платіжні термінали.

· Ресторанні системи.

· Системи самообслуговування.

· Тренінг системи.

· Портативні комп'ютери

З появою операційної системи Windows7, сенсорні екрани можна використовувати і для комп'ютерів. Тут сенсорний екран є як пристроєм виводу так і пристроєм вводу інформації.

Сенсорний екран складається з:

· Сенсору.

· Контролеру.

· Драйвера підтримки.

Сенсор - це панель з чистого скла, що реагує на дотики. Ця панель розміщена поверх екрану.

Існує кілька типів сенсорних панелей і в кожній втілено свій метод розпізнавання натиснень. Зазвичай, сенсорні панелі мають електричний заряд чи сигнал, що проходить скрізь них і натиснення певної ділянки на екрані викликає зміни в напрузі чи сигналі.

Контролер - це невелика плата, що з'єднує сенсорний екран з комп'ютером. Комп'ютер отримує інформацію від сенсорного екрану і перетворює її у зрозумілий для процесора вид. Контролер зазвичай є вбудованим в екран або розміщений в окремому корпусі.

Драйвер підтримки - це програмне забезпечення, що дозволяє сенсорному екрану та комп'ютеру працювати разом. Драйвер повідомляє операційній системі як реагувати на інформацію про натиснення, що отримана від контролера.

Поки що сенсорні екрани заміняють роботу мишки (клік лівою /правою клавішею, подвійний клік, перетягування), але перспективи в екранів є дуже широкими, особливо у поєднанні з Інтернет технологіями.

Переваги сенсорних екранів

· Підвищена надійність

· Стійкість до зовнішніх впливів (антивандальні), пилонепроникні та вологозахищені.

· Інтуїтивно зрозумілий інтерфейс.

Недоліки

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

· На горизонтальному екрані руки закривають огляд.

· Обмеження точності позиціонування дій користувача без курсору.

· Якщо екран не має спеціального покриття, відбитки пальців можуть заважати правильному функціонуванню.

Фірми-виробники: 3MTouch, HYNDay, NEC, TUS, ELOTouch, IIYAMA. Розміри екранів 17, 22, 24, 30 дюймів. Ціни від 400-600 дол.

Принтери

Комп'ютерний принтер (англ.printer -- друкар) -- пристрій для друкуінформації на папері.

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

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

Монохромні принтери мають кілька градацій, зазвичай 2-5, наприклад: чорний -- білий, одноколірний (або червоний, або синій, або зелений) -- білий, багатобарвний (чорний, червоний, синій, зелений) -- білий.

З розвитком комп'ютерних технологій монохромні принтери поступаються місцем повнобарвним або скорочено - кольоровим, які друкують «весь спектр кольорів», видимий людським оком.

Інші принтери -- матричні тощо -- це історія і вони використовуються як спеціалізовані для друку на безперервний рулон паперу в лабораторіях, банках, бухгалтеріях, для друку на багатошарові бланки (наприклад, паспорти, авіаквитки), а також, коли важливий сам факт друку ударом. Вважається, що факт удару ускладнює внесення несанкціонованих змін до фінансового документа[джерело не вказано 306 днів].

Набули поширення багатофункціональні пристрої, в яких об'єднані принтер, сканер, копіювальний апарат і факс. Таке об'єднання раціональне технічно і зручне в роботі. Широкоформатні (А3, А2) принтери іноді помилково називають плоттерами.

Лазерні принтери

Технологія-попередник сучасного лазерного друку з'явилася в 1938 році -- Честер Карлсон винайшов спосіб друку, названий електрографія, а потім перейменований в ксерографію.Принцип технології полягав в наступному. На поверхні фотобарабана коротроном (скоротроном) заряду, або валом заряду рівномірно розподіляється статичний заряд, після цього світлодіодним лазером (або світлодіодною лінійкою) на фотобарабані знімається заряд -- тим самим на поверхню барабана поміщається приховане зображення. Далі на фотобарабан наноситься тонер, після цього барабан прокочується папером, і тонер переноситься на папір коротроном перенесення, або валом перенесення. Тонер, залежно від знаку його заряду, може притягуватися до поверхні, що зберегла приховане зображення або фону. Після цього папір проходить через блок термозакріплення для фіксації тонера, а фотобарабан очищається від залишків тонера і розряджається у вузлі очищення.

Першим лазерним принтером, став EARS (Ethernet, Alto, Research character generator, Scanned Laser Output Terminal), винайдений в 1971 році в корпорації Xerox, а серійне виробництво було налагоджене в другій половині 1970-х. Принтер Xerox 9700 можна було придбати у той час за 350 тисяч доларів, зате друкував він зі швидкістю 120 стор./хв.

Світлодіодні принтери

Принцип роботи світлодіодних принтерів багато в чому схожий з принципом роботи лазерних. Робота принтера заснована на принципі сухого електростатичного переносу.

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

Струменеві принтери

Принцип дії струменевих принтерів схожий на матричні принтери тим, що зображення на носієві формується з крапок. Але замість головок з голками в струменевих принтерах використовується матриця що друкує рідкими барвниками. Картриджі з барвниками бувають з вбудованою друкуючою головкою -- в основному такий підхід використовується компаніями Hewlett-Packard, Lexmark. Фірми Epson, Canon проводять струменеві принтери, в яких друкуюча матриця є деталлю принтера, а змінні картриджі містять тільки барвник. При тривалому простої принтера (тиждень і більше) відбувається висихання залишків барвника на соплах друкуючої головки. Принтер уміє сам автоматично чистити друкуючу головку. Але також можливо провести примусове очищення сопел з відповідного розділу настройок драйвера принтера. При прочищенні сопел друкуючої головки відбувається інтенсивна витрата барвника. Особливо критичне засмічення сопел друкуючої матриці принтерів Epson і Canon. Якщо штатними засобами принтера не вдалося очистити сопла друкуючої головки, то подальше очищення і/або заміна друкуючої головки проводиться в ремонтних майстернях. Заміна картриджа, що містить друкуючу матрицю, на новий проблем не викликає. Друкуючі головки струменевих принтерів створюються з використанням наступних типів подачі барвника:

Безперервна подача (Continuous Ink Jet) -- подача фарбника під час друку відбувається безперервно, факт попадання фарбника на задруковувану поверхню визначається модулятором потоку фарбника. Стверджується, що патент на даний спосіб друку виданий Вільяму Томпсону (William Thomson) в 1867 році. У технічній реалізації такої друкуючої головки в сопло під тиском подається фарбник, який на виході з сопла розбивається на послідовність мікрокрапель (об'ємом декількох десятків піколітрів), яким додатково повідомляється електричний заряд. Розбиття потоку фарбника на краплі відбувається розташованим на соплі п'єзокристалу, на якому формується акустична хвиля (частотою в десятки кілогерц). Відхилення потоку крапель проводиться електростатичною відхиляючою системою (дефлектором). Ті краплі фарбника, які не повинні потрапити на задруковувану поверхню, збираються в збірку фарбника і, як правило, повертаються назад в основний резервуар з фарбником. Перший(англ.) струменевий принтер виготовлений з використанням даного способу подачі фарбника випустила Siemens в 1951 році. Подача на вимогу (англ.Drop-on-demand) -- подача фарбника з сопла друкуючої головки відбувається тільки тоді, коли фарбник дійсно треба нанести на відповідну соплу область задруковуваної поверхні. Саме цей спосіб подачі фарбника і набув найширшого поширення в сучасних струменевих принтерах.

У наш час існує дві технічні реалізації даного способу подачі фарбника: П'єзоелектрична (Piezoelectric Ink Jet) -- над соплом розташований п'єзокристал з діафрагмою. Коли на п'єзоелемент подається електричний струм він згинається і тягне за собою діафрагму -- формується крапля, яка згодом виштовхується на папір. Широкого поширення набула в принтерах компанії Epson. Технологія дозволяє змінювати розмір краплі.

Термічна (Thermal Ink Jet), також звана BubbleJet -- Розробник -- компанія Canon. Принцип був розроблений в кінці 70-х років. У соплі розташований мікроскопічний нагрівальний елемент, який при проходженні електричного струму миттєво нагрівається до температури близько 500 °C, при нагріванні в чорнилі утворюються газові бульбашки (англ.bubbles -- звідси і назва технології), які виштовхують краплі рідини з сопла на носій. У 1981 році технологія була представлена на виставці Canon Grand Fair. У 1985-му з'явилася перша комерційна модель монохромного принтера -- Canon BJ-80. У 1988 році з'явився перший кольоровий принтер -- BJC-440 формату A2, з роздільною здатністю 400 dpi.

Матричні принтери

Матричні принтери -- найстаріші з нині вживаних типів принтерів, його механізм був винайдений в 1964 році корпорацією Seiko Epson. Матричні принтери стали першими пристроями, що забезпечили графічне виведення твердої копії. Зображення формується друкуючою головкою, яка складається з набору голок (голкова матриця), що приводяться в дію електромагнітами. Головка пересувається по-рядково вздовж аркуша, при цьому голки вдаряють по паперу через фарбувальну стрічку, формуючи точкове зображення. Цей тип принтерів називається SIDM (англ. Serial Impact Dot Matrix -- послідовні ударно-матричні принтери). Випускалися принтери з 9, 12, 14, 18 і 24 голками в головці. Основного поширення набули 9-ти і 24-х голкові принтери. Якість друку і швидкість графічного друку залежить від числа голок: більше голок -- більше крапок.

Принтери з 24-ма голками називають LQ (англ. Letter Quality -- якість машинки, що пише). Існують монохромні та 5-кольорні матричні принтери, в яких використовується 4-колірна стрічка CMYK. Зміна кольору проводиться зсувом стрічки вгору-вниз щодо друкуючої головки. Швидкість друку матричних принтерів вимірюється в CPS (англ. characters per second -- символах в секунду).

Основними недоліками матричних принтерів є: монохромность, низька швидкість роботи і високий рівень шуму. Матричні принтери поширені досі завдяки дешевизні копії (витратним матеріалом, по суті, є тільки фарбувальна стрічка) і можливості роботи з безперервним (рулонним, фальцованим) і копіювальним папером. Випускаються і швидкісні лінійно-матричні принтери, в яких велика кількість голок, що рівномірно розташовані на човниковому механізмі (фрете) по всій ширині листа. Швидкість таких принтерів вимірюється в LPS (англ. Lines per second -- рядках в секунду). Інші принтери Барабанні принтери (drum printer). Перший принтер, що отримав назву UNIPRINTER, був створений в 1953 році компанією Remington Rand для комп'ютера UNIVAC. За принципом дії нагадував друкарську машинку. Основним елементом такого принтера був барабан, що обертався, на поверхні якого розташовувалися рельєфні зображення букв і цифр. Ширина барабана відповідала ширині паперу, а кількість кілець з алфавітом була рівна максимальній кількості символів в рядку. За папером розташовувалася лінійка молоточків, що приводяться в дію електромагнітами. У момент проходження потрібного символу на барабані, що обертається, молоточок ударяв по паперу, притискуючи її через фарбувальну стрічку до барабана. Таким чином, за один оберт барабана можна було надрукувати весь рядок. Далі папір зміщався на один рядок і машина друкувала далі. У СРСР такі машини називалися алфавітно-цифровим друкуючим пристроєм (АЦПУ). Їх роздруки можна впізнати за шрифтом, схожому на шрифт друкарської машинки і буквами, що «стрибають» у рядку. Ромашкові (пелюсткові) принтери (daisywheel printer) за принципом дії були схожі на барабанні, однак мали один набір букв, розташований на гнучких пелюстках пластмасового диска. Диск обертався, і спеціальний електромагніт притискував потрібну пелюстку до фарбувальної стрічки і паперу. Оскільки набір символів був один, було потрібне переміщення друкуючої головки уздовж рядка, і швидкість друку була помітно нижчою, аніж у барабанних принтерів. Замінивши диск з символами, можна було отримати інший шрифт, а вставивши стрічку не чорного кольору -- отримати «кольоровий» відбиток.

Лекція 7. "Основи мови С"

Небагато історії

Мова програмування C + + є найбільш поширеним інструментом розробки програмних засобів як системного, так і прикладного характеру. Історію його появи пов'язують із співробітником американської фірми Bell Labs Деніс Рітчі, хоча його дітищу - мови C передували розробки та інших системних програмістів (М. Річардс - система BCPL, К. Томпсон - мову B). Поштовхом до появи різних програмних засобів, полегшували життя системних програмістів, з'явилися роботи по створенню операційної системи Unix для комп'ютера PDP-7, початі в 1969 році. Справа в тому, що тоді єдиною операційною системою великого комп'ютера GE-645, обслуговувала співробітників лабораторії, була досить громіздка багатокористуюча система Multics. К. Томпсон (до речі, один з розробників Multics) в свій час написав програму, яка моделювала рух небесних тіл. Кожен її запуск на GE-645 обходився в 75 $, а траєкторії руху видавалися в табличному вигляді.

І тоді невелика група співробітників, очолювана К. Томпсоном, вирішила створити більш зручну однокористуючу систему на маленькому покинутому комп'ютері PDP-7 з дисплеєм. До складу цієї групи входив і Д. Рітчі. Система Unix стала дуже популярною серед співробітників лабораторії, тому вона суттєво спрощувала процес проходження завдань і не вимагала від користувачів знання численних директив системи Multics. У 1970 році Д. Рітчі допоміг перенести Unix на більш потужний комп'ютер PDP-11. У процесі цієї роботи став у нагоді набір макрокоманд на мові асемблера, який спрощував програмування численних процедур. Цей набір і був покладений в основу мови C, який вдало поєднував специфіку машинних команд з елементами мови високого рівня. У 1973 році Д. Рітчі і К. Томпсон переписали ядро ??операційної системи Unix на мову C (до цього всі програми були написані на асемблері).

З 1974 року система Unix разом з вихідними текстами на мові C і компілятор цієї мови були передані ряду університетів. Найбільш важливу роль у подальшому розвитку системи Unix, що перетворилася з однокористуючої в багатокористуючу, зіграли співробітники університету Берклі. Популярність системи Unix, устоявшей до наших днів і обслуговуючої сьогодні більше 90% серверів, значною мірою сприяла і популярності мови C, компілятор якого поставлявся в складі Unix.

Наступний внесок у розвиток потужності та універсальності мови C в 1983 році вніс співробітник все тієї ж Bell Labs Бьерн Страуструп. Запропоновані ним розширення призвели до появи версії C + + (первинна назва - C з класами). Ці нововведення дозволили користувачам конструювати власні типи даних, включати в мову нові операції над такими даними, агрегувати дані з обробними їх функціями-методами, успадковувати і перевизначати методи в породжуваних класах.

Слід зазначити і істотний внесок в розвиток систем програмування на базі мов C, C + +, внесений фірмою Borland, точніше, її засновником - Філіпом Канном. Мова йде про створення інтегрованих систем розробки, в яких вдало поєдналися засоби підготовки, зберігання, налагодження та компонування програм. Вперше така середа з'явилася в системі Turbo Pascal, а після її успішного просування аналогічна середу була реалізована в системі Turbo C. Все більш пізні системи програмування в тій чи іншій мірі запозичили основні ідеї Ф. Канна.

В даний час досить інтенсивно експлуатуються декілька систем програмування на базі мови C + +. У середовищі професійних розробок найбільшою популярністю користуються різні версії Visual C + + фірми Microsoft. Вони дозволяють створювати досить якісні за обсягом і продуктивності додатка. У вузівських організаціях перевагу віддають продукції фірми Borland - Borland C + + (версії 3.1, 4, 5), візуальним середах Borland C + + Builder. Ці системи більш прості в освоєнні, хоча якість виробленої ними продукції залишає бажати кращого. Серед професіоналів високі оцінки можна почути на адресу компіляторів фірми Intel. Кілька років тому досить багато користувачів працювало з різними версіями фірми Symantec.

Гідності мови Сі

Особливе значення надається гнучкості. Мова Сі компактна, є відносно маленькою мовою програмування. Введення-виведення не вважається частиною мови Сі, а визначається стандартною бібліотекою. Вседозволеність в мові Сі є наслідком бажання якомога більше розширити область його застосування. Мову Сі вдалося зробити відносно маленькою мовою програмування за рахунок того, що в його склад не були включені ввід-висновок і засоби для роботи з рядками. Мова Сі була задумана настільки гнучкою, що ці можливості могли бути реалізовані в кожному конкретному випадку найбільш вдалим чином. Практичний досвід використання мови Сі показав правильність такого підходу. Велика частина операційної системи UNIX і всі утиліти цієї операційної системи, включаючи і кілька трансляторів з мови Паскаль, реалізовані на мові Сі. Мова програмування є мовою програмування з сильною типізацією, якщо:

...

Подобные документы

  • Методика та порядок програмування алгоритмів циклічної структури із заданим числом повторень за допомогою мови програмування VAB. Алгоритм роботи з одновимірними масивами. Програмування алгоритмів із структурою вкладених циклів, обробка матриць.

    курсовая работа [27,7 K], добавлен 03.04.2009

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

    курсовая работа [357,5 K], добавлен 13.02.2009

  • BMP як формат зберігання растрових зображень, огляд структури файлу. Створення програми для запису та перегляду графічних BMP-файлів на мові програмування Turbo Pascal 7.0, розробка функціональної схеми і алгоритмів, особливості проведення тестування.

    курсовая работа [325,8 K], добавлен 12.06.2011

  • Визначення поняття "алгоритми", їх властивості, метод складання. Способи подання алгоритмів: письмовий, усний, схематичний, графічний, кодований. Навчальна алгоритмічна мова. Особливості створення блок-схеми. Алгоритм поданий мовою програмування.

    презентация [2,9 M], добавлен 06.05.2019

  • Конструкція і характеристики пристроїв персональних комп’ютерів. Операційна система Windows. Робота в текстовому редакторі Microsoft Word. Електронні таблиці (MS Excel). Комп'ютерні мережі. Поняття баз даних. Основи алгоритмізації і програмування.

    курс лекций [5,5 M], добавлен 15.03.2015

  • Особливості понять "цифра" и "число". Знакова система оброки інформації комп’ютером. Файл - сукупність байтів, записана на пристрій зберігання інформації. Сутність і властивості алгоритму. Схема - графічне подання алгоритму за допомогою зв’язаних блоків.

    лекция [185,0 K], добавлен 03.10.2012

  • Аналіз концепцій сучасної інформатики і нових інформаційних технологій. Дисципліна і структурованість мовних засобів комунікації. Різні підходи до викладання мов програмування. Основні методики, застосовувані при складанні алгоритмів і написанні програм.

    реферат [35,5 K], добавлен 11.08.2011

  • Аналіз розроблення та програмування обчислювального процесу лінійної структури, налагодження програм. Вивчення правил запису констант, числових і символьних змінних, типів даних. Побудова алгоритму розв’язування завдання та креслення його блок-схеми.

    реферат [2,1 M], добавлен 22.04.2012

  • Мoвa прoгрaмувaння як систeма пoзначень, що служить для точного опису програм або алгоритмів для ЕOM. Вимоги до мов програмування, класифікація за їх особливостям. Загальна характеристика найбільш поширених мов програмування: Сі, Паскаль, Delphi, Бейсік.

    реферат [24,4 K], добавлен 10.11.2012

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

    отчет по практике [2,0 M], добавлен 19.03.2015

  • Розв'язання задач мовою програмування VBA з використанням алгоритмів лінійної, розгалуженої та ітераційної циклічної структури. Розробка блок-схеми алгоритму, таблиці ідентифікаторів та тексту програми. Створення власної панелі інструментів користувача.

    практическая работа [1012,6 K], добавлен 19.02.2010

  • Теоретичні аспекти, організація та основні типи пам'яті з асоціативним доступом. Розробка програми "Віртуальна клавіатура" за допомогою мови програмування JavaScript. Основні способи запису інформації. Використання короткострокової пам’яті комп’ютера.

    курсовая работа [1,2 M], добавлен 21.06.2015

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

    контрольная работа [175,2 K], добавлен 04.01.2014

  • Класифікація пристроїв зовнішньої пам'яті. Принцип магнітного запису цифрової інформації. Характеристика електромеханічних пристроїв зовнішньої пам'яті (ЗП). Принципи побудови трактів запису (ЗП) на магнітних носіях. Зовнішня пам’ять на жорстких дисках.

    реферат [1,8 M], добавлен 14.04.2010

  • Вирішення задач сортування в програмуванні та розробка ефективних алгоритмів сортування. Знайомство з теоретичним положенням, що стосуються методів сортування файлів, реалізації їх на мові програмування Turbo Pascal. Методи злиття впорядкованих серій.

    курсовая работа [46,9 K], добавлен 16.09.2010

  • Поняття черги в програмуванні, основні операції з чергою і їх реалізація. Опис алгоритму й специфікація програми. Розробка додатку з використанням задачі Ларсона по опису зв'язного неорієнтованого графа. Алгоритм розв’язку і результати виконання програми.

    курсовая работа [1,1 M], добавлен 14.09.2012

  • Прості та умовні оператори мови С++. Робота з двовимірними масивами. Пошук та сортування даних. Робота з файлами та з динамічними структурами даних. Опис мови програмування Delphi. Складення програми до розроблених алгоритмів. Організація циклів.

    отчет по практике [4,3 M], добавлен 28.08.2014

  • Запам'ятовуючі пристрої (ЗП) є частиною мікропроцесорних систем (МПС). Вони призначені для запису, зберігання та читання, або тільки для зберігання та читання інформації, поданої у вигляді двійкових кодових слів. Постійний ЗП - пам'ять комп'ютера.

    лекция [406,7 K], добавлен 13.04.2008

  • Поняття процедури, її призначення, форма запису, складові частини. Звернення до процедури, формальні параметри та фактичні аргументи, відповідність. Модулі користувача, їх призначення, структура запису, складові частини, підключення модулів до програми.

    контрольная работа [587,3 K], добавлен 21.04.2011

  • Програма на мові програмування С++. Аналіз стану технологій програмування та обґрунтування теми. Розробка програми виконання завдання, методу вирішення задачі. Робота з файлами, обробка числової інформації і робота з графікою. Розробка програми меню.

    курсовая работа [41,0 K], добавлен 17.02.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.