С++ те бағдарламалау пәнінен дәрістер


Сандық массивтерді өңдеудің типтік алгоритмдерін программалау



бет56/79
Дата07.02.2022
өлшемі380,73 Kb.
#94133
түріПрограмма
1   ...   52   53   54   55   56   57   58   59   ...   79
Байланысты:
Дәріс сабақтары С каз

Сандық массивтерді өңдеудің типтік алгоритмдерін программалау.
Тапсырма. 3 жол және 3 бағаннан тұратын екі өлшемді массивті экранға шығару. Бас диоганалінен жоғары орналасқан оң элементтердің қосындысын есептеу керек.

# include


main()
{
int A[3][3]={3,-2,4,10,-7,1,-9,12,5};
int I,J,D;

D=0;
printf("\n");


for (I=0; I<=2; I++)
{
for (J=0; J<=2; J++)
{
if (I0) D+=A[I][J];
printf("%3d",A[I][J]);
}
printf("\n");
}
printf("\n%d",D);

}


Көп өлшемді массивтерге нұсқаушылар.
Си тілінде көп өлшемді массивтерге нұсқауыштар – ол массивтердің массивтері, яғни, элементтері массив болатын массивтер. Бұндай массивтерді жариялауда компьютердің жадысында әр түрлі обьектілер пайда болады. Мысалы, int arr2[4][3] екі өлшемін жариялағанда жадыда төрт нұсқаушыдан тұратын массивке нұсқаушы болып табылатын , arr айнымалысының мәнін сақтауға арналған орын бөлінеді. Төрт нұсқаушылы массиыке де орын бөлінеді. Бұл төрт нұсқаушының әрқайсысы int типті үш элементтен тұратын мссив адресінен тұрады Сөйтіп, arr2[4][3] жариялануы программада үш түрлі обьект тудырады: arr идентификаторымен нұсқауыш, төрт нұсқауыштан тұратын атсыз массив және int типті он екі саннан тұратын атсыз массив. Атсыз массивтерге рұқсат алу үшін arr нұсқаушысымен адрестік өрнек қолданылады. Нұсқаушылар массиві элементтеріне рұқсат алу arr2[2] немесе *(arr2+2) түрінде бір индекстік өрнекті көрсету арқылы жүзеге асады. Int типті сандық екі өлшемді массив элементтеріне рұқсат алу үшін екі индекстік өрнек int түрінде немесе оған эквивалентті *(*(arr2+1)+2) және (*(arr2+1))[2] түріндегі қолданылуы мүмкін.
Тіл синтаксисіне сәйкес arr нұсқауышы және arr[0], arr[1], arr[2], arr[3] нұсқауыштары тұрақты болып табылады, оның мәнін өрнектерде қолдануға болады, бірақ, бұл мәндерді программаның орындалу барысында өзгертуге болмайды.
Көп өлшемді массив элементтері жадыда жол бойынша ретпен орналасады, яғне, соңғы индексі жылдам өзгереді, ал біріншісі баяу өзгереді. Бұндай реттілік көп өлшемді массивтің кез келген элементіне оның бастапқы элементінің адресі мен тек бір индекстік өрнекті қолдану арқылы рұқсат алуға мүмкіндік береді.
Мысалы, arr2[1][2] элементіне рұқсат алу int *ptr2=arr2[0] түрінде жарияланған, ptr2 нұсқаушысының көмегімен жүзеге асады. Ішкі ұқсас arr2[6] рұқсат алуын орындау мүмкін емес, себебі 6 индексті нұсқаушы жоқ.


Өзін_- өзі тексеру сұрақтары

  1. Екі өлшемді массивті қалай сипаттауға болады?

  2. Екі қлшемді массив элементіне қалай рұқсат алуға болады?

  3. Екі өлшемді массивті қалай толтыруға болады?

  4. Екі өлшемді массивті экранға қалай шығаруға болады?

  5. Екі өлшемді массив үшін нұсқауыштарды қолдануға болады.



8.1. Негізгі әдебиеттер
1. Нейбауэр А. Моя первая программа на С/С++ /Перев. с англ. – СПб: Питер, 1995
2. Подбельский В.В., Фомин С.С. Программирование на языке СиЖ Учеб. пособие. – 2-е доп. изд. – М.: Финансы и статистика, 1999
3. Информатика. Базовый курс. 2-е издание / Под ред. С.В. Симоновича. – СПб.: Питер, 2005
8.2. Қосымша әдебиеттер
1.Дейтел Х., Дейтел П. Как программировать на Си. – М.: Бином, 2000
2. Мейер Б., Бодуэн К. Методы программирования. Т. 1 и 2. – М.: Мир, 1984




Достарыңызбен бөлісу:
1   ...   52   53   54   55   56   57   58   59   ...   79




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

    Басты бет