Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 1. rekurzija so niza i uslov
- void funkcija(int niza[],int n,int k,int i){
- if(i==n){
- return;
- }else{
- if(niza[i]%k==0){
- printf("%d ",niza[i]);
- return funkcija(niza,n,k,i+1);
- }else{
- return funkcija(niza,n,k,i+1);
- }
- }
- }
- int x[9]={1,5,8,3,4,6,7,4,12};
- int k = 3;
- funkcija(x,9,k,0);
- void blagBroj(int n){
- int i,flag=0;
- int pom=n;
- while(n!=0){
- if((n%10)%2!=0){
- flag=1;
- break;
- }
- n=n/10;
- }
- n=pom;
- if(flag==1){
- printf("Ne e blag");
- }else{
- printf("Blag e");
- }
- }
- // 2. rekurzija blag broj
- void blagBroj(int n){
- if(n==0){
- printf("Blag e");
- return;
- }else{
- if((n%10)%2!=0){
- printf("Ne e blag");
- return;
- }else{
- return blagBroj(n/10);
- }
- }
- }
- // blag broj so int
- int blagBroj(int n){
- if(n==0){
- return 1;
- }else{
- if((n%10)%2!=0){
- return 0;
- }else{
- return blagBroj(n/10);
- }
- }
- }
- // 3. rekurzija 2 parni cifri
- int parniCifri(int n){
- if(n==0){
- return 0;
- }else{
- if((n%10)%2==0){
- return 1 + parniCifri(n/10);
- }else{
- return parniCifri(n/10);
- }
- }
- }
- // matrici
- int main(){
- int n;
- scanf("%d",&n);
- int matrica[n][n];
- int i,j;
- for(i=0;i<n;i++){
- for(j=0;j<n;j++){
- scanf("%d",&matrica[i][j]);
- }
- }
- // 1. redovi i koloni
- int maxK=0;
- int maxR=0;
- int sumaK=0;
- int sumaR=0;
- int indexR;
- int indexK;
- for(i=0;i<n;i++){
- sumaK=0;
- sumaR=0;
- for(j=0;j<n;j++){
- if(i%2==1 && j%2==1){
- if(matrica[i][j]%2!=0){
- printf("%d ",matrica[i][j]);
- }
- }
- sumaK+=matrica[j][i];
- sumaR+=matrica[i][j];
- }
- if(sumaR>maxR){
- maxR=sumaR;
- indexR=i;
- }
- if(sumaK>maxK){
- maxK=sumaK;
- indexK=i;
- }
- }
- printf("maxR:%d maxK:%d",indexR,indexK);
- // 2. zadaca matrica regioni
- int max1=matrica[0][0];
- int max2=matrica[0][0];
- int max3=matrica[0][0];
- int max4=matrica[0][0];
- for(i=0;i<n;i++){
- for(j=0;j<n;j++){
- if(i>j && i+j<n-1){
- if(matrica[i][j]>max1){
- max1=matrica[i][j];
- }
- }
- if(i<j && i+j<n-1){
- if(matrica[i][j]>max4){
- max4=matrica[i][j];
- }
- }
- if(i>j && i+j>n-1){
- if(matrica[i][j]>max2){
- max2=matrica[i][j];
- }
- }
- if(i<j && i+j>n-1){
- if(matrica[i][j]>max3){
- max3=matrica[i][j];
- }
- }
- }
- }
- printf("r1:%d r2:%d r3:%d r4:%d",max1,max2,max3,max4);
- // 3. sosedi na matrica
- // dijagonalni sosedi
- int k;
- scanf("%d",&k);
- int novaMatrica[n][n];
- int sumaSosedi=0;
- for(i=0;i<n;i++){
- for(j=0;j<n;j++){
- sumaSosedi=0;
- //gore levo
- if(i>0 && j>0){
- if(matrica[i-1][j-1]%k==0){
- sumaSosedi+=matrica[i-1][j-1];
- }
- }
- //gore desno
- if(i>0 && j<n-1){
- if(matrica[i-1][j+1]%k==0){
- sumaSosedi+=matrica[i-1][j+1];
- }
- }
- //dole levo
- if(i<n-1 && j>0){
- if(matrica[i+1][j-1]%k==0){
- sumaSosedi+=matrica[i+1][j-1];
- }
- }
- //dole desno
- if(i<n-1 && j<n-1){
- if(matrica[i+1][j+1]%k==0){
- sumaSosedi+=matrica[i+1][j+1];
- }
- }
- novaMatrica[i][j]=sumaSosedi;
- }
- }
- for(i=0;i<n;i++){
- for(j=0;j<n;j++){
- printf("%d ",novaMatrica[i][j]);
- }
- printf("\n");
- }
- // gore,dole,levo,desno sosedi
- int novaMatrica[n][n];
- int sumaSosedi=0;
- for(i=0;i<n;i++){
- for(j=0;j<n;j++){
- sumaSosedi=0;
- //sosed gore
- if(i>0 && matrica[i-1][j]>0){
- sumaSosedi+=matrica[i-1][j];
- }
- //sosed levo
- if(j>0 && matrica[i][j-1]>0){
- sumaSosedi+=matrica[i][j-1];
- }
- //sosed dole
- if(i<n-1 && matrica[i+1][j]>0){
- sumaSosedi+=matrica[i+1][j];
- }
- //sosed desno
- if(j<n-1 && matrica[i][j+1]>0){
- sumaSosedi+=matrica[i][j+1];
- }
- novaMatrica[i][j]=sumaSosedi;
- }
- }
- for(i=0;i<n;i++){
- for(j=0;j<n;j++){
- printf("%d ",novaMatrica[i][j]);
- }
- printf("\n");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement