
- •Лабораторна робота №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. Тема: Створення файлу послідовного доступу
8. Напишіть і запустіть програму на виконання що написана нижче. Потім напишіть програму що кінцевим числом виведе на екран ваш номер варіанту по списку.
/* Використання оператора continue в структурі for * /'
#include <stdio.h>
main ()
{
int x;
for ( x = 1; x <= 10; x++) {
if ( х == 5 )
continue; /* пропускає код, що залишився, в циклі лише якщо х == 5 */
printf("%d ", x);
}
printf("\nUsed continue to skip printing the value 5\n");
return 0;
}
1234678910
Used continue to skip printing the value 5
4.12. Використання оператора continue в структурі for
Лабораторна робота №17. Тема: Програмні модулі в с. Функції математичної бібліотеки
Мета: Навчитися користуватися програмними модулями.
Аргументи функцій можуть бути константами, змінними або виразами. Якщо c1 = 13.0, d = 3.0 і f = 4.0, то оператор
printf("%.2f", sqrt(c1 + d * f));
обчислює і друкує значення квадратного кореня з 13.0+3.0*4.0=25.0, тобто 5.00.
Деякі функції математичної бібліотеки С приведені в табл.5. Змінні х і у мають тип double.
Таблиця 5
Функції загального призначення математичної бібліотеки
Функція |
Призначення |
Приклад |
sqrt(x) |
квадратний корінь з х |
sqrt(900.0) дорівнює 30.0 sqrt(9.0) дорівнює 3.0 |
ехр(х) |
експоненціальна функція ех |
ехр(1.0) дорівнює 2.718282 ехр(2.0) дорівнює 7.389056 |
log(x) |
натуральний логарифм х (основа е) |
lоg(2.718282) дорівнює 1.0 lоg(7.389056) дорівнює 2.0 |
Iog10(x) |
логарифм х (основа 10) |
log10(1.0) дорівнює 0.0 log10(10.0) дорівнює 1.0 log10(100.0) дорівнює 2.0 |
fabs(x) |
абсолютне значення х |
якщо х > 0, то fabs(х) рівне х якщо х=0, то fabs(x) дорівнює 0.0 якщо х < 0, то fabs(х) рівно -х |
ceil(x) |
округлює х до найближчого цілого, не меншого X |
ceil (9.2) дорівнює 10.0 сеil(- 9.8) рівне - 9.0 |
floor(x) |
округлює х до найближчого цілого, не перевершуючого X |
floor (9.2) дорівнює 9.0 floor (- 9.8) рівне - 10.0 |
pow(x, y) |
х підноситься до степеня у (Xу) |
pow (2,7) дорівнює 128.0 роw (9,5) дорівнює 3.0 |
fmod (x, у) |
залишок х/у як число з плаваючою точкою |
fmod (13.657, 2.333) дорівнює 1.992 |
sin(x) |
тригонометричний синус х (х в радіанах) |
sin (0.0) дорівнює 0.0 |
cos(x) |
тригонометричний косинус х (х в радіанах) |
соs (0.0) дорівнює 1.0 |
tan(x) |
тригонометричний тангенс х (х в радіанах) |
tan(0.0) дорівнює 0.0 |
1. Напишіть і запустіть програму на виконання що написана нижче. Потім напишіть програму замінивши змінну х на свій номер варіанту по списку.
/* Функція square, визначена програмістом */
#inciude <stdio.h>
int sguare (int); /* прототип функції */
main ( )
{
int x;
for (x = 1; x <= 10; x++)
printf("%d ", square(x));
printf("\n");
return 0;
}
Визначення функції */
int square(int у)
{
return у * у;
}
1 4 9 16 25 36 49 64 81 100
5.3. Використання функції, визначеної програмістом
Кожна з приведених раніше програм складалася з функції з ім'ям main, яка для виконання свого завдання викликала функції стандартної бібліотеки. Тепер ми розглянемо, як програмісти пишуть свої власні спеціалізовані функції.
Розглянемо програму, яка використовує функцію square для обчислення квадрата цілих чисел від 1 до 10 (лістингу 5.3).
Функція square активується, або викликається в main усередині оператора printf :
printf("%d ", square (х));
Функція square отримує копію значення х в параметрі у. Потім square обчислює значення твору у*у. Результат передається назад функції printf в main, де була викликана square, і printf виводить результат. Цей процес повторюється десять разів в циклі for.
Визначення функції square показує, що square припускає передачу в параметрі у цілого значення. Ключове слово int, передування імені функції, показує, що square повертає результат цілого типу. Оператор return в square передає результат обчислень функції, яка викликала square.
Рядок програми
int square(int);
є прототипом функції. Ключове слово int в дужках інформує компілятор про те, що square припускає набути від зухвалої функції цілого значення. Слово int зліва від імені функції square інформує компілятор про те, що square повертає зухвалій функції результат цілого типу. Компілятор використовує прототип функції для перевірки того, що виклики square мають коректний тип повертаних даних, коректне число аргументів, коректний тип аргументів і що аргументи слідують в правильному порядку.
2. Напишіть і запустіть програму на виконання що написана нижче. Потім напишіть програму замінивши вводимі значення на свій номер варіанту по списку і номери двух ваших сусідів по робочому місцю.
Існує три способи повернення управління в ту точку програми, в якій була викликана функція.
/* Пошук максимального з трьох цілих значень */ #include <stdio.h> int maximum(int, int, int); /* прототип функції */ main() { int а, b, c; printf("Enter three integers: "); scanf("%d%d%d", &а, &b, &c); printf("Maximum is; %d\n", maximum(a, b, c)); return 0; } /* Визначення функції maximum */ int maximum (int x, int. y, int z) { int max = x; if (y > max) max = y; if (z > max) max = z; return max; }
Enter three integers: 22 85 17 Maximum is: 85 Enter three integers: 85 22 17 Maximum is: 85 Enter three integers: 22 17 85 Maximum is: 85 Визначена програмістом функція maximum |
Якщо функція не повертає результат, управління повертається просто досягши правої фігурної дужки, що завершує функцію, або при виконанні оператора return; Якщо функція повертає результат, оператор return вираження; повертає зухвалій функції значення вираження. Наш другий приклад демонструє визначену програмістом функцію maximum для визначення і повернення найбільшого з трьох цілих значень. За допомогою функції scanf три цілі числа вводяться. Після цього числа передаються функції maximum, яка знаходить найбільше ціле число. Це значення повертається в main оператором return у функції maximum. Повернене значення виводиться на друк оператором printf.
|