Амтамасыздандыру


Оқытудың техникалық құралдары



бет47/51
Дата07.09.2022
өлшемі484,5 Kb.
#38632
түріЛекция
1   ...   43   44   45   46   47   48   49   50   51
Байланысты:
Алгоритрм лекция жинағы

Оқытудың техникалық құралдары: интерактивті тақта
Лекция оқудың тәртібі, оқыту әдістері мен түрлері: баяндау, сұрақ – жауап, түсіндіру, кіріспе лекция
Деңгейлік тапсырмалар:
~~Бір өлшемді жиыммен жұмыс істеу мысалын көрсетіңіз.
~~For цикл операторының негізгі жазылу формасын сипаттаңыз.
~~For циклінде ерте шығу жолдарын көрсетіңіз.
ОБСӨЖ тапсырмалары:
Ақпараты енгізу-шығару ункциялары. Printf және scanf функциялары
СӨЖ тапсырмалары:
Адрестік операциялар
Бақылау сұрақтары:

        1. Берілген адрес бойынша қайсыбір ұяшықта сақталатын мәнді анықтау үшін қандай операция қоланылады?

        2. Қандай операция арқылы нұсқауыштың адресін анықтауға болады?

        3. Массив элементтерінің арасындағы арақашықтығын анықтау үшін не есептеу қажет?

Әдебиеттер:

              1. Культин Н.Б. Самоучитель Основы программирования в Delphi +диске

              2. Хармон Руководство разработчика баз данных в Delphi/Kylix.

              3. Роберт Делросси VB2D - конвертор с Visual Basic на Delphi

              4. Камардинов А. Delphi 5, Алматы, “Ата-мура”, 2002.



14-Дәріс. Тақырыбы: Көп өлшемді жиымдар
Лекция мақсаты мен міндеттері:

  • Көп өлшемді жиымдар

  • Екі өлшемді массивтер

  • Екі өлшемді массивтермен жұмыс істеу кезінде

  • нұсқауыштарды қолдану

Лекция мазмұны: Қысқаша теориялық мәліметтер
Көп өлшемді жиымдарды жариялау:
<тип><аты>[<1-ші өлшем >][< 2-ші өлшем >]…[] ={{бастапқы мәндер тізімі}, { бастапқы мәндер тізімі },…};
Көп өлшемді жиымдар компьютердің жадында бағандардың тізбегі түрінде орналасатындықтан жиым элементінің соңғы индексі жылдамырақ өзгереді.
Мысалы екі өлшемді b[2][1] жиымының элементтері жадыда мынадай тәртіппен орналасады:
b[0][0], b[0][1], b[1][0], b[1][1], b[2][0], b[2][1].
Келесі мысалда үш жол, төрт бағаннан тұратын жиымның бастапқы мәндерінің мәлімденуі көрсетілген:
int a[3][4] = {{0,1,2,0},{9,-2,0,0},{-7,1,6,8}};
Егер әлдебір {…} топта мән көрсетілмесе, онда жиымның сәйкес элементіне 0 беріледі. Осы анықтама бойынша алдыңғы оператор келесі операторға эквивалентті болады:
int a[3][4] = {{0,1,2},{9,-2},{-7,1,6,8}};


Мысал:
rand функциясын пайдаланып NxM (N және M 50-ден үлкен емес) екі өлшемді бүтін сандар жиымын жасап, экранға матрица түрінде шығару керек. N,M пернетақтадан енгізіледі:
#include
#include
#include
#define rnd (rand()/ 32768.0) // rand - генератор случайных чисел от 0 до
int, rnd – от 0 до 1
void main(void)
{ int i,j,n,m,a[50][50];
puts(“\n Input n, m:”); scanf(“%d %d”,&n,&m);
printf(“\n Array a \n”);
for(i=0; ifor(j=0; j a[i][j]=rnd*10-5; // диапазон от –5 до 5
printf(“%d%c“, a[i][j], (j= =m-1)?’\n’:’ ‘);
}
getch();
}

Екі өлшемді жиымды – матрицаны пайдалану үшін тік жақшалар ішінде олардың екі өлшемінің де енін көрсету керек. Мысалы:


int a[4][3];
алғашқы сан жолдар санын, ал екінші сан бағаналар санын көрсетеді, а жиы­мы 12 элементтен тұрады. Оларға бастапқы мәнді былай береміз:

int a[4][3]={ {0,1,2},


{3,4,5},
{6,7,8},
{9,10,11}
};
ішкі жүйелі жақшаларды қоймаса да болады:
int a[4][3]={0,1,2,3,4,5,6,7,8,9,10,11};
Келесі түрде сипаттау жолдардың тек бірінші элементтерін ғана анықтайды, қалған элементтер 0-ге тең болып саналады:
int a[4][3]={ {0},{3},{6},{9} };
Егер ішкі жүйелі жақшалар алынып тасталса, онда мағынасы өзгереді.
int a[4][3]={ 0,3,6,9 };
мұнда бірінші жолдың 3 элементі мен екінші жолдың бірінші элементі анықталады да, қалғандары 0 болып саналады.
Екі өлшемді жиымды инициалдау қабаттасқан циклдер арқылы орындалады:
// ввод элементов массива a[3][4] через rand и вывод их на экран
#include
#include
#include
main()
{
const int row=3, col=4;
int a[row][col];
clrscr();
for (int i=0; ifor (int j=0; ja[i][j]=rand()%100-50;
printf("\nа[3][4] жиым элементтерi мандерi:");
for (i=0; ifor (j=0; jprintf(" %i",a[i][j]);
getch();
}


Достарыңызбен бөлісу:
1   ...   43   44   45   46   47   48   49   50   51




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

    Басты бет