- •Загальні положення
- •1.1 Мета роботи
- •1.2 Методичні вказівки до організації самостійної роботи студентів
- •1.2.2 Структура програми
- •If (а) оператор 1 ;
- •1.3 Контрольні запитання
- •1.4 Варіанти індивідуальних завдань
- •2Розв’язання задач з використанням масивів
- •2.1 Мета роботи
- •2.2 Методичні вказівки до організації самостійної роботи студентів
- •Приклад 2.1 Знайти у масиві mas найменший елемент та його індекс.
- •Приклад 2.2Відсортувати масив mas дійсних чисел розміром 10 елементів за зменшенням.
- •2.3 Контрольні запитання а завдання
- •3.4 Варіанти індивідуальних завдань
- •3Робота з рядками
- •3.1 Мета роботи
- •3.2 Методичні вказівки до організації самостійної роботи студентів
- •3.3 Контрольні запитання та завдання
- •4Робота зі структурами
- •4.1 Мета роботи
- •4.2 Методичні вказівки до організації самостійної роботи студентів
- •4.3 Контрольні запитання та завдання
- •4.4 Варіанти індивідуальних завдань
- •5Використання функцій при розробці програм
- •5.1 Мета роботи
- •5.2 Методичні вказівки по організації самостійної роботи студентів
- •5.3 Контрольні запитання та завдання
- •5.4 Варіанти індивідуальних завдань
- •6 Файлові потоки мови с
- •6.1 Мета роботи
- •6.2 Вказівки щодо організації самостійної роботи студентів
- •Ввод и вывод символов
- •Ввод и вывод строк
- •Ввод и вывод записей
- •Управление указателем файла
- •Состояние потока
- •Форматированный вывод
- •Форматированный ввод
- •Другие функции форматного ввода и вывода
- •Примеры
- •6.3 Порядок виконання роботи
- •6.4 Контрольні запитання та завдання
- •6.5 Завдання
- •6.6 Варіанти завдань
- •3.7 Контрольний приклад
- •7 Директиви препроцесора. Багатомодульне програмування
- •7.1 Мета роботи
- •7.2 Вказівки щодо організації самостійної роботи студентів
- •7.3 Порядок виконання роботи
- •7.4 Контрольні запитання та завдання
- •7.5 Завдання
- •7.6 Варіанти завдань
- •7.7 Контрольний приклад
- •Перелік посилань
5Використання функцій при розробці програм
5.1 Мета роботи
На навчитися застосовувати практиці апарат функцій у мові С++.
5.2 Методичні вказівки по організації самостійної роботи студентів
Елементарною одиницею програми мовою C++ є функція. Функція призначена для рішення визначеної задачі різного ступеня складності. Функції, що призначені для рішення складних задач, можуть у свою чергу містити звертання до довільному числа функцій, призначених для рішення менш складних задач. Таким чином, рішення задачі мовою C++ припускає її функціональну декомпозицію, коли функції більш високого рівня забезпечують даними і сприймають результат функцій більш низького рівня [1–7, конспект лекцій].
Використовуючи функції, варто розрізняти три поняття – визначення функції (опис дій, що виконуються функцією — вихідний код), оголошення функції (завдання форми звертання до функції — прототип) і виклик функції.
Синтаксис С++ передбачає, щоб функція була або визначена, або оголошена до її виклику. Оголошення функції (завдання прототипу функції) містить ім'я функції, тип результату, що повертається, список формальних параметрів із указівкою їхнього чи типу вказівка тільки типів формальних параметрів.
У мові C++ визначено декілька способів передачі параметрів функції й одержання результатів обчислення функції. Існує чотири базових способи передачі параметрів функції: виклик функції з передачею значень; виклик функції з передачею адрес перемінних; виклик функції з використанням механізму посилань при передачі параметрів; за допомогою глобальних параметрів. Але не кожний з цих способів забезпечує повернення змінених параметрів в основну функцію (програму).
Функція може бути параметром іншої функції. Можна організувати вбудовану функцію за схемою
inline void myPrint(void) { cout << " Text" << endl; } ,
що значно скорочує час виконання програми. Мова С++ дозволяє перевантаження функцій — виклик функцій з однаковим ім’ям, але з різними типами фактичних параметрів. Для цього вказується окремий прототип та опис кожного списку параметрів.
Приклад 5
Створити функцію сортування в одновимірному масиві від’ємних елементів на своїх місцях.
#include <iostream>
using namespace std;
// Функція сортування
void SortArr(int *mas, int n)
{
int i,j,xmin,imin;
for(j=0;j<n-1;j++)
{
int currentNeg,prevNeg;
int i =0;
while (mas[i]>=0&& i<n) ++i;
currentNeg=i++;
for (; i<n;++i)
{
prevNeg = currentNeg;
//Пошук сусідніх від ємних елементів
while (mas[i]>=0&& i<n) ++i;
currentNeg=i;
if ( currentNeg<n && prevNeg<n
&& mas[currentNeg] > mas[prevNeg]
)
{
int c = mas[currentNeg];
mas[currentNeg] = mas[prevNeg];
mas[prevNeg] = c;
}
}
}
}
// Головна функція
int main()
{
const int n=7;
int i, mas[n];
int s=0;
cout<<"\n input 7 members of massiv \n";
for (i=0;i<n;++i)
cin>>mas[i];
cout<<"Your members:\n";
for(i=0;i<n;i++)
cout <<mas[i]<<' ';
cout <<"\n";
SortArr(mas,n);
cout<<" Result:massiv"<<"\n";
for(i=0;i<n;i++)
cout <<mas[i]<<' ';
cout <<"\n";
cin.get();
cin.get();
return(0);
}