Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

практикум 1 Обчислення арифметичних виразів Мета роботи ~ придбати навички складання елементарних про

Работа добавлена на сайт samzan.net:


Комп’ютерний практикум №1

Обчислення арифметичних виразів

Мета роботи – придбати навички складання елементарних програм для обчислення виразів.

  1.  Теоретичні відомостi
    1.  Основні поняття

Для мов програмування характерні такі базові поняття як алфавіт мови, лексеми, елементи даних, вирази, операції тощо.

Основними складовими алфавіту мови програмування є рядкові і прописні літери латинського алфавіту, арабські цифри, спеціальні символи (. , ; + - * / = < > % & ! ( ) { } тощо), що використовуються для конструювання знаків операцій, виразів, коментарів, а також як синтаксичні роздільники.

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

У мовах програмування має місце різниця у сприйнятті рядкових і прописних літер алфавіту. Так у мові C/C++ прописні і рядкові букви сприймаються як різні символи, тобто myvar і MyVar – різні імена.

Літерали (рядки) - певним чином оформлена послідовність символів коду ASCІІ (Unicod). У мові С/С++ це рядки символів, взяті у подвійні лапки, наприклад, ”Приклад”. Рядок символів, який нічого не містить між обмежувачами, є порожнім рядком, наприклад, ” ”.

Коментарі - це послідовності символів (не обов'язково з алфавіту мови), що не обробляються компілятором, а виконують у програмі чисто інформаційну функцію. Можуть бути однорядковими і багаторядковими. У мові C/С++ однорядкові коментарі починаються з символів //, а багаторядкові беруться у дужки виду /* */. 

Важливою складовою мови C/С++ є керуючі символи (Esc-послідовності), які використовуються для таких дій, як повернення каретки, табуляція, тощо. Керуючий символ складається із зворотного слеша (\), за яким вказується або буква, або знаки пунктуації, або комбінація цифр. У табл. 1.1 наведений список деяких керуючих символів.

Таблиця 1.1 Керуючі символи C/С++

Спеціальний символ

Найменування

звуковий сигнал (дзвінок)

\n

новий рядок

\t

горизонтальна табуляція

\v

вертикальна табуляція

\r

повернення каретки

\f

нова сторінка

\

апостроф

\”

подвійні лапки

\?

знак питання

\\

зворотний слеш

  1.  Операції

Операції служать для задання дій над даними.

В мові С/С++ визначені наступні основні операції (табл. 1.2):

Таблиця 1.2. Операції мови С++

Знак

Дія

Приклад

Особливості

Арифметичні операції

+

додавання

a+b

-

віднімання

a-b

*

множення

a*b

/

ділення

5/2 = 2    

5./2 = 2.5

результат ділення цілих чисел - ціле число (дробова частина відкидається); результат ділення дійсних чисел – дійсне число

%

остача від діленні цілих чисел

8%3 = 2

знак остачі збігається із знаком дільника

Логічні операції

&&

І (логічне множення)

a&&b

результат істина (типу int), якщо всі операнди істині

||

АБО (логічне додавання)

a||b

результат істина, якщо хоча б один з операндів - істина

!

НЕ (логічне заперечення)

!a

результат протилежний значенню операнда

Операції відношення (порівняння)

==

дорівнює

a==b

результат типу int (0 - при невиконанні умови порівняння, 1 - при виконанні)

!=

не дорівнює

a!=b

>

більше

a>b

<

менше

a<b

>=

не менше

a>=b

<=

не більше

a<=b

Бітові операції

~

доповнення (заперечення бітів)

~6= -7

~6 = ~0 0000110 = 1 1111001(д) =

1 1111000(о) = 1 0000101(п)  = -7

&

І (кон’юнкція)

3&2=5

1&1=1, 0&1=0,

1&0=0, 0&0=0

|

АБО (диз'юнкція)

3|2=3

1|1=1, 0|1=1,

1|0=0, 0|0=0

^

виключаюче АБО

3^2=1

1^1=0, 0^1=1,

1^0=1, 0^0=0

<<

зсув вліво на задане число бітів

a<<b

зсув бітів у числі а ліворуч на b позицій; результат буде того ж типу, що і а (b не може бути від’ємним або більшим за а). Здвиг вліво на 1 розряд збільшує число в 2 рази, оскільки кожен i-й розряд має вагу 2i (00000111<<1 = 00001110)

>>

зсув вправо на задане число бітів

a>>b

зсув бітів у числі а праворуч на b позицій; результат буде того ж типу, що і а (b не може бути від’ємним або більшим, ніж а). Здвиг вправо на 1 розряд зменшує число в 2 рази (00000111>>1 = 00000011)

Операції приросту та спаду

++,

--

префіксне додавання, віднімання

++a,

--а

спочатку значення змінної збільшується (зменшується) на 1, потім використовується (b=++a  => a=a+1; b=a)

++,

--

постфіксний додавання, віднімання

а++,   

а--

спочатку значення змінної використовується, а потім збільшується (зменшується) на 1 (b=a++ => b=a;  a=a+1)

Пріоритети операцій мови С/С++ (табл. 1.3):

Таблиця 1.3. Пріоритети операцій мови С/С++

Пріоритет

Операції

Типи операції

перший (вищий)

~ ++ -- + -

унарні

* / %

мультиплікативні

+ -

адитивні

<< >>

зсуву

< <= > >=

відношення

== !=

відношення (рівність)

&

порозрядне І

^

порозрядне виключає АБО

|

порозрядне АБО 

&&

логічне І

||

логічне АБО

 

  1.  Стандартні типи даних

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

  •  множину допустимих значень,
  •  множину операцій, що можуть застосовуватися до них;
  •  обсяг пам’яті, необхідної для розміщення відповідних значень.

Стандартні типи даних С/С++ (табл. 1.4):

Таблиця 1.4. Стандартні типи С/С++

Тип

Діапазон  значень

Обсяг пам'яті (байт)

Цілі типи

short int

-32768 .. 32767

2

unsigned int

0 .. 65535

2

int

-32768 .. 32767

2

unsigned long

0 ..  4294967295

4

long

-2147483648 .. 2147483647

4

long long або _int64

–9223372036854775808 …

9223372036854775807

8

unsigned _int64

0 … 18446744073709551615

8

Дійсні типи

float

3.410-38 .. 3.410+38

4

double

1.710-308 .. 1.710+308

8

long double

3.410-4932 .. 1.110+4932

10

Символьнi типи

unsigned char

0 .. 255

1

char

-128 .. 127

1

Приведення типу - перетворення значення змінної одного типу в значення іншого типу. Виділяють явне і неявне приведення типів.

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

int  х=24, y = 200 ;  

float r;

r = (float) y/x ;   

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

double  d ;  // дійсний тип  

int  с ;  // цілий тип  

d  =  с*5;   // результат – дійсного типу  

  1.    Стандартні математичні функції

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

Основні стандартні математичні функції мови С/С++ наведені в табл. 1.5.

Таблиця 1.5. Стандартні математичні функції С/С++

Функція

Опис

abs (x)

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

fabs (x)

дійсне абсолютне значення аргумента x, що може бути дійсним числом

sin(x)

синус числа  x

cos(x)

косинус числа  x

tan(x)

тангенс числа  x

exp(x)

експонента числа  x (ех)

log (x)

натуральний логарифм числа  x

sqrt(x)

квадратний корінь з числа  x

ceil(x)

округлення аргумента x  до найближчого більшого цілого

floor (x)

округлення аргумента х  до найближчого меншого цілого (шляхом відкидання його дробової частини)

pow(x,y)

піднесення аргумента х до ступеню y 

Вони описані в бібліотеках сstdlib.h і сmath.h (для мови С++).

  1.  Структура програми 

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

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

Програма на мові С/С++ у загальному випадку являє собою сукупність директив препроцесора, зовнішніх оголошень, а також описів функцій, одна із яких повинна мати ім'я main. Операційна система передає управління у програму користувача на функцію з цим іменем і тим самим починається виконання програми. Функція main визначає дії, що виконуються програмою, і викликає інші функції.

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

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

Оголошення змінної задає ім'я і атрибути змінної та приводить до виділення для неї пам'яті. Визначення змінної, окрім того, задає початкове значення змінної (явно або неявно).

Всі змінні повинні бути описані до їх використання. Для змінних ініціалізація необов'язкова, але настійно рекомендується.

Загальна структура процедурної програми на мові С/С++ має наступний вигляд:

================ Директиви препроцесора ==================  

#include ім'я                   //підключення заголовних файлів

#define ім'я значення          // макровизначення

   ...

=================   Зовнішні оголошення ===================  

тип  ім'я_1, ім’я_2, …, ім'я_n

тип  ім'я_1= значення, …, ім'я_n = значення

======================   Функції ===========================  

заголовок_функції_1;

тіло_функції;

      ...

заголовок_функції_n;

тіло_функції;

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

Для того, щоб програма мовою С/С++ могла бути скомпільована і виконана, вона повинна містити принаймні одну головну функцію main.

  1.  Оператор присвоєння

Мова С/С++, як і мова Рascal, підтримує методологію структурного програмування. Структурний підхід передбачає цілий ряд обмежень програмування, які забезпечують відповідність програми дуже строгому зразку. Зокрема, при програмуванні таких програм дозволяється використовувати тільки базові алгоритмічні конструкції (управляючі конструкції) та їх різновиди.

Одна з таких конструкцій – послідовність, що використовуються для задання лінійних процесів, коли операції виконуються у відповідності із послідовністю їх запису у програмі.

Програмуються лінійні алгоритми за допомогою операторів присвоєння. Даний оператор наказує обчислити заданий вираз і присвоїти отриманий результат зазначеній змінній.

Формат оператора присвоєння для С/С++:

змінна = вираз_1 = … = вираз_n       

Наприклад,

f=x/Sin(y);

a=d=v=5.

У С/С++ можуть також використовуватися оператори скороченого присвоєння, наведені у табл. 1.6.

Таблиця 1.6. Основні оператори скороченого присвоєння мови С/С++

Операція

Дія

Приклад

Особливості

+=

Присвоєння  суми   чисел

a+=b

a=a+b. Короткі числа перетворюються у довгі із збереженням значення, довгі у короткі – із втратою старших бітів. Дійсні числа перетворюються в цілі з відкиданням дробової частини.

-=

Присвоєння різниці чисел

a-a-=b

a= a-b

*=

Присвоєння добутку чисел

a*=b

a=a*b

/=

Присвоєння частки від ділення

a/=b

a=a/b

%=

Присвоєння остачі від ділення

a%=b

a=a%b. Остача визначається тільки при діленні цілих чисел.

>>=

Присвоєння із зсувом вправо

a>>=b

<<=

Присвоєння із зсувом вліво

a<<=b

&=

Присвоєння бітової конюнкції

a&=b

|=

Присвоєння бітової диз'юнкції

a|=b

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

  1.  Організація введення-виведення даних

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

За допомогою стандартних засобів можна вводити-виводити дані тільки певних типів.

У мові С/С++ для організації введення-виведення використовуються стандартні бібліотечні функції. Розрізняють наступні різновиди засобів введення-виведення.

Форматоване введення / виведення. Функції форматованого введення/ виведення представлені в бібліотеці сstdio.h (для С++). Їх перелік наведений в табл. 1.7.

Таблиця 1.7. Функції форматованого введення / виведення 

Функція

Призначення

Формат

scanf (формат, список_ аргументів)

читання (введення) даних з потоку stdin (з клавіатури) у задані аргументи по заданому формату

%[*][ширина]тип

printf (формат, список_ аргументів)

запис (виведення) даних у потік stdout  (на екран монітора) по заданому формату

%[прапорець] ирина] [.точність] тип

sscanf (рядок, формат, список_ аргументів)

читання (введення) даних із рядка (символьного масива) у  задані аргументи по заданому формату

%[*][ширина] тип

sprint (рядок, формат, список_ аргументів)

запис (виведення) даних у рядок по заданому формату

%[прапорець] [ширина] [.точність] тип

При описі формату використовуються наступні позначення:

%   символ початку задання формату введення-виведення чергового аргумента;

*   ігнорування поля введення; дані не зберігаються;

прапорець  – специфікатор вирівнювання виведених знаків, пропусків, десяткових крапок, 8-вих і 16-вих префіксів; його можливі значення представлені в табл. 1.8.

Таблиця 1.8. Значення прапорів

Прапор

Дія

-

Вирівнювання результату перетворення по лівій межі

+

Обов'язкове зображення знака (для чисел із знаком)

Пробіл

Якщо перший символ результату перетворення має знак, відмінний від + і -, то зображення результату випереджається пробілом. Тим самим прапор + анулює дію прапора пробіл.

#

Перетворення значення до "альтернативної форми". Для перетворень c, d, i, s, u цей прапор не має значення; для o - результат зображується із збільшеною точністю (щоб перша цифра результату була нулем); для x, X - ненульовий результат буде зображуватися із префіксом 0x або 0X; для e, E, f, g, G - результат обов'язково зобразиться з десятковою крапкою, навіть якщо за нею немає цифр (зазвичай крапка в цьому випадку опускається); для g, G - не придушуються незначимі хвостові нулі (що зазвичай робиться).

ширина  – загальна ширина поля виведення;

точність  – максимальне число символів, які будуть надруковані після коми;

тип  – специфікатор типу аргумента, можливі значення якого представлені у табл. 1.9.

Таблиця 1.9. Значення специфікаторів типу

Тип

Дія

d,D

цілі значення приводяться до десяткового числа типу int (d) або long (D)

u,U

цілі значення приводяться до беззнакового десяткового числа типу unsigned int  (u) або unsigned long (U)

о,О

цілі значення приводяться до беззнакового вісімкового числа типу unsigned int (o) або unsigned long (О)

x,X

цілі значення приводяться до беззнакового шістнадцяткового числа типу unsigned int (x) або unsigned long (X); шістнадцяткові цифри при перетворенні x зображуються буквами abcdef; при перетворенні X - буквами ABCDEF

f,F

значення типів float або double перетворюється в десяткове число і зображується у вигляді [-]ddd.ddd, де число цифр після крапки визначається точністю. Якщо точність опущена, то вважається, що вона дорівнює 6; якщо точність дорівнює нулю, крапка не друкується

e,E

значення типів float або double перетворюється в десяткове число і зображується у вигляді [-]d.ddde+/-dd, де перед крапкою знаходиться рівно одна цифра, а число цифр після крапки визначається точністю; за замовчуванням точність дорівнює 6; якщо точність дорівнює нулю, крапка не друкується. Специфікація E відрізняється від e тільки позначенням порядку (E замість e). Порядок завжди містить принаймні дві цифри

g,G

значення типів float або double перетворюється в десяткове число і зображується або у форматі f, або у форматі e (або E, якщо задано специфікацію G); точність визначається числом значущих цифр. Вид зображення залежить від значення аргументу: вид e використовується тільки у тому випадку, якщо порядок менше -4 або більше значення точності. Хвостові незначимі нулі придушуються; десяткова крапка друкується, тільки якщо за нею є цифри

c

друкується значення-символ

s

значення, задане покажчиком, розглядається як ланцюжок символів, обмежений порожнім символом (“\0”); друк ланцюжка припиняється або по обмежнику, або після виведення кількості символів, рівної значенню точності. За замовчуванням точність вважається нескінченно великою; у цьому випадку ланцюжок друкується доти, поки не зустрінеться обмежник. Порожній покажчик (NULL) дає непередбачувані результати

Перед специфікатором можна вказати кваліфікатор (префікс) h, l чи L. Наприклад, %lf, %le, %hd. Для цілих типів префікс h еквівалентний short, префікс llong. Для дійсних типів префікс l означає, що тип аргументу не float, а double. Для префікса L – тип long double.

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

printf("Площа кола: %10.3f", s);

Аргументами функцій scanf і sscanf є не імена змінних, а їхні адреси (знак & означає взяття адреси). Наприклад,

scanf(“%d%f“,&a,&b);

Потокове введення / виведення. Потокове виведення виконується за допомогою операції зсуву вліво («помістити в потік») ”<<”. Стандартна операція ”<<” для операцій виведення перевизначається, тобто для неї визначаються нові можливості. Потокове введення аналогічне виведенню, але використовує перевизначену операцію зсуву вправо ”>>”.

Для керування потоковим введенням/виведенням можуть використовуватися маніпулятори потоків, представлені у табл. 1.10.

Таблиця 1.10. – Маніпулятори управління потоковим введенням / виведенням

Маніпулятор

Дія

endl

вставка символу нового рядка і очищення потоку

ends

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

dec

установка прапора форматування з десятковим перетворенням

hex/oct

установка прапора форматування із шістнадцятковим / вісімковим перетворенням

ws

виділенння пробільних символів

flush

скидання на диск і очищення потоку ostream 

setbase(n)

установка системи числення при перетвореннях із основою n (0, 8, 10 або 16). Нуль за замовчуванням означає десяткову систему при виведенні і правила С/С++ для літералів цілих чисел при введенні

resetiosflags(f)

очищення форматних бітів в ins або outs, заданих аргументом f

setiosflags(f)

установка біт форматування в ins або outs, заданих аргументом f 

setfill(c)

установка символу-заповнювача в c

setprecision(n)

установка точності подання чисел із плаваючою крапкою, що дорівнює n розрядам

setw(n)

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

Стандартні засоби потокового введення / виведення містяться у бібліотеці сiostream.h (для С++).

Наприклад,

cin >> r;

s=pi*r*r;

cout<< "\nПлоща кола: " << s << endl;

Введення / виведення символів та рядків. Для введення / виведення символів та рядків у мові С/С++ служать наступні основні функції (табл.1.11):

Таблиця 1.11. Основні функції введення / виведення символів та рядків

Функція

Формат

Опис

getch

getch()

введення символу із вхідного потоку stdin (з клавіатури) без ехо-друку

getchar

getchar()

введення символу із вхідного потоку stdin (з клавіатури) з ехо-друком

putchar

putchar(c)

виведення символу у вихідний потік stdout (на екран)

gets

gets (s)

введення рядка із вхідного потоку stdin (з клавіатури)

puts

puts (s)

виведення у вихідний потік stdout (на екран) рядка і доповнення його символом нового рядка \n

 Після введення символу за допомогою функції getchar треба очистити буфер клавіатури, використавши функцію fflush (stdin).

Описи відповідних функцій введення / виведення містяться у бібліотеці сstdio.h.

  1.  Приклад програми

Приклад. Дані катети прямокутного трикутника. Знайти його гіпотенузу. Результат має містити 3 знаки після коми (без округлення).

#include "stdafx.h"

#include <stdio.h>

#include <math.h>

#include <iostream>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])

{  double a,b;  //катети

double c;  //гіпотенуза

cout << "a = "; cin >> a;    //введення першого катета

cout << "b = "; cin  >> b;   //введення другого катета

c=sqrt(pow(a,2)+pow(b,2));    //обчислення гіпотенузи

printf("c = %5.3f \n",c);  // виведення результату

system("pause");

}

Відеокопія результату:

  1.  Варіанти завдань

За заданими двома сторонами трикутника і куту (в градусах) між ними знайти довжину третьої сторони цього трикутника.

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

Знайти  суму  n-перших  членів арифметичної прогресії  a, a+d, …, a+(n-1)d  за заданими значеннями a, d, n.

Визначити площу наведеної геометричної фігури:

Дано дійсне число M виду ccc.ddd (по три цифрових розряди в дробовій і цілій частинах). Поміняти місцями дробову і цілу частини цього числа та вивести нове отримане число.

Визначити, скільки повних годин (h) і повних хвилин (m) пройшло з початку доби до k-ої її секунди.  

Обчислити суму n-перших членів геометричної прогресії b, bq, …, bq(n - 1), q  1  за заданими значеннями  b, q, n.

Обчислити об'єми циліндра і конуса, що мають однакову висоту Н і однаковий радіус основи R.

Знайти (в радіанах і градусах) всі кути трикутника із сторонами a, b, c.

По заданим коефіцієнтам і правим частинам рівняння системи

знайти її рішення за припущенням, що визначник системи не дорівнює 0.

Дані натуральні числа M і N. Визначити старшу цифру дробової частини і молодшу цифру цілої частини частки від ділення M на N.

Відома довжина окола. Знайти площу кола, обмеженого цим околом.

Обчислити  n-ий член арифметичної прогресії  a, a+d, …, a+(n-1)d  за заданими значеннями a, d, n.

Перевести задане значення кута   із радіанної міри в градусну.

За заданими двома сторонами трикутника і куту (в градусах) між ними знайти площу цього трикутника.

Визначити дробову частину середнього геометричного трьох заданих додатних чисел.

З початку доби годинникова стрілка повернулася на х градусів (0  х < 360, х – дійсне число). Визначити число повних годин (h) і повних хвилин (m), що пройшли з початку доби.  

Дані катети прямокутного трикутника. Знайти його площу.   

Перевести задане значення кута із градусної міри в радіанну.

Обчислити суму всіх членів нескінченно спадної геометричної прогресії   b, bq, …, bq(n - 1), |q|< 1 за заданими значеннями  b, q.

Для заданої довжини ребра куба знайти об’єм куба і площу його бічної поверхні.   

Обчислити периметр та площу трикутника, заданого координатами трьох його вершин (x1, y1), (x2, y2), (x3, y3).

Дана сторона рівностороннього трикутника. Знайти його площу.

Обчислити n-ий член геометричної прогресії  b, bq, …, bq(n - 1) за заданими значеннями b, q, n.

Дані гіпотенуза і катет прямокутного трикутника. Знайти другий катет цього трикутника.   

Трикутник заданий величинами своїх кутів і радіусом описаного кола. Знайти сторони трикутника.

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

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

Обчислити  відстань  між  двома  точками з координатами (x1, y1) і (x2, y2).

Знайти суму n-перших членів арифметичної прогресії  a, a+d, …, a+(n-1)d  за заданими значеннями будь-яких двох її членів, номера яких відомі.

  1.  Контрольні питання
    1.  Які різновиди лексичних одиниць є у мові С/C++?
    2.  Як визначаються коментарі в тексті програми на С/С++?
    3.  Що розуміється під типом даних?
    4.  Які стандартні типи даних є у мові С/C++?
    5.  Які операції означені для типів int, float та char?
    6.  Що є множиною значень цілочисельних типів?
    7.  Що являють собою константи. Які є різновиди констант?
    8.  Що таке вираз?
    9.  Яка з логічних операцій змінює зміст логічного операнда на протилежний?
    10.  У чому полягає відмінність операцій  / та %у мові С/C++?
    11.  У чому відмінність операторів постфіксного і префіксного додавання (віднімання) у С/С++?
    12.  У чому різниця між функціями abs і fabs у С/С++?
    13.  Яку структуру має програма, написана мовою С /C++?
    14.  Чи обов'язково в програмі на С/С++ повинна бути функція  main?
    15.  Особливості роботи засобів форматованого введення / виведення у С/С++?
    16.  Особливості роботи функцій потокового введення / виведення у С/С++.
    17.  Для чого використовується очищення буфера клавіатури ?
    18.  Які заголовні файли використовуються для підключення функцій введення / виведення у С/С++?

PAGE  16




1. Механизация и автоматизация производства ~ частичная комплексная полная
2. История развития криминологии
3.  ОБЩИЕ ТРЕБОВАНИЯ 1
4. Война кланов Кристиан ЖакВойна кланов Серия- Земля фараонов ~ 1 Scn flgmn1; OCR RedChec
5. О полиции 1
6.  Поняття та принципи господарської відповідальності Термін ldquo;відповідальністьrdquo; застосовується в
7. Перемена лиц в обязательстве
8. Доклад- Андреас Везалий
9. Тема 1 ЛОГИКА КАК НАУКА Логика возникла в недрах философии и развивалась как единая наука объединяющая со
10. Тема- Приглашаем на бесплатный тренинг капитанов Весеннего Всесинтоновского Слёта 2014 Текст- Друзья уже
11. субкультура было введено в середине 30х годов XX в
12. Биотехнология
13. НА ТЕМУ РАЗМЕЩЕНИЕ ПРОИЗВОДСТВЕННЫХ ПОДРАЗДЕЛЕНИЙ И ХОЗЯЙСТВЕННЫХ ЦЕНТРОВ Глава 1 Анализ существующег
14. В поисках пятой силы
15. ІЛ Полчанінова М Е Т О Д И Ч Н І В К А З І В К И до проведення практичних занять виконання контро
16. существуют чтобы выделить мысль привести слова в правильное соотношение и дать фразе легкость и правильно
17. тематике 3 класс Приветствие команд
18. Система трудового законодательства
19. Повторение на старшей ступени обучения иностранным языкам
20. тематику Математическое образование является средством активного интеллектуального развития