58004

Загальні відомості про функції. Класифікація функцій

Конспект урока

Педагогика и дидактика

Загальні відомості про функції. Навчити студентів застосовувати стандартні та функції користувача при реалізації програмних кодів на мові С....

Украинкский

2014-05-21

299.5 KB

0 чел.

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

ДЕРЖАВНИЙ ВИЩИЙ НАВЧАЛЬНИЙ ЗАКЛАД

„КИЇВСЬКИЙ НАЦІОНАЛЬНИЙ ЕКОНОМІЧНИЙ УНІВЕРСИТЕТ ІМ.В.ГЕТЬМАНА”

РОМЕНСЬКИЙ КОЛЕДЖ

ПЛАН

відкритого заняття

з предмету ”Системне програмування”

спеціальність 05010201

“Обслуговування комп’ютерних систем і мереж”

Розробив викладач             Розглянуто

 

Руденко А. П._____

на засіданні циклової комісії

“Обслуговування комп’ютерних систем

і мереж”

Протокол №  від ”__”______2010 р.

Голова циклової комісії

_______________ Г. А. Хрокало


МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

ДЕРЖАВНИЙ ВИЩИЙ НАВЧАЛЬНИЙ ЗАКЛАД

„КИЇВСЬКИЙ НАЦІОНАЛЬНИЙ ЕКОНОМІЧНИЙ УНІВЕРСИТЕТ ІМ.В.ГЕТЬМАНА”

РОМЕНСЬКИЙ КОЛЕДЖ

НАВЧАЛЬНО-МЕТОДИЧНА КАРТКА (ПЛАН) ЗАНЯТТЯ №_23__

Група К-4-1

Предмет:     Системне програмування

  

Тема:   Загальні відомості про функції. Класифікація функцій

Вид заняття: Лекція (з елементами бесіди)

Мета заняття:

Навчальна: Ознайомити студентів із класифікацією та правилами використання функцій. Навчити студентів застосовувати стандартні та функції користувача при реалізації програмних кодів на мові С++.

Розвиваюча:  Розвивати вміння аналізувати поставлену задачу, створювати модель алгоритму, розвивати логічне мислення при використанні логічних структур.

Виховна:   Розвивати пізнавальний інтерес до предмету та задоволеність обраною професією.

Методичне забезпечення заняття:

Обладнання:

Роздатковий матеріал: Картки для самостійної роботи. Перелік стандартних функцій С++.

Форма роботи: групова та індивідуальна.

Метод викладання: Лекція (з елементами бесіди)

Список літератури:

1. О. І. Щедріна «Алгоритмізація та програмування процедур обробки інформації», навчальний посібник, Київ, 2001.-240с.

2. Т. А Павловская «С/С++. Программирование на языке высокого уровня», учебник для ВУЗов, Питер, 2007.-462с.

3. Т. А Павловская, Ю. А. Щупак «С/С++ Структурное программирование. Практикум» учебное пособие, Питер, 2007.- 238с.

4. Н. Культин «С/С++ в задачах и примерах», Санкт-Петербург, «БХВ-Петербург», 2004.-281с.


ХІД ЗАНЯТТЯ

І Організаційна частина       

1. Перевірка присутності студентів.

ІІ Актуалізація опорних знань:

  1.  Фронтальне опитування студентів з теми «Цикли while та do while. Інструкції break, goto та continue»

 2. Перевірка домашнього завдання – виконання самостійної роботи.

ІІІ Мотивація навчальної діяльності студентів

Повідомлення теми, мети і завдання заняття. Обґрунтування значення функцій у програмуванні.

IV Сприйняття і первинне усвідомлення студентами навчального матеріалу

План лекції

  1.  Класифікація функцій мови С++   (слайд)
    •   Визначення функції;
    •  Стандартні функції;
    •  Функції користувача;
  2.  Запитання на закріплення   (слайд)
    •  Дайте визначення функції;
      •  Як класифікуються функції?
        •  Скільки програма може містити функцій?
  3.  Структура функцій користувача  (слайд)
    •  Прототип функції;
    •  Виклик функції;
    •  Визначення функції.
  4.  2.1 Запитання на закріплення   (слайд)
  •  Де і як оголосити прототип функції?
  •  Що таке тип поверненого значення?
  •  Які існують типи поверненого значення?
  •  В якому місці програми можна викликати функцію користувача?
  •  Чи має значення тип параметра, який передається у стандартну функцію?
  •  Якій інструкції передається управління при виклику функції?
  •  Якій інструкції передається управління після закінчення виконання функції?
  •  В якому місці програми можна описати визначення функції?
  •  З яких символів починається тіло функції?
  1.  Приклад використання функції   (слайд-задача«Максимальне число»)

(слайд-задача «Знак порівняння чисел»)

  1.  Параметри функцій    (слайд)
  •  Фактичні параметри;
  •  Формальні параметри;
  •  Інструкція return.
  •  Запитання на закріплення  (слайд)
  •  Чи повинна співпадати кількість фактичних і формальних параметрів?  Обґрунтуйте відповідь.
  •  В якому випадку інструкція return в тілі функції не використовується?
  •  Чи допускається позначення різними символами фактичних та формальних параметрів?

  1.  (слайд-задача «Математична дія»)
  2.  Відеофільм «Основи С++. Функції»

V  Підведення підсумків заняття, оцінювання знань студентів

VІ Домашнє завдання    (слайд-задача «Математичний вираз»)

      (слайд «Теми для самостійного вивчення»)

  1.  Вивчити тему «Загальні відомості про функції. Класифікація функцій»
    1.  О. І. Щедріна Алгоритмізація та програмування процедур обробки інформації, с. 162-174;
      1.  http://www.edu.rckneu.com.ua
        1.  Самостійно опрацювати теми:
          1.  Передача параметрів у функцію; О. І. Щедріна Алгоритмізація та програмування процедур обробки інформації, с. 167-171;
            1.  Шаблони функцій. Т. А Павловская С/С++ Программирование на языке высокого уровня, с.85-87;
              1.  Написати програму, яка обчислює значення виразу (вираз вибрати самостійно).

Передбачити функцію користувача, яка на екран монітору виводить результат.


ЛЕКЦІЯ

Загальні відомості про функції. Класифікація функцій

 Функція – це логічно закінчений фрагмент програми, який має власне ім’я та параметри.

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

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

Для використання в програмі стандартних функцій необхідно підключити відповідну бібліотеку. Наприклад:

#include "math.h"  cos() sin() abs() pow()

#include "string.h"  strlen() strcmp()  

#include "conio.h "  textcolor() cprintf()

#include "iostream.h "  cout cin

#include "stdio.h "  printf() scanf()

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

/ / Функція sqrt з одним аргументом - дійсним числом подвійної точності,

/ / Повертає результат типу double

double sqrt (double x);

/ / Функція sum від трьох цілих аргументів

/ / Повертає ціле число

int sum (int a, int b, int c);

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

double x = sqrt (3);

sum (k, l, m) / 15;

Якщо функція не повертає ніякого результату, тобто вона оголошена як void, її виклик не може бути використаний як операнд більш складного вираження, а повинен бути записаний сам по собі:

func (a, b, c);

Визначення функції описує, як вона працює, тобто які дії треба виконати, щоб отримати потрібний результат. Для функції sum, оголошеної вище, визначення може виглядати наступним чином:

int

sum (int a, int b, int c)

{

int result;

result = a+b+ c;

return result;

}

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

Аргументи a, b і c називаються формальними параметрами. Це змінні, які визначені в тілі функції (тобто до них можна звертатися тільки всередині фігурних дужок). При написанні визначення функції програма не знає їх значення. При виклику функції замість них підставляються фактичні параметри - значення, з якими функція викликається. Вище, у прикладі виклику функції sum, фактичними параметрами (або фактичними аргументами) були значення змінних k, l і m.

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

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

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

Останній рядок функції повертає в якості результату розрахований значення.

Оператор return завершує виконання функції і повертає вираз, записане після ключового слова return, в якості вихідного значення. У наступному фрагменті програми змінної s присвоюється значення 10:

int k = 2;

int l = 3;

int m = 5;

int s = sum (k, l, m);

 У мові Сі припустимо мати декілька функцій з одним і тим же ім'ям (перевантаження імен функцій), тому що функції розрізняються не тільки по іменах, а й за типами аргументів. Якщо на додаток до певної вище функції sum ми визначимо ще одну функцію з тим же ім'ям

double

sum (double a, double b, double c)

{

double result;

result = a+ b+ c;

return result;

}

це буде вважатися новою функцією. Іноді кажуть, що у цих функцій різні підписи. У наступному фрагменті програми в перший раз буде викликана перша функція, а вдруге - друга:

int x, y, z, ires;

double p, q, s, dres;

...

/ / Викликати перше визначення функції sum

ires = sum (x, y, z);

/ / Викликати друге визначення функції sum

dres = sum (p, q, s);

При першому виклику функції sum всі фактичні аргументи мають тип int. Тому викликається перша функція. У другому виклику всі аргументи мають тип double, відповідно, викликається друга функція.

Важливий не тільки тип аргументів, але і їх кількість. Можна визначити функцію sum, що підсумовує чотири аргументи:

int

sum (int x1, int x2, int x3, int x4)

{

return x1+ x2+ x3 +x4;

}

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

int foo (int x);

double foo (int x);

/ / Помилка - дворазове визначення імені


ВАРІАНТИ ДЛЯ САМОСТІЙНОЇ РОБОТИ

Прослухати

Прослухати

Читати фонетично

Словник - Переглянути докладний словник

©2010Інструменти для компанійTranslator ToolkitПро Перекладач GoogleБлогКонфіденційністьДовідка

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

 

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.

  1.  

Запишіть алгебраїчний вираз за правилами мови програмування

Початкові дані задайте з клавіатури. Результат вивести на екран монітору.


ЗАДАЧА 1

Створити функцію користувача, яка виконує математичну дію над змінними в залежності від введеного з клавіатури знаку операції. Змінні дійсного типу та знак операції передати у функцію в якості параметрів.

#include "iostream.h "

#include "conio.h "

void oper (float, float, char );

void main ( )

{ float chislo1, chislo2;

char znak;

char vidpovid='y';

do

{

cout << "\n";

cout << " Задайте перше число ";

cin >> chislo1;

cout << "\n";

cout << " Задайте друге число ";

cin >> chislo2;

cout << "\n";

cout << " Задайте знак операції ";

cin >> znak;

cout << "\n";

oper (chislo1, chislo2, znak );

cout << "\n Виберіть для продовження (Y/N) ";

cin >> vidpovid;

cout << "\n";

}

while (vidpovid=='y'|| vidpovid=='Y');

getch();

}

void oper (float chislo1, float chislo2, char znak)

{ double rez;

cout << "\n ";

if ( znak=='+')

{cout << chislo1 << znak << chislo2 <<" = " << chislo1+chislo2; cout << "\n ";

}

else

if ( znak=='-')

{cout << chislo1 << znak << chislo2 <<" = " << chislo1-chislo2;cout << "\n ";

}

else

if ( znak=='*')

{cout << chislo1 << znak << chislo2 <<" = " << chislo1*chislo2; cout << "\n ";

}

else

if ( znak=='/')

{//rez=chislo1/chislo2;

cout << chislo1 << znak << chislo2 <<" = " << chislo1/chislo2; cout << "\n ";

}

else

cout <<"Ви помилились!";

}


ЗАДАЧА 2

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

#include "iostream.h "

#include "conio.h "

int max (int, int );// прототип функції 

void main ( )

{ int pershe, druge;

char vidpovid='y';

do { cout << " Задайте перше число";

    cin >> pershe;

   cout << " Задайте друге число";

   cin >> druge;

 cout << «максимальне число = " <<

 max (pershe, druge);

 cout << “Для продовження виберіть (Y/N) ";

 cin >> vidpovid;

  }

while (vidpovid=='y'|| vidpovid=='Y');

getch();

}

int max(int pershe, int druge )

{ cout << "\n ";

if ( pershe>druge)

  return pershe;

else

   return druge;

 } 


Задача 3

Створити функцію користувача, яка порівнює два цілих числа та повертає результат порівняння у вигляді одного із знаків: >, < або =.

#include "iostream.h "     

#include "iostream.h "

#include "conio.h "

char porivn (int, int );

void main ( )

{ int a, b;

char znak;

char vidpovid='y';

do

{

 cout << "\n";

 cout << " Задайте перше число ";

 cin >> a;

 cout << "\n";

 cout << " Задайте друге число ";

 cin >> b;

cout << "\n";

cout << "\n";

znak = porivn (a, b);

cout << "\n";

cout << a << znak << b;

cout << "\n Для продовження виберіть? (Y/N) ";

cin >> vidpovid;

cout << "\n";

}

while (vidpovid=='y'|| vidpovid=='Y');

getch();

}

char porivn (int a, int b)

{

if ( a==b)

  return ('=');

else

if ( a>b)

  return ('>');

else

  return ('<');

}


Математичні функції

abs, fabs

Синтаксис:

int abs (int x);

double fabs (double x);

Повертає ціле (abs) або дробове (fabs) абсолютне значення ¬ ня аргументу, в якості якого можна використовувати Вира ¬ ження відповідного типу.

Заголовний файл: <math.h>

acos, asm, atan, acosl, asinl, atanl

Синтаксис:

double acos (double x);

double asin (double x);

double atan (double x);

long double acosl (long double x);

long double asinl (long double x);

long double atanl (long double x);

Повертає виражену в радіанах величину кута, косинус, синус або тангенс якого переданий відповідної функції

діапазоні від -1 до 1.

Заголовний файл: <math.h>

cos, sin, tan

cosl, sinl, tanl

Синтаксис:

cos (double x);

sin (double x);

tan (double x);

long double cosl (long double x);

long double sinl (long double x);

Long double tanl (long double x);

Повертає синус, косинус або тангенс кута. Величина кута повинна бути задана в радіанах.

Заголовний файл: <math.h>

exp, expl

Синтаксис:

double exp (double x);

long double exp (long double (x));

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

Заголовний файл: <math.h>

pow, powl

Синтаксис:

douLle pow (double x, double y);

long double powl (long double (x), long double (y));

Повертає значення, рівне xy.

Заголовний файл: <math.h>

sqrt

Синтаксис:

double sqrt (double x);

Повертає значення, рівне квадратному кореню з аргументу Заголовний файл: <math.h>

rand

Синтаксис:

int rand (void);

Повертає випадкове ціле число в діапазоні від 0 до RAND_MAX. Перед першим зверненням до функції rand необхідно ініціалізувати

генератор випадкових чисел. Для цієї треба викликати функцію srand.

srand

Синтаксис:

void srand (unsigned x);

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

Заголовний файл: <stdlib.h>


КРИТЕРІЇ ОЦІНЮВАННЯ

ОЦІНКА “5” (відмінно)

Студент повністю висвітлює зміст матеріалу поставленого питання або проблеми: чітко розуміє суть матеріалу, вільно володіє спеціальними термінами;

впевнено і правильно застосовує набуті знання для вирішення практичних завдань.

ОЦІНКА 4 (добре)

 Студент в основному розкриває зміст матеріалу:

точно використовує спеціальні терміни, не допускає грубих помилок в програмному коді;

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

ОЦІНКА 3 (задовільно)

Студент розкриває питання частково, не завжди послідовно:

відповіді не повні, але суть питання в цілому висвітлена;

у використанні спеціальної термінології допускає помилки, слабо володіє технікою програмування;

для вирішення практичних завдань набуті знання використовує з деякими труднощами;

у програмних кодах допускає помилки.

ОЦІНКА 2 (незадовільно)

Студент не розкриває змісту питання:

відповідь подає непослідовно;

допускає грубі помилки в програмних кодах;

слабо володіє спеціальною термінологією;

відповіді мають значну кількість помилок.


 

А также другие работы, которые могут Вас заинтересовать

36425. Имитационное моделирование систем в MatLab Simulink 180.5 KB
  Пример разработки имитационной модели. Построение словарной модели описательная дескриптивная вербальная модель. Сумма налоговых поступлений от предприятий за моделируемый период накапливается на бюджетных счетах и представляется интегралом: где BDt сумма поступивших в бюджет средств от начала моделирования к моменту t руб.
36426. Программирование в MatLab 140.5 KB
  Листинг 1 содержит файлпрограмму для вывода графиков функции на отрезке [22] для значений параметра . Например для вычисления суммы при различных значениях x потребуется файлфункция текст которой приведен на листинге 2. Файлфункция для вычисления суммы function s=sum10x s=0; for k=1:10 s=sx. Файлфункция negsum см.
36427. Работа с матрицами в Matlab 227.5 KB
  Например матрицу можно ввести следующим образом: набрать в командной строке разделяя элементы строки матрицы пробелами: =[0. Элементы каждой следующей строки матрицы набираются через пробел а ввод строки завершается нажатием на Enter . Другой способ ввода матрицы основан на том что матрицу можно рассматривать как векторстолбец каждый элемент которого является строкой матрицы.
36428. Работа со строками и текстовыми файлами в MatLab 242.5 KB
  Строки записываются в текстовый файл при помощи функции fprintf ее первым входным аргументом является идентификатор файла а вторым добавляемая строка. Если поместить его в конец добавляемой строки то следующая команда fprintf будет осуществлять вывод в файл с новой строки а если n находится в начале то текущая команда fprintf выведет текст с новой строки.txt''wt'; fprintff'текст '; fprintff'еще текст n'; fprintff'а этот текст с новой строки'; fclosef; Листинг 5.3 текст еще текст а этот текст с новой строки Аналогичного...
36429. Австралия и Океания 35.5 KB
  Австралия расположенная в тропиках и субтропиках за исключением о. В некоторых из них часто проходят фестивали и спортивные соревнования поэтому Австралия район и фестивального туризма. Юговосточная Австралия которая протянулась вдоль одного из морей Тихого Океана Тасманова моря. Восточная Австралия район тоже примыкающий к морям Тихого океана Тасманову и Коралловому.
36430. Государственные природные заказники России: статус, режим, функции, задачи, перспективы развития ФЗ и РЗ 26 KB
  Государственными природными заказниками являются территории акватории имеющие особое значение для сохранения или восстановления природных комплексов и их компонентов и поддержания экологического баланса. Режим особой охраны территорий государственных природных заказников 1. На территориях государственных природных заказников постоянно или временно запрещается или ограничивается любая деятельность если она противоречит целям создания государственных природных заказников или причиняет вред природным комплексам и их компонентам. На...
36431. История заповедного дела 26.5 KB
  Большое значение для расширения заповедного дела имел Декрет Совета Народных Комиссаров СССР от 16 сентября 1921 года Об охране памятников природы садов и парков заложивший основы классификации ОПТ. Улучшению работы по формированию ОПТ способствовало принятие федеральных законов Об охране окружающей природной среды 1991 и Об особо охраняемых природных территориях 1995 Сеть ОПТ области формировалась в течение почти 80 лет . Штильмарк выдвинули концепцию в соответствии с которой каждый регион должен обладать системой ОПТ. Впервые...
36432. Туристский спрос и предложение 30.5 KB
  Предложение туристского продукта зависит от многих факторов: количества туристских поставщиков предприятия размещения питания развлечений и т. Компоненты предложения определенного туристского региона могут быть разбиты на 4 основные категории: 1 природные ресурсы 2 инфраструктура 3 материальнотехническая база туризма которая включает: туроператоров и турагентов предприятия размещения предприятия питания и торговли автотранспортные предприятия и т. В состав материальнотехнической базы туризма входят: туроператоры и турагенты...
36433. Понятие туристского продукта, его жизненный цикл 34 KB
  Маркетинг в туризме как раз нацелен на изучение совокупного продукта различных сфер деятельности. Началом стадии внедрения продукта на рынок считается момент когда туристское предприятие впервые предложило его целевой аудитории. Основной характерной чертой этой стадии является медленный темп сбыта продукта и как следствие полное отсутствие или наличие незначительной прибыли.