Программалау пәні курсты қ ЖҰ м ы с «6B06104 Есептеу техникасы және бағдарламалық қамтамасыз ету»



бет5/6
Дата16.10.2023
өлшемі480,18 Kb.
#116414
түріПрограмма
1   2   3   4   5   6
4. Программалау есебі
Есептің берілгені:

1)Ол үшін біз екі кірістірілген циклды пайдалана аламыз. Сыртқы цикл матрицаның жолдарының үстінен, ал ішкі цикл әр жолдағы элементтердің үстінен қайталанады.
2)Әрбір жолдағы элементтердің қосындысын жинақтау үшін қосынды айнымалысын қолданамыз. Біз қатардағы барлық элементтерді қайталағанда, арифметикалық ортаны алу үшін қосындыны жолдағы элементтер санына бөлеміз (бұл COLS тұрақтысы болғандықтан біз білеміз). Бұл мәнді сақтау үшін орташа айнымалы мәнді қолданамыз.
3)C++ тілінде матрицаның әрбір жолындағы элементтердің арифметикалық ортасын табу үшін матрицаның әрбір жолын аралап, оның элементтерінің қосындысын есептеу керек, содан кейін бұл қосындыны сол жолдағы элементтер санына бөлу керек. арифметикалық ортаны алу үшін
4)Осылайша, кірістірілген циклдар мен негізгі математикалық операцияларды пайдалана отырып, матрицаның әрбір жолындағы элементтердің арифметикалық ортасын таба аламыз.
Алгоритмнің сұлбасы (блок-схемасы):

Программа мәтіні:
#include
using namespace std;
int main()
{
int n, m;
srand(time(0));
printf("massiv olshemi: ");
scanf_s("%d %d", &n, &m);

int** a = (int**)malloc(n * 4);


for (int i = 0; i < n; i++)
a[i] = (int*)malloc(m * 4);

for (int i = 0; i < n; i++) {


for (int j = 0; j < m; j++) {
a[i][j] = rand() % 101 - 50;
printf("%d ", a[i][j]);
}
printf("\n");
}
int sum;
for (int i = 0; i < n; i++) {
sum = 0;
for (int j = 0; j < m; j++) {
sum += a[i][j];
}
printf("%.1f\n", (float)sum / m);
}

}
Нәтиже экранының суреті:

5. Қорытынды
«Алгоритмдеу және программалау» пәні бойынша курстық жұмыста келесі тапсырмалар орындалды:
Eksty файлдары мәтін түрінде сақталған . Егер, мысалы, біз 12345678 бүтін санды файлға жазып, 8 таңбадан жазылған болса, онда 8 байт жазылған, және бұл санның бүкіл түріне сәйкес келетініне қарамастан, 8 байт. Сонымен қатар, шығару және деректерді енгізу форматталған, яғни, біз файлдан нөмірді оқыған сайын немесе файлға жазған сайын, жолдағы немесе артқы жағындағы санның түрленуі өзгереді. Бұлардан аулақ болуға болатын қымбат операциялар.
•Бірінші есепте тармақталу алгоритімі бойынша есеп шығарылды. Ол жерде бағдарламаның соңы толықтай қолданушының таңдауына байланысты болды. Біз қолданушы енгізген айнымалы мәніне қарай әртүрлі әрекет ететін бағдарлама жаздық.
* Екінші есепте массивтің барлық элементтерін аралап өтіп, ағымдағы элементтің тақ екенін және ағымдағы максималды тақ саннан үлкен екенін тексеру үшін for циклін пайдаландық.Массивтің барлық элементтерін айналдырғаннан кейін біз массивтегі ең үлкен тақ санды қамтитын max айнымалысының мәнін көрсетеміз.
* Үшінші есепте біз екі кірістірілген циклды пайдаландық . Сыртқы цикл матрицаның жолдарының үстінен, ал ішкі цикл әр жолдағы элементтердің үстінен қайталадық. Матрицаның әрбір жолындағы элементтердің арифметикалық ортасын табу үшін матрицаның әрбір жолын аралап, оның элементтерінің қосындысын есептедік. Осылайша, кірістірілген циклдар мен негізгі математикалық операцияларды пайдалана отырып, матрицаның әрбір жолындағы элементтердің арифметикалық ортасын таптық.


Достарыңызбен бөлісу:
1   2   3   4   5   6




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет