- •Лабораторна робота № 1 Тема: Знайомство з мовою програмування с
- •1.1. Елементи мови Сі
- •1.2. Алфавіт
- •1.3. Ідентифікатори
- •1.4. Константи
- •Escape-послідовності
- •1.5. Коментарі
- •1.6. Ключові слова
- •Стандартні математичні функції
- •2.1. Арифметичні операції
- •Бінарні арифметичні операції
- •Унарні арифметичні операції
- •2.2 Операції присвоювання
- •Операції присвоювання
- •2.3. Операції порівняння
- •Операції порівняння
- •2.4. Логічні операції
- •Логічні операції
- •2.5. Порозрядні операції (побітові операції)
- •Порозрядні операції
- •2.6. Операція слідування (кома)
- •2.7. Умовна операція ?
- •2.8. Операція sizeof()
Логічні операції
Складні логічні вирази обчислюються "раціональним способом". Наприклад, якщо у виразі (A<=B)&&(B<=C) виявилось, що А більше В, то всі вирази, як і його перша частина (А<=B), приймають значення "хибно", тому друга частина (В<=C) не обчислюється.
2.5. Порозрядні операції (побітові операції)
Порозрядні операції застосовуються тільки до цілочисельних операндів і "працюють" з їх двійковими представленнями. Ці операції неможливо використовувати із змінними типу double, float, long double.
Таблиця 2.6.
Порозрядні операції
-
Операція
Значення
~
порозрядне заперечення
&
побітова кон'юнкція (побітове І)
|
побітова диз'юнкція (побітове АБО)
^
побітове додавання за МОД2
<<
зсув вліво
>>
зсув вправо
2.6. Операція слідування (кома)
Операція "кома" (,) називається операцією слідування, яка "зв'язує" два довільних вирази. Список виразів, розділених між собою комами, обчислюються зліва направо. Наприклад, фрагмент тексту a=4; b=a+5; можна записати так : a=4, b=b+5;
Операція слідування використовується в основному в операторах циклу for() (про оператори циклів піде мова пізніше).
Для порівняння наводимо приклад з використанням операції слідування (приклад 1) та без неї (приклад 2):
Приклад 1.
int a[10],sum,i;
/* ... */
sum=a[0];
for (i=1;i<10;i++)
sum+=a[i];
Приклад 2.
int a[10],sum,i;
/* ... */
for (i=1,sum=a[0];i<10;sum+=a[i],i++) ;
2.7. Умовна операція ?
Умовна операція ?: – єдина тернарна операція в мові Сі. Її синтаксис : умова ? вираз_1 : вираз_2.
Принцип її роботи такий. Спочатку обчислюється вираз умови. Якщо цей вираз має ненульове значення, то обчислюється вираз_1. Результатом операції ?: в даному випадку буде значення виразу_1. Якщо вираз умови рівний нулю, то обчислюється вираз_2 і його значення буде результатом операції. В будь–якому випадку обчислюється тільки один із виразів (вираз_1 або вираз_2).
Наприклад, дану операцію зручно використати для знаходження найбільшого з двох чисел x і y: max=(x>y)?x:y;
Приклад 1 :
#include<stdio.h>
void main()
{
int points;
printf("Введiть оцiнку [2..5]:");
scanf("%d",&points);
printf("%s",points>3?"Ви добре знаєте матерiал!":"Погано...");
}
Приклад 2 :
j = (i<0) ? (–i) : (i);
/* змінній j присвоюється модуль i*/
2.8. Операція sizeof()
Дана операція обчислює розмір пам'я2ті, необхідний для розміщення в ній виразів або змінних вказаних типів.
Операція має дві форми :
1). ім'я_типу А;
sizeof А;
2). sizeof (ім'я_типу);
Операцію sizeof() можна застосовувати до констант, типів або змінних, у результаті чого буде отримано число байт, що відводяться під операнд. Приміром, sizеof(int) поверне число байт для розміщення змінної типу int.
Завдання до лабораторної роботи.
№ |
Завдання |
|
1. Дано два ненульових числа. Знайти їх суму, різницю, добуток та частку. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Дані числа x, y є координатами точки, що знаходиться у першій або третій координатній чверті". |
|
1. Дано два числа. Знайти середнє арифметичне їх квадратів та середнє арифметичне їх модулів. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Точка з координатами (x, y) лежить всередині прямокутника, ліва верхня вершина якого має координати (x1, y1), права нижня - (x2, y2), а сторони паралельні координатним осям ". |
|
1. Швидкість човна в стоячій воді V км/год., швидкість течії річки U км/год. (U < V). Час руху човна по озеру T1 год., а по річці (проти течії ) T2 год. Визначити шлях S, що пройде човен. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Дане ціле число є парним двозначним числом". |
|
1. Швидкість першого автомобіля V1 км/год., другого – V2 км/год., відстань між ними S км. Визначити відстань між ними через Т годин, якщо автомобілі віддаляються один від інших. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Дане ціле число є непарних тризначним числом". |
|
1. Швидкість першого автомобіля V1 км/год.,другого – V2 км/год., відстань між ними S км. Визначити відстань між ними через Т годин, якщо автомобілі рухаються назустріч друг другу. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Серед трьох даних цілих чисел є хоча б одна пара співпадаючих". |
|
1. Знайти периметр та лощу прямокутного трикутника, якщо дано довжини його катетів a та b. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Серед трьох даних цілих чисел є хоча б одна пара взаємно протилежних". |
|
1. Дана довжина ребер куба. Знайти площу грані, площу повної поверхні та об’єм даного кубу. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Сума цифр даного тризначного числа є парним числом". |
|
1. Знайти довжину кола та площу кола, якщо відомо радіус R. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Сума двох перших цифр даного чотиризначного числа дорівнює сумі двох його останніх цифр". |
|
1. Знайти площу кільця, внутрішній радіус якого дорівнює R1, а зовнішній радіус дорівнює R2 (R1 < R2) 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Дане чотиризначне число читається однаково зліва направо і справа наліво". |
|
1. Дана сторона рівнобічного трикутника. Знайти площу даного трикутника та радіуси вписаного та описаного кола. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Всі цифри даного тризначного числа різні". |
|
1. Дана довжина кола. Знайти площу кругу, що обмежена даним колом. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Цифри даного тризначного числа утворюють зростаючу послідовність". |
|
1. Дана площу кругу. Знайти довжину кола, що обмежує даний круг. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Цифри даного тризначного числа утворюють зростаючу або спадаючу послідовність". |
|
1. Знайти периметр та площу рівнобічної трапеції з основами a та b (a > b) и кутом alpha при більшій основі (кут дано в радіанах). 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Цифри даного тризначного числа утворюють арифметичну прогресію". |
|
1. Знайти периметр та площу прямокутної трапеції з основами a та b (a > b) та гострим кутом alpha (кут дано в радіанах). 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Цифри даного тризначного числа утворюють геометричну прогресію". |
|
1. Знайти відстань між двома точками із заданами координатами (x1, y1) та (x2, y2). 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Дано координати (цілі від 1 до 8) двох різних полів шахової дошки. Якщо тура за один хід може перейти з одного поля на інше, вивести логічне значення True, у противному разі вивести значення False. |
|
1. Дано координаті трьох вершин трикутника (x1, y1), (x2, y2), (x3, y3). Знайти його периметр та площу. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Дано координати (цілі від 1 до 8) двох різних полів шахової дошки. Якщо король за один хід може перейти з одного поля на інше, вивести логічне значення True, у противному разі вивести значення False. |
|
1. Знайти корені квадратного рівняння . заданого своїми коефіцієнтами А. В, С (коефіцієнт А не дорівнює 0), якщо відомо, що дискримінант рівняння не від’ємний. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Дано координати (цілі від 1 до 8) двох різних полів шахової дошки. Якщо слон за один хід може перейти з одного поля на інше, вивести логічне значення True, у противному разі вивести значення False. |
|
1. Знайти розв’язок системи рівнянь виду , що задана своїми коефіцієнтами , якщо відомо що дана система має єдиний розв’язок. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Дано координати (цілі від 1 до 8) двох різних полів шахової дошки. Якщо ферзь за один хід може перейти з одного поля на інше, вивести логічне значення True, у противному разі вивести значення False. |
|
1. Дано ціле чотиризначне число. Використовуючи операції div та mod, знайти суму його цифр. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Дано координати (цілі від 1 до 8) двох різних полів шахової дошки. Якщо кінь за один хід може перейти з одного поля на інше, вивести логічне значення True, у противному разі вивести значення False |
|
1. Дано ціле чотиризначне число. Використовуючи операції div та mod, знайти добуток його цифр. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Дано координати (цілі від 1 до 8) двох різних полів шахової дошки. Якщо королева за один хід може перейти з одного поля на інше, вивести логічне значення True, у противному разі вивести значення False. |
|
1. Написати програму, яка буде обчислювати середнє арифметичне, що вводяться з клавіатури. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Цифри даного тризначного числа утворюють арифметичну прогресію". |
|
1. Написати програму, яка буде обчислювати середнє геометричне трьох чисел, що вводяться з клавіатури. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Сума цифр даного тризначного числа є непарним числом". |
|
1. Обчисліть висоту трикутника, якщо відомі його площа та різниця між основою та висотою. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Сума цифр даного двозначного числа є парним числом". |
|
1. Дано три сторони трикутника a, b, c. Визначити його площу та перевірити, чи є він прямокутним. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Сума цифр даного двозначного числа є непарним числом". |
|
1. Напишіть програму, що знаходить корені звичайного квадратного рівняння за теоремою Вієта. 2. Розрахувати значення у, де . Значення змінної х введіть із клавіатури. 3. Перевірити істинність вислову: "Добуток цифр даного тризначного числа є парним числом". |