§ 7. Паняцце дапаможнага алгарытму
7.2. Функцыі, якія вяртаюць лікавы вынік
Большасць функцый з бібліятэкі cmath, якія выкарыстоўваліся раней, вяртаюць у якасці выніку лік. Для таго каб функцыя магла вяртаць значэнне, выкарыстоўваецца аператар return. Пасля яго паказваецца значэнне, што вяртаецца. Гэтым значэннем можа быць канстанта (значэнне 0 у функцыі main), пераменная (у прыкладзе 7.2 гэта функцыі plos_treug і kol_cifr) або выраз (функцыя pi() у прыкладзе 7.2). Тып значэння, якое вяртаецца, павінен супадаць з тыпам выніку ў апісанні функцыі [1]. Прыклад 7.4. Для функцыі вылічыць і вывесці: . Значэнні пераменных y і z уводзяцца. Этапы выканання задання I. даныя: лікі y, z. II. Вынік: f1, f2, f3 — значэнні функцыі для названых значэнняў аргументаў. III. Алгарытм рашэння задачы. 1. Увод зыходных даных. VI. Апісанне пераменных: y, z, f1, f2, f3 – double. Разгледзім, як выконваецца праграма. Пры выкліку функцыі значэнне фактычнага параметра перадаецца фармальнаму і адбываецца вылічэнне з гэтым значэннем. У першым выпадку фактычным параметрам з’яўляецца канстанта –2.4. Таму пераменная x атрымае значэнне –2.4, пераменная пераменная Функцыя верне значэнне якое і будзе нададзена пераменнай f. У другім выпадку пераменнай x будзе перададзена значэнне пераменнай y, якое ўвялі з клавіятуры, і затым будуць выкананы вылічэнні. У трэцім выпадку выклік функцыі ажыццяўляецца двойчы: спачатку для значэння 3.7 * z, а затым аргументам функцыі стане значэнне f(3.7 * z). Прыклад 7.5. Дазены тры лікі. Знайсці парныя здабыткі гэтых лікаў. Напісаць праграму, якая вылічыць мінімальнае і максімальнае з гэтых значэнняў. Этапы выканання задання I. Зходныя даныя: лікі x, y, z. II. Вынік: minpr, maxpr (мінімальны і максімальны здабыткі). III. Алгарытм рашэння задачы. 1. Увод зыходных даных. IV.Апісанне пераменных: усе пераменныя ў праграме маюць тып int. Прыклад 7.6. Выпуклы чатырохвугольнік зададзены каардынатамі сваіх вяршынь. Напісаць праграму, якая знойдзе перыметр і плошчу чатырохвугольніка. Вылічэнне даўжыні адрэзка і плошчы трохвугольніка аформіць у выглядзе падпраграм. Этапы выканання задання I. Зыходныя даныя: x1, y1, x2, y2, x3, y3, x4, y4 (каардынаты вяршынь). II. Вынік: P і S — перыметр і плошча чатырохвугольніка. III. Алгарытм рашэння задачы. 1. Увод зыходных даных.
[1] Пры несупадзенні тыпаў адбываецца спроба пераўтварэння тыпаў. Калі г эта немагчыма, то кампілятар выдасць памылку. |
Значэнне 0, якое вяртае функцыя main, гаворыць пра адсутнасць памылак пры выкананні праграмы. Гэта азначае, што ўсе каманды, якія знаходзяцца ў праграме да гэтага радка, выканаліся паспяхова. Каманда return 0; можа быць выкарыстана для перарывання работы функцыі. Ніякія каманды не могуць быць выкананы пасля яе. Пра паспяховае выкананне праграмы сведчыць паведамленне «Process terminated with status 0» у акне Build log. Калі работа праграмы была перапынена (напрыклад, карыстальнік закрыў кансольнае акно да таго, як праграма скончыла работу), то ў гэтым акне будзе паведамленне пра памылку: «Process terminated with status —1073741510» Прыклад 7.4. V. Праграма:
VI. Тэсціраванне. VII. Аналіз выніку. Праверыць правільнасць вылічэнняў можна з дапамогай калькулятара. Прыклад 7.5. V. Праграма:
VI. Тэсціраванне. Прыклад 7.6. V. Праграма:
VI. Тэсціраванне. VII. Аналіз выніку. Звярніце ўвагу на імёны пераменных у праграме. Фактычныя і фармальныя параметры прынята называць рознымі імёнамі. |