КампутарыПраграмаванне

Што такое div ў "Паскалю"? Складання, вылічэнні і прыклады

З кожным годам расце запатрабаванасць прафесіі праграміста. На дадзены момант для напісання кодаў актыўна выкарыстоўваюцца каля дзясятка моў рознага ўзроўню. Для таго каб зрабіць працэс навучання кампутарнаму праграмаванні больш эфектыўным, студэнтаў старэйшых класаў і студэнтаў 1-2 курса вучаць ствараць першыя ўласныя прыкладанні на мове «Паскаль». Аперацыях div і mod і іншым вылічэннях у яго асяроддзі прысвечана дадзены артыкул.

Некалькі слоў пра мову Pascal

«Паскаль» быў створаны ў 1968-1969 гадах вядомым вучоным Ніклаўс Віртам, які пасля быў узнагароджаны прэміяй Цюрынгіі і медалём "Піянер кампутарнай тэхнікі". Апошні незадоўга да гэтага ўдзельнічаў у распрацоўцы стандарту мовы "Алгол-68". У артыкуле, апублікаванай у 1970-м годзе, галоўнай мэтай сваёй працы Вірт назваў стварэнне эфектыўнага інструмента, які выкарыстоўвае структурнае праграмаванне і дадзеныя.

Пасля мову «Паскаль» аказаў велізарны ўплыў на сферы інфармацыйных тэхналогій, стаўшы адным з базавых. І па гэты дзень у многіх вядучых ВНУ свету менавіта на яго аснове вядзецца навучання прафесійнаму праграмаванні.

Што такое цэлалікавых дзяленне

У матэматыцы пад такой назвай разумеюць аперацыю над двума цэлымі лікамі. У выніку цэлалікавага дзялення аднаго з іх на іншае, з'яўляецца цэлая частка іх прыватнага. Іншымі словамі, калі:

24: 6 = 4;

100: 3 = 33

55: 6 = 9;

і інш.

Цэлалікавых дзяленне называюць таксама знаходжаннем няпоўнага прыватнага.

Звярніце ўвагу, што пры такой аперацыі, у выпадку, калі падзельнае менш дзельніка, вынік роўны нулю.

Абазначым вынік цэлалікавага дзялення a на b, як q. тады

т. е. ажыццяўляецца дзяленне ў звычайным сэнсе з наступным акругленнем выніку да бліжэйшага цэлага ў меншы бок.

Аперацыя div ў «Паскалю»

У разгляданым намі мове для цэлалікавага дзялення прадугледжаны спецыяльны аператар - div. У Pascal выраз, формула якога прадстаўлена вышэй, будзе мець выгляд:

q: = a div b.

Калі гаворка ідзе пра канстантах, напрыклад, a = 50, а b = 9, то будзем мець q: = 50 div 9. У выніку q будзе роўна 5.

вылічэнне астатку

Аперацыя div ў «Паскалю» звычайна вывучаецца разам з mod. Перш чым высвятляць, што азначае гэты запіс, разбярэмся, як можна знайсці рэшту колькасці.

Відавочна, што яго можна знайсці, выкарыстоўваючы велічыню, атрыманую ў выніку цэлалікавага дзялення, т. Е.

r = a - bx q.

Аперацыя mod ў «Паскалю»

У Pascal знайсці рэшту можна вельмі проста. Для гэтых мэтаў прадугледжана бінарная аперацыя mod.

Яна запісваецца наступным чынам:

r = a mod b.

Калі, напрыклад, a = 50, а b = 9, то будзем мець r: = 50 mod 9. У выніку r будзе роўна 4.

практычнае прымяненне

Знаходжанне астатку ад дзялення (r) выкарыстоўваецца ў кампутарнай тэхніцы і ў сферы тэлекамунікацый. З дапамогай такой аперацыі генеруюцца кантрольныя і выпадковыя лікаў у абмежаваным дыяпазоне.

Аператар mod выкарыстоўваюць і для вызначэння кратнасці лікаў, т. Е. Дзялімасці аднаго ліку на іншае з цэлалікавых вынікам. Відавочна, што гэта тыя пары лікаў, для якіх вынік прымянення аператара mod дае 0.

У "Паскалю" ўмова кратнасці можна запісаць так:

if a mod b = 0 then write (a, 'кратна', b).

Напрыклад, пры запуску кода з умовай, запісаным вышэй, пры значэннях a = 4 і b = 2 на маніторы высвяціцца надпіс «4 кратна 2».

Акрамя таго, аператар mod можна выкарыстоўваць для вываду апошняй лічбы колькасці ў дзесятковай запісу. Для гэтага варта выкарыстоўваць канструкцыю r = a mod 10. Напрыклад, каманда r = 37 mod 10 выдасць вынік 7.

аператар trunc

Ёсць яшчэ адзін аператар, з дапамогай якога можна атрымаць такі ж вынік, як ад div ў "Паскалю". Гаворка ідзе пра trunc, які ўжываецца не толькі да цэлых лікаў. Ён выдае вынік у выглядзе цэлай часткі дробавага аргументу. Разам з аператарам «звычайнага» дзялення атрымліваецца адзін і той жа вынік. Разгледзім сказанае на прыкладзе. Хай a = 51, а b = 9. Тады ў выніку выканання каманды q: = 51 div 9 атрымаем q: = 5, атрыманае ў выніку акруглення. Калі ж прымяніць да тых жа чыслах аператар trunc, то q: = trunc (51/9) дасць q: = 5, т. Е. Маем той жа вынік.

прыклад 1

Разгледзім, як можна выкарыстоўваць div і mod ў "Паскалю" для вырашэння практычных задач. Хай трэба знайсці суму лічбаў двухзначны лік. Ход разважанняў павінен быць наступны:

  • як ужо было паказана вышэй, апошнюю з лічбаў у запісы нумару можна атрымаць, ужыўшы да яго і да ліку 10, аператар mod;
  • што тычыцца першага чысла, то яно атрымаецца, калі замяніць mod на каманду div ў "Паскалю".

Запішам код на мове «Паскаль». Ён будзе выглядаць наступным чынам:

program Sum_2; (Назва праграмы)

var Number, Number1, Number2, Sum: integer; (Пералік зменных і вызначэнне іх тыпу, як цэлалікавага)

begin (пачатак цела праграмы)

write ( 'Input Two-digit number'); (Выснова на экран фразы "Input Two-digit number")

read (Number); (Увод зыходнага ліку)

Number1: = Number div 10; (Вылічэнне першай лічбы)

Number2: = Number mod 10; (Вылічэнне другі лічбы)

sum: = Number1 + Number2; (Вылічэнне сумы лічбаў)

write (Sum); (Выснова выніку на экран)

end.

Для ліку 25 вынік выкарыстання гэтай праграмы будзе 7, а, напрыклад, для 37 - 9.

прыклад 2

Напішам код для праграмы, вылічаць суму лічбаў 3-значнага ліку.

Як знайсці апошнюю лічбу - зразумела. Не ўяўляе складанасці і вылічэнне 1-й. Яна атрымаецца ў выніку прымянення аператара div ў "Паскалю" да гэтага ліку і да 100. Засталося высветліць, як знайсці другую лічбу. Для гэтага можна выкарыстаць больш складаную канструкцыю, якая атрымаецца, калі да зыходнага ліку і да 10 прымяніць аператар div, а затым да выніку і да 10 аператар mod.

Код праграмы для вылічэнні сумы лічбаў трохзнакавага ліку будзе выглядаць наступным чынам:

program Sum_3; (Назва праграмы)

var Number3, Sum: integer; (Пералік зменных і вызначэнне іх тыпу, як цэлалікавага)

begin (пачатак цела праграмы)

write ( 'Input Tree-digit number'); (Выснова на экран фразы «Input Tree-digit number»)

read (Number3); (Увод зыходнага ліку)

Sum: = Number3 div 100 + Number3 mod 10 + Number3 div 10 mod 10; (Вылічэнне сумы)

write ( 'Sum); (Выснова выніку на экран)

end.

некаторыя заўвагі

Звярніце ўвагу, што аперацыя звычайнага дзялення пры ўжыванні да цэлалікавых аргументаў выходзіць за межы іх класа. Гэта яе карэнным чынам адрознівае ад аперацыі div ў "Паскалю", а таксама ад аператара mod, якія выдаюць вынік, таксама які з'яўляецца цэлым лікам.

Парадак выканання аперацый бінарнага тыпу (т. Е. Выконвае над 2-ма аперанда) ў складаным выразе вызначаецца іх прыярытэтам і круглымі дужкамі. Іншымі словамі, пры наяўнасці дужак спачатку вылічаюцца змешчаныя ў іх выразы ў парадку злева направа. Пры гэтым аперацыі *, /, mod і div з'яўляюцца больш прыярытэтнымі, чым + і -. Калі дужак няма, то перш злева направа варта выканаць дзеянні з вялікім прыярытэтам, а затым - + і -.

Цяпер вы ведаеце, для чаго выкарыстоўваецца функцыя div ў "Паскалю". Вам таксама вядомыя магчымасці, якія дае ўжыванне аператара mod, што, напэўна, дапаможа вам пры стварэнні ўласных прыкладанняў.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 be.birmiss.com. Theme powered by WordPress.