Muhammad Al-Xorazmiy nomidagi Toshkent axborot texnologiyalari universiteti
Fan nomi: Algoritmlarni loyihalash
Labaratoriya ishi №5
Variant №16
Mavzu: Matristsalar bilan ishlash
CAL020-L1 guruh talabasi
Bajardi:XakimovXojiakbar
Tekshirdi:Ishmuhamedov A.
№ 1
|
Топшириқ матни
|
1
|
MxN o`lchamli matritsa berilgan. Uning elementlari quyidagi tartibda ekranga chiqarilsin: 1-satr elementlarini chapdan o`ngga, 2-satr elementlarini o`ngdan chapga, 3-satr elementlarini chapdan o`ngga, 4-satr elementlarini o`ngdan chapga va hokazo.
|
Algoritm tuzamiz:
MxN o’lchamli massiv e’lon qilamiz va uning qiymatlarini kiritamiz;
Unda masaladagi shartni qanoatlantiruvchi sikllarni tuzamiz;
Bunda ichma-ich sikldan foydalaniladi va satr qiymatining biror qiymatida barcha ustunlarning o’zgarishini tartiblagan holda choplash amalga oshirilishi kerak.
Umumiy ko’rinishi:
Dasturning c++ dagi kodi:
m ta satr va n ta ustundan
#include
using namespace std;
/*MxN o`lchamli matritsa berilgan. Uning elementlari
quyidagi tartibda ekranga chiqarilsin: 1-satr elementlarini
chapdan o`ngga, 2-satr elementlarini o`ngdan chapga,
3-satr elementlarini chapdan o`ngga,
4-satr elementlarini o`ngdan chapga va hokazo.*/
int main(){
int M, N, i, j, mx;
cout<<"Matritsaing satr va ustunlar sonini kiriting: ";
cin>>M>>N;
//matritsani e'lon qilish va kiritish
int a[M][N], b[M][N];
for(i=0; i
for(j=0;j
cin>>a[i][j]; }
cout<<"bowlang'ich ko'rinishdagi matritsa: "<
for(i=0;i
for(j=0;j
cout<
cout<
//matritsani kerakli tartibga keltirish :
for(i=0;i
for(j=0;j
if(i%2==0)
b[i][j]=a[i][j]; else
b[i][j]=a[i][N-1-j];
}
cout<
cout<<”natija:”<
// matritsa ko'rinishida choplash choplash:
for(i=0;i
for(j=0;j
cout<
}cout<
Dasturning natijasi:
Kiritiluvchi sonlar massiv ko’rinishida emas!
Dasturning bir qulaylik tarafi borki, uni aytib o’tish kerak: biz bir qulaylikni kiritib o’tdik. Buni yuqoridagi misolda ko’rish mumkin. Ya’ni biz matritsani sonlarni xuddi matritsadagidek ustun va satrlarga ajratib yozib o’tirmaymiz, uni oddiy sonlar ketma ketligida kiritamiz: va avvalo uni dastlabki ko’rinishli matritsaga keltirib undan keyingina tartiblashni amalga oshiramiz. Bu usul massivlar bilan ishlashda juda qulaydir.
Dastur natijasiga aniqlik kiritish maqsadida yana bir marta natija olamiz:
Xulosa:
Massivlar bilan ishlash nafaqat algoritmlash dasturlash fanining, yangidan yangi texnologiyalar asosini tashkil qilar ekan bu mavzuni o’rganish ham muhim masal bo’lib qolaveradi. Bunda avval ham aytganimdek, nafaqat tog’ri amallar bajarish balki bu amallarni kerakli va foydalanuvchiga qulay ko’rinishda choplash ham muhimdir.
Do'stlaringiz bilan baham: |