- •Лабораторна робота №1. Тема: Побудова блок-схем алгоритмів засобами програми Word 2010.
- •Хід роботи
- •Лабораторна робота № 2. Тема: Робота та знайомство в середовищі програмування. Запуск програм на виконання. Редагування тексту.
- •Теоретичні відомості
- •Хід роботи
- •Лабораторна робота №3. Тема: Побудова алгоритмів за допомогою DiagramDesigner.
- •Теоретичні відомості
- •Хід роботи
- •Лабораторна робота №4. Тема:Створення лінійних програм. Процедури вводу та виводу в машинному коді. Описати кожний рядок програми в звіті рукописом!!!!!!!!!!!!!!!!!
- •Теоретичні положення
- •Лабораторна робота №5. Тема: Написання програм використовуючі математичні функції. Освоєння арифметичних операторів. Описати кожний рядок програми від руки.
- •Лабораторна робота №6. Тема: Написання програм використовуючи логічні значення Boolean.
- •Теоретичні відомості
- •Булеві значення.
- •Детальний розпис програми:
- •Лабораторна робота №7. Тема: Типи в програмах.
- •Теоретичні положення
- •Хід роботи
- •Лабораторна робота №8. Тема: Оператор вибору в циклах середовища пргограмування.
- •Хід роботи
- •Оператор вибору варiанту.
- •Циклiчнi алгоритми.
- •Циклiчнi алгоритми
- •Лабораторна робота №9. Тема: Використання процедур та функцiй. Звукові можливості Паскаля.
- •Теоретичні відомості
- •Хід роботи
- •Лабораторна робота №10. Тема: Використання перелiчуваного та обмеженого типу даних.
- •Теоретичні відомості
- •Хід роботи
- •Лабораторна робота №11. Тема: Одновимiрнi масиви.
- •Теоретичні відомості
- •1. Одновимірні масиви (рядки, вектори):
- •Можна і так:
- •Хід роботи
- •Двовимiрнi масиви.
- •Лабораторна робота №12. Тема: Використання множин.
- •Теоретичні відомості
- •Хід роботи
- •Лабораторна робота №13. Стандартн і модулі Crt, Dos, System, Graph, Printer. Робота з клавiатурою
- •Теоретичні відомості
- •Іі семестр. Мова програмування с Лабораторна робота №13. Тема: Проста програма на с: друк рядка тексту
- •Лабораторна робота №14. Тема: Арифметика в с. Використання операцій рівності і відношення
- •Лабораторна робота №15 . Тема: Структурна розробка програм. Структура вибору if. Структура вибору if/else. Структура повторення while
- •Операції інкремента і декремента
- •Лабораторна робота №16. Тема: Структурна розробка програм. Структура вибору if. Структура вибору if/else. Структура повторення while
- •Основи структур повторення while
- •Структура повторення for
- •8. Напишіть і запустіть програму на виконання що написана нижче. Потім напишіть програму що кінцевим числом виведе на екран ваш номер варіанту по списку.
- •Лабораторна робота №17. Тема: Програмні модулі в с. Функції математичної бібліотеки
- •Генерація випадкових чисел
- •Рекурсія
- •Обчислення факторіалів рекурсивною функцією
- •Лабораторна робота №18. Тема: Приклади роботи з масивами
- •Передача масивів у функції
- •Лабораторна робота №19. Тема: Сортування масивів
- •Пошук в масивах
- •Двійковий пошук в сортованому масиві
- •Ініціалізація багатовимірних масивів
- •Лабораторна робота №20. Тема: Покажчики
- •Лабораторна робота №21. Тема: Покажчики
- •Лабораторна робота №22. Тема: Форматоване введення/вивід
- •Лабораторна робота №23. Тема: Використання прапорів в рядку управління форматом printf
- •Лабораторна робота №24. Тема: Використання прапорів в рядку управління форматом printf
- •Лабораторна робота №25. Тема: Структури, об′єднання, операції з бітами і перечисленнями
- •10.18. Використання перечислення Лабораторна робота №26. Тема: Створення файлу послідовного доступу
Лабораторна робота №14. Тема: Арифметика в с. Використання операцій рівності і відношення
Мета: Навчитися використовувати арифметичні функції в програмних кодах на мові програмування С.
Хід роботи
1. Напишіть програму на С: складання двох цілих чисел.
Наступна програма, яку ми зараз виконаемо, використовує стандартну бібліотечну функцію scanf, щоб вважати два цілих числа, введені користувачем з клавіатури, необхідно обчислити суму їх значень і надрукувати результат, використовуючи функцію рrintf. Напишіть код програми .
/ * Програма складання * / |
|
# іnсlude <stdio.h> |
є директивою для препроцесора С. Рядок, що починається символом #, виконується препроцесором до того, як програма почне компілюватися. Цей специфічний рядок повідомляє препроцесору, що необхідно включити в програму вміст стандартного заголовного файлу вводу / виводу (stdio.h). |
main () |
|
{ |
|
int integer1, integer2, sum; |
/ * оголошення * / Рядокint integer1, integer2, sum; є оголошенням. Групи символів integer1, integer2 і sum - імена змінних. |
printf ("Enter first integer \ n"); |
/ * підказка * /Оператор printf ("Enter first integer \ n"); друкує на екрані символи Enter first integer і переводить курсор на початок наступного рядка. Таке повідомлення називається запрошенням або підказкою, так як пропонує користувачеві зробити певні дії. |
scanf ("% d", & integer1); |
/ * прочитати ціле *. /Оператор scanf ("% d", & integer1);викликає scanf, щоб отримати від користувача якесь значення. Функція seanf зчитує дані з стандартного пристрою введення, яким зазвичай є клавіатура. У нашому випадку функція scanf має два аргументи,% d і & integer1. |
printf ("Enter second integer \ n"); |
/ * підказка * / Оператор printf ("Enter second integer \ n"); друкує на екрані повідомлення Enter second integer, після чого переводить курсор на початок наступного рядка. Він також пропонує користувачеві зробити певні дії. |
scanf ("% d", & integer2); |
/ * прочитати ціле * / Оператор scanf ("% d", & integer2); отримує від користувача значення для змінної integer2. |
sum = integer1 + integer2; |
/ * привласнити суму * / В результаті виконання оператора присвоювання sum = integer1 + integer2; обчислюється сума змінних integer1 і integer2, і її значення присвоюється змінній sum допомогою операції присвоювання =. Оператор читається як «sum отримує значення integer1 + integer2». Більшість обчислень виконуються за допомогою операції присвоювання. Операція = і операція + називаються двомісними операціями тому, що кожна має по два операнда. У разі операції + двома операндами є integer1 і integer2. А в разі операції = двома операндами є sum і значення виразу integer1 + integer2. |
printf ("Sum is% d \ n", sum); |
/ * надрукувати суму * / Оператор printf ("Sum is% d \ n", sum);викликає функцію printf, щоб надрукувати на екрані текст Sum is, після якого слідує числове значення змінної sum. В даному випадку printf має два аргументи, "Sum is% d \ n" і sum. Перший аргумент - керуючий рядок, визначає формат виводу. Він містить кілька символів, які будуть відображені, і специфікатор перетворення % d, що визначає, що буде надруковано ціле число. Другий аргумент задає значення, яке буде надруковано. Відзначимо, що специфікатор перетворення для цілого однаковий як для printf, так і для scanf. Це справедливо для більшості типів даних в С. Обчислення можуть виконуватися і безпосередньо всередині оператора printf. Ми могли б скомбінувати два попередні оператора в один: printf ("Sum is% d \ n", integer1 + integer2). |
return 0; |
/ * показує успішне завершення програми * / Оператор return 0; передає значення 0 середовищу операційної системи, в якій виконувалася програма. Для операційної системи це означає, що програма завершена успішно. Щоб дізнатися, як повідомити про які-небудь збої в програмі, вивчіть керівництво по використовуваної вами вашої операційної системи. |
} |
Права фігурна дужка означає, що функція main закінчена. |
Результат:
Enter first integer
45
Enter second integer
72
Sum is 117
2. Напишіть програму додаючи два числа: перше число це число дня вашого народження, а друге – це число місяця вашого народження.
3. Дослідити написання і виконання програмного коду що наведений нижче. Порівняйте дату народження вашу власну і сусіда за партою, та в результаті виконання програми визначіть хто з вас і наяку кількість днів старший або молодший.
/* Застосування операторів if операцій відношення і операцій рівності */ #include <stdio.h> main () { int num1, num2; printf("Enter two integers, and I will tell you\n"); printf("the relationships they satisfy: "); scanf("%d%d", &num1, &num2); /* прочитати два цілих */ if (num1 = = num2) printf("%d is equal to %d\n", num1, num2); if (num1 != num2) printf("%d is not equal to %d\n", num1, num2); if (num1 < num2) printf("%d is less than %d\n", num1, num2); if (num1 > num2) printf("%d is greater than %d\n", num1, num2); if (num1 <= num2) printf("%d is less than or equal to %d\n", num1, num2); if (num1 >= num2) printf ("%d is greater than or equal to %d\n", num1, num2); return 0; /* показує успішне завершення програми */ } Enter two integers, and I will tell you the relationships they satisfy: 3 7 3 is not equal to 7 3 is less than 7 3 is less than or equal to 7
Enter two integers, and I will tell you the relationships they satisfy: 22 12 22 is not equal to 12 22 is greater than 12 22 is greater than or equal to 12
Enter two integers, and I will tell you the relationships they satisfy: 7 7 7 is equal to 7 7 is less than or equal to 7 7 is greater than or equal to 7 |
Ця програма, використовує шість операторів if, щоб порівняти два введених користувачем числа. Якщо умова в будь-якому з операторів істинно, то виконується оператор printf, пов'язаний з цим if. Три варіанти виводу в результаті її виконання показані нижче. Помітимо, що програма написана нижче використовує scanf, щоб ввести два числа. Кожній специфікації перетворення відповідає аргумент, в якому зберігатиметься введене значення. Перша специфікація %d перетворить значення, яке повинне зберігатися в змінній num1, а друга специфікація %d перетворить значення, яке зберігатиметься в змінній num2. Зміщуючи управо тіло кожного оператора і поміщаючи порожні рядки згори і знизу від нього, ми полегшуємо сприйняття програми. Помітимо також, що кожен оператор в програмі містить у своєму тілі єдиний оператор. |
Повний набір ключових слів мови С приведений в табл. 1. Ці слова мають спеціальне значення для компілятора С, тому програміст має бути уважний і не застосовувати ці слова як ідентифікатори імен змінних. Таблиця 1
Старшинство і асоціативність розглянутих на даний момент операцій
Операція |
Асоціативність |
() |
зліва направо |
* / % |
зліва направо |
+ - |
зліва направо |
< <= > => |
зліва направо |
= = ! = |
зліва направо |
= |
зправа наліво |
Порядок, в якому повинні виконуватися оператори, - тобто контролювати те, що називається потоком управління. Таблиця 2
Зарезервовані слова
Ключові слова С |
|||
auto |
break |
case |
char |
const |
continue |
default |
do |
double |
else |
enum |
extern |
float |
for |
goto |
if |
int |
long |
register |
return |
short |
signed |
sizeof |
static |
struct |
switch |
typedef |
union |
unsigned |
void |
volatile |
while |
