Void pause (int p) //заголовок функції

(

if (p=0){gotoxy(8,wherey()+1); //установка курсору

cout<<” ESC-вихід у ОС, інша клавіша – продовження роботи”;};

int c = getch(); //читання з клавіатури

if (ESC == c){ //При натиснення клавіші ESC

exit (1); }; //Повернення в ОС при натисненні клавіші, крім ESC

if (0 == c) с = getch();

if (p>2) clrscr();// очищення екрана

} //кінець опису pause (паузи)

#endif

Функція pause має три модифікації залежності від значення аргументу int р: припинення програми з наступним продовженням заповнення екрану (p>1), припинення з наступним очищенням екрану (p=1), припинення з пояснюючим написом у нижній частини екрану й наступним очищенням екрану (p=0). Для переривання виконання програми слід застосувати клавішу ESC, а для продовження – іншу будь-яку клавішу.

Розглянемо функцію pause більш детально. Початок координат текстової графіки прив’язано до символу у лівому верхньому куту екрану. Вбудована функція gotoxy(x, y) переміщує курсор у крапку з координатами x, y. Поточне розташування курсору можна визначити за допомогою функції: x=wherex(); y=wherey(); Функція wherex та wherey не мають аргументів.

При виклику функції pause з нульовим аргументом (р=0) курсор встановлюється на восьму позицію по горизонталі (по вісі х) та на наступний за поточний рядок по вертикалі (по вісі у). Зверніть увагу на те, що другий аргумент при виклику gotoxy визначає повертаємо значення іншої функції (wherey) у сполученні з арифметичною дією. Аргументом функції може бути повертаємо значення іншої функції.

Далі операція cout<< виводить пояснювальний напис. При виклику pause с іншими аргументами (p>0), вміст напису потрібно знати на пам'ять. Функція getch зупиняє виконання програми. Після натиснення клавіші зчитується введений одиночний символ та повертається його код. Коли натискується клавіша ESC, функція exit (1) завершує програму та повертає користувача в ОС. При натисненні іншої клавіші – програма продовжує виконання. Чистку екрана здійснює функція clrscr.

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

// файл PART1\1_26.cpp

//Використання текстової графіки

#include “c:\CPP\SUBPROG\\roll.h”

#include “c:\CPP\SUBPROG\\ roll_txt.h”

Double pwr(int, unsigned); //прототип

main() {clrscr();

cout<<” ввести значення ступеня >30 ”;

int mn; cun>>mn; pause(0);

cout<<” число число у ступені ”<<mn;

i=1; //використання глоб. I

while(mn>0){ cout<<”\n “<<i<<”

<<pwr(I, m); // зведення в ступень з виводом на екран

if(0==i%10){ /* зупинка малюнку через кожні 10 рядків*/

){ cout<<”\nESC-вихід у ОС, інша кл. – продовження роботи\n”;

pause(4);} i++;}; //кінець циклу


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: