asmodeus94

tablice[y][x]

Jan 15th, 2013
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.72 KB | None | 0 0
  1. /*
  2. 1. stworz 2 wymiarowa tablice o wymiarach 10x10, wypelnij ja 0
  3. 2. napisz funkcje (procedure) void los(a,b), ktora wypelni tablice liczbami losowymi z zakresu od a do b
  4. 3. napisz funkcje max_poziom(a), ktora zwroci maxymalna wartosc elementu w tablicy w wierszu a,
  5. 4. napisz funkcje max_pion(a), która zwroci maxymalną wartosc elementu w tablicy w kolumnie a,
  6. 5. napisz funkcje (procedure) void pokaz, ktora wyswietli elementy tablicy
  7. 6. stworz dwie 10 elementowe tablice: float pion[10] i float poziom[10] w której beda przechowywane srednie wartosc wierszy(pion) i kolumn(poziom)
  8. 7. napisz program, w ktorym w instrukcji switch bedzie możliwosc uruchomienia powyzszych funkcji
  9. */
  10. #include<iostream>
  11. #include<cstdio>
  12. #include<ctime>
  13. #include<cstdlib>
  14. using namespace std;
  15. int tab[10][10],x1,y1,a,b;
  16. float floatPion[10],floatPoz[10];
  17. int max_poziom(int a){
  18. int i,max;
  19. max=tab[1][a];
  20. for(i=0;i<10;i++){
  21.    if (tab[i][a]>max) max=tab[i][a];
  22. }
  23. return max;    
  24. }
  25. int max_pion(int a){
  26. int j,max;
  27. max=tab[a][1];
  28. for(j=0;j<10;j++){
  29.    if (tab[a][j]>max) max=tab[a][j];
  30. }
  31. return max;      
  32. }
  33. void pokaz(){
  34. int i,j,pom,sumatorX,sumatorY;
  35. string odst;
  36. for(j=0;j<10;j++){
  37. sumatorX=0;
  38.    for(i=0;i<10;i++){    
  39.       cout<<"["<<tab[i][j]<<"]";
  40.       if (tab[i][j]<1000) cout<<" ";
  41.       if (tab[i][j]<100) cout<<" ";
  42.       if (tab[i][j]<10) cout<<" ";
  43.       sumatorX+=tab[i][j];
  44.      
  45.    }floatPoz[j]=float(sumatorX)/10;cout<<floatPoz[j]<<"\n";
  46. }
  47. cout<<" ";
  48. for(i=0;i<10;i++){
  49. sumatorY=0;odst="";
  50.    for(j=0;j<10;j++){    
  51.       sumatorY+=tab[i][j];
  52.      
  53.    }  
  54.       if (tab[i][10]<1000) odst+=" ";
  55.       if (tab[i][10]<100) odst+=" ";
  56.       if (tab[i][10]<10) odst+=" ";
  57.       if (tab[i][10]==0) odst+="  ";
  58.    floatPion[i]=float(sumatorY)/10;cout<<floatPion[i]<<odst;
  59. }
  60. }
  61. void los(int a,int b){
  62. int wylos,sch,i,j;
  63. if(a>b){sch=a;a=b;b=sch;};
  64.      srand(time(NULL));
  65. for(j=0;j<10;j++){
  66.      for(i=0;i<10;i++){
  67.      wylos=a+(rand()%(b-a+1));
  68.      tab[i][j]=wylos;
  69.      }
  70. }
  71. }
  72. int main(){
  73. const int zakL=5;
  74. int wybor;
  75. for(y1=0;y1<10;y1++)
  76.    for(x1=0;x1<10;x1++)
  77.    tab[x1][y1]=0;
  78.                              
  79. do{
  80. system("cls");
  81. cout<<"1 - Wyswietl tablice\n";
  82. cout<<"2 - Losuj wartosci z przedzialu od A do B do tablicy\n";
  83. cout<<"3 - Max w poziomie\n";
  84. cout<<"4 - Max w pionie\n";
  85. cout<<zakL<<" - Wylacz\n";
  86. cout<<"Wybor: ";
  87. cin>>wybor;
  88. switch(wybor){
  89. case 1:{pokaz();getchar();getchar();break;}
  90. case 2:{cout<<"Podaj a: ";cin>>a;cout<<"Podaj b: ";cin>>b;los(a,b);break;}
  91. case 3:{cout<<"Podaj ktory wiersz: ";cin>>a;cout<<max_poziom(a);getchar();getchar();break;}
  92. case 4:{cout<<"Podaj ktory kolumna: ";cin>>a;cout<<max_pion(a);getchar();getchar();break;}
  93. }}while(wybor!=zakL);            
  94. }
Advertisement
Add Comment
Please, Sign In to add comment