Программалау тілдері жоғары оқу орындарына арналған оқулық


printf("\n----------------------")



жүктеу 2,9 Mb.
Pdf просмотр
бет40/82
Дата19.11.2018
өлшемі2,9 Mb.
#20460
түріПрограмма
1   ...   36   37   38   39   40   41   42   43   ...   82

 
106 
 printf("\n----------------------"); 
 printf("\n арифм. ортасы %5.2f",c/4); 
 getch(); 

5-мысал.  Берілген  a
4,4
  жиымының  бас  диагоналындағы  элементтерді  нӛлге,  ал 
қосалқы диагоналындағы элементтерді бірге теңестіру программасы. 
#include  
#include  
#include  
main() 

  int a[4][4]={ 
 
 
 
 
{6,8,9,2}, 
 
 
 
 
{5,3,4,2}, 
 
 
 
 
{3,3,4,5}, 
 
 
 
 
{2,3,3,4} 
 
         }; 
  int i,j; 
  clrscr(); 
  printf("Берілген матрица :\n"); 
  for(i=0; i<4; i++) 
   {for(j=0; j<4; j ++) 
      printf(" %2i ", a[i][j]); 
    printf("\n");} 
    /* Матрицаны өңдеу */ 
  for(i=0; i<4; i++) 
       a[i][i]=0; 
  for(i=0; i<4; i++) 
    for(j=0; j<4; j ++) 
       if (i+j==3)  a[i][j]=1; 
   /* Өңделген матрица элементтерін шығару */ 
  printf("Нәтижелік матрица :\n"); 
  for(i=0; i<4; i++) 
   {for(j=0; j<4; j ++) 
     printf(" %2i ", a[i][j]); 
    printf("\n");} 
getch(); 

6-мысал. Берілген a
3,3
 жиымының бас диагоналынан тӛмен орналасқан элемент-
тер қосындысын анықтау программасы. 
#include  
#include  
main() 
{ static int a[3][3]={ {0,1,2}, 


 
107 
 
 
          
  {3,4,5}, 
 
 
          
  {6,7,8} 
 
 
         
}; 
  int i,j,r,s; 
  clrscr(); 
   printf("Енгiзiлген а[3][3] жиым элементтерi:\n"); 
  for(i=0; i<3; i++) 
   {for(j=0; j<3; j++) 
 
 printf(" %2i",a[i][j]); 
    printf("\n"); 
   } 
   /* бас диагоналдан төмен орналасқан элементтер  
      қосындысын анықтау */ 
   s=0; 
   for(i=0; i<3; i++) 
   for(j=0; j<3; j++) 
     if (j
    printf("\ns=%i",s); 
    getch(); 

 
7-мысал. Берілген a
3,3
 жиымының әрбір жолындағы элементтерді ӛсуі бойынша 
реттеп орналастыру  программасы. 
#include  
#include  
#include  
main() 
{ static int a[3][3]={ 
{8,7,6}, 
    
 
{5,4,3}, 
    
 
{2,1,0} 
 
 
             }; 
  int i,j,r,s,n=3,amin,m,k; 
  clrscr(); 
  printf("Берілген матрица:\n"); 
  for(i=0; i<3; i++) 
   {for(j=0; j<3; j++) 
 
  printf(" %2i",a[i][j]); 
    printf("\n"); 
   } 
  for(i=0; i
 {                     //мин тауып алмастыру 
  for(k=0; k
   { amin=a[i][k];m=k; 
    for(j=k+1; j
      if (a[i][j] < amin)  {amin=a[i][j]; m = j;} 


 
108 
    a[i][m]=a[i][k]; a[i][k]=amin; 
   } 
 } 
printf("\nНәтижелік матрица:\n"); 
for(i=0; i<3; i++) 
   {for(j=0; j<3; j++) 
 
  printf(" %2i",a[i][j]); 
    printf("\n"); 
   } 
getch(); 
 
8-мысал.  Берілген  a
3,3
  жиымының  әрбір  бағанасындағы  элементтерді  ӛсуі 
бойынша реттеп орналастыру  программасы. 
#include  
#include  
#include  
main() 

  static int a[3][3]={   {8,7,6}, 
    
 
{5,4,3}, 
    
 
{2,1,0} 
 
 
             }; 
  int i,j,r,s,n=3; 
  int amin; 
  int m,k;  clrscr(); 
   printf("Берілген матрица:\n"); 
  for(i=0; i<3; i++) 
   {for(j=0; j<3; j++) 
 
 printf(" %2i",a[i][j]); 
    printf("\n"); 
   } 
   
  for(j=0; j
  { for(k=0; k
    { amin=a[k][j];m=k; 
      for(i=k+1; i
        if (a[i][j] < amin) 
 
     {amin=a[i][j]; m = i;} 
      a[m][j]=a[k][j]; a[k][j]=amin; 
   } 
 } 
printf("\nСұрыпталған матрица элементтері:\n"); 
for(i=0; i<3; i++) 
   {for(j=0; j<3; j++) 


 
109 
 
  printf(" %2i",a[i][j]); 
    printf("\n"); 
   } 
getch(); 

6.3  Екі өлшемді жиымдармен жұмыс істеу кезінде        
         нұсқауыштарды қолдану 
A
3,2
 жиым берілген болсын. Олар – бҥтін сандар, яғни  
int a[3][2]; 
int *pri; 
pri = a; // бұл pri=a[0][0] деген сөз 
a – жиымның аты немесе  a[0][0] элементінің адресі  a=&a[0][0]; 
рri нҧсқауышына 1-ді қоссақ, pri+1 деген нҧсқауыш  a[0][1] элементіне 
сілтейді.  Бҧл жиымды қарастырғанда, келесі теңдеулер дҧрыс болып 
табылады: 
 pri  == &a[0][0]; 
 pri+1== &a[0][1]; 
pri+2== &a[1][0]; 
 pri+3== &a[1][1]; 
 pri+4== &a[2][0]; 
 pri+5== &a[2][1]; 
Екі ӛлшемді жиым бір ӛлшемді жиымдардан қҧрастырылған жиым ретінде 
қарастырылуы мҥмкін. Яғни берілген екі ӛлшемді жиым ҥш жолдан тҧрады, ал 
әрбір жол екі элементтен тҧратын жиым болып табылады. 
Бірінші жолдың аты – a[0], 
екінші жолдың аты – a[1], 
ҥшінші жолдың аты – a[2]. 
Жиымның  аты  берілген  жиымның  нҧсқауышы  болып  табылады,  яғни  ол 
жиымның 1-элементіне сілтейді.  
Екі  ӛлшемді  жиымның  осы  қасиеті  бір  ӛлшемді  жиымға  арналған 
функцияны екі ӛлшемді жиыммен жҧмыс істеуге мҥмкіндік береді.  
1-мысал. Тӛмендегі b[3][4] матрицасы жолдарының арифметикалық ортасын 
табатын программада функция қолданылған. 
/* b[3][4]  матрицасы жолдарының қосындысы */ 
#include  
#include  
float f1(int x[], int n) 
 { int k; float s; 
   for(k=0,s=0;k
 
 s+=x[k]; 
   return(s/n); 
 } 


жүктеу 2,9 Mb.

Достарыңызбен бөлісу:
1   ...   36   37   38   39   40   41   42   43   ...   82




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

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау