161. Клавиатурадан икки ўлчамли массивни киритадиган ва унинг элементларининг ўрта арифметигини ҳисоблайдиган дастур тузинг.
162. Иккинчи тартибли квадрат матрицанинг аниқланувчисини ҳисоблайдиган дастур тузинг. Қуйида дастур бажарилиши вақтида таклиф этиладиган экран кўриниши келтирилган (фойдаланувчи киритган маълумотлар ярим қалин шрифтда берилган).
Иккинчи тартибли матрицани киритинг.
Сатр элементларини киритганингиздан кейин ни босинг
->5 -7
->1 3
Матрица аниқланувчиси
5.00 -7.00
1.00 3.00
22.00 га тенг
163. Квадрат матрицанинг, элементлар йиғиндиси энг катта бўлган сатр номерини аниқлайдиган дастур тузинг.
164. Клавиатурадан киритилган квадрат матрица “сеҳрли” квадрат ҳисобланишини аниқлайдиган дастур тузинг.
Матрицанинг ҳар бир горизантал қатор сонлари йиғиндиси, ҳар бир вертикал ва ҳар бир диагонал бўйича сонлари йиғиндиси бир хил бўлса “сеҳрли” квадрат деб номланади (қуйида келтирилган расмга қаранг).
Белгилар ва сатрлар
Умумий мулоҳазалар
Бу бўлимдаги масалаларни ечишдан олдин қуйидагиларни ёдга олиш керак:
ҳар бир белгига сон – яъни белги коди мос келади;
C++ да сатр – бу белгилар массивидир;
сатрнинг охирги белгиси албатта коди 0 га тенг бўлган ва дастур матнида ‘\0’каби тасвирланадиган нолбелгиси бўлиши керак,
хабарлар ёки эслатмалар массив қаторларидаги кўрсаткичлар орқали ифодаланиб, массивни идентификациялаштиради ва массивларни киритишда уларнинг тавсифлари берилади:
char *mes[]={“Хабар 1”,“Хабар 2”, …, “Хабар”};
агар дастур ишлаш вақтида киритишда сатр бўш жойлардан ташкил топса, у ҳолда scanf функцияси фақат биринчи бўш жойгача қисм сатрни киритади, gets функцияси эса – ҳамма сатрни, в том числе ва тугмасига мос келадиган ‘\n’.
Do'stlaringiz bilan baham: |