| Prethodna tema :: Sljedeća tema   | 
	
	
	
		| Autor/ica | 
		Poruka | 
	
	
		vsego Site Admin
  
  
  Pridružen/a: 06. 10. 2002. (22:07:09) Postovi: (3562)16 
Spol:   
Lokacija: /sbin/init 
		 | 
		
			
				 Postano: 13:43 uto, 28. 4. 2009    Naslov:  | 
				            | 
			 
			
				
  | 
			 
			
				| 
                                         Pa, da. :) Suma praznog skupa (koji sadrzi nula brojeva) je taman koliko zelis (nula), a prazan skup mozes izabrati na tocno jedan nacin: da uzmes nula dvojki, nula trojki i nula petica. 8) 
					
					Pa, da.   Suma praznog skupa (koji sadrzi nula brojeva) je taman koliko zelis (nula), a prazan skup mozes izabrati na tocno jedan nacin: da uzmes nula dvojki, nula trojki i nula petica.  
					_________________ U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
 
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.   
					
					
					
				 | 
			 
		  | 
	
	
		| [Vrh] | 
		 | 
	
	
		malena Forumaš(ica)
  
 
  Pridružen/a: 27. 03. 2009. (16:43:42) Postovi: (62)16 
Spol:   
Lokacija: ... 
		 | 
		
			
				 Postano: 15:48 uto, 28. 4. 2009    Naslov:  | 
				            | 
			 
			
				
  | 
			 
			
				| 
                                         [code:1]#include <stdio.h>
 #include <stdlib.h>
 
 void ucitaj(double z[10][10], int n){
      int i, j;
      for(i=0; i<n; i++){
               for(j=0; j<n; j++) scanf("%lg", &z[i][j]);
               }
      return;
      }
      
 void ispis(double z[10][10], int n){
      int i, j;
      for(i=0; i<n; i++){
               for(j=0; j<n; j++) printf("%lg  ", z[i][j]);
               printf("\n");
               }
      return;
      }
      
 void transponiraj(double z[10][10], int n){
      int i, j;
      for(i=0; i<n; i++){
               for(j=i+1; j<n; j++){
                          double tmp=z[i][j];
                          z[i][j]=z[j][i];
                          z[j][i]=tmp;
                          }
                          }
               return;
               }
               
 int main(){
     int i, j, n;
     double a[10][10], b[10][10], x[10][10], y[10][10];
     
     printf("n=");
     scanf("%d", &n);
     
     printf("\nUpisite elemente matrice:\n");
     ucitaj(x, n);
     printf("\nVasa matrica:\n");
     ispis(x, n);
     
     printf("\n");
     y[10][10]=0;
     for(i=0; i<n; i++){
               for(j=0; j<n; j++) y[i][j]=x[i][j];
               }
     transponiraj(x, n);
     printf("\nTransponirana matrica:\n");
     ispis(x, n);
     
     a[10][10]=0;
     b[10][10]=0;
     
     for(i=0; i<n; i++){
              for(j=0; j<n; j++){
                       a[i][j]=1/2*(y[i][j]+x[i][j]);
                       }
                       }
     printf("\nMatrica a:\n");
     ispis(a, n);
     for(i=0; i<n; i++){
              for(j=0; j<n; j++){
                       b[i][j]=1/2*(y[i][j]-x[i][j]);
                       }
                       }
     
     printf("\nMatrica b:\n");
     ispis(b, n);
     
     system("pause");
     return 0;
 }
     
     
     
     
 [/code:1] 
  [size=9][color=#999999]Added after 3 minutes:[/color][/size]
   ako bi mi netko mogao pomoci rijesiti zadatak 3.20 u seginoj skripti. zasto mi se vrijednosti ne spremaju u matrice a i b?
 moze li se ovako napisati funkcija transponiraj? 
 zasto mi je uvik 0 na mjestu [0][1]?
   :bigcry: 
					
					 	  | Kod: | 	 		  #include <stdio.h>
 
#include <stdlib.h>
 
 
void ucitaj(double z[10][10], int n){
 
     int i, j;
 
     for(i=0; i<n; i++){
 
              for(j=0; j<n; j++) scanf("%lg", &z[i][j]);
 
              }
 
     return;
 
     }
 
     
 
void ispis(double z[10][10], int n){
 
     int i, j;
 
     for(i=0; i<n; i++){
 
              for(j=0; j<n; j++) printf("%lg  ", z[i][j]);
 
              printf("\n");
 
              }
 
     return;
 
     }
 
     
 
void transponiraj(double z[10][10], int n){
 
     int i, j;
 
     for(i=0; i<n; i++){
 
              for(j=i+1; j<n; j++){
 
                         double tmp=z[i][j];
 
                         z[i][j]=z[j][i];
 
                         z[j][i]=tmp;
 
                         }
 
                         }
 
              return;
 
              }
 
              
 
int main(){
 
    int i, j, n;
 
    double a[10][10], b[10][10], x[10][10], y[10][10];
 
    
 
    printf("n=");
 
    scanf("%d", &n);
 
    
 
    printf("\nUpisite elemente matrice:\n");
 
    ucitaj(x, n);
 
    printf("\nVasa matrica:\n");
 
    ispis(x, n);
 
    
 
    printf("\n");
 
    y[10][10]=0;
 
    for(i=0; i<n; i++){
 
              for(j=0; j<n; j++) y[i][j]=x[i][j];
 
              }
 
    transponiraj(x, n);
 
    printf("\nTransponirana matrica:\n");
 
    ispis(x, n);
 
    
 
    a[10][10]=0;
 
    b[10][10]=0;
 
    
 
    for(i=0; i<n; i++){
 
             for(j=0; j<n; j++){
 
                      a[i][j]=1/2*(y[i][j]+x[i][j]);
 
                      }
 
                      }
 
    printf("\nMatrica a:\n");
 
    ispis(a, n);
 
    for(i=0; i<n; i++){
 
             for(j=0; j<n; j++){
 
                      b[i][j]=1/2*(y[i][j]-x[i][j]);
 
                      }
 
                      }
 
    
 
    printf("\nMatrica b:\n");
 
    ispis(b, n);
 
    
 
    system("pause");
 
    return 0;
 
}
 
    
 
    
 
    
 
    
 
 | 	   
 
 
Added after 3 minutes:
 
 
 ako bi mi netko mogao pomoci rijesiti zadatak 3.20 u seginoj skripti. zasto mi se vrijednosti ne spremaju u matrice a i b?
 
moze li se ovako napisati funkcija transponiraj? 
 
zasto mi je uvik 0 na mjestu [0][1]?
 
   
					
 
  
					
					
					
				 | 
			 
		  | 
	
	
		| [Vrh] | 
		 | 
	
	
		Luuka Forumaš(ica)
  
  
  Pridružen/a: 13. 02. 2007. (20:34:54) Postovi: (925)16 
Spol:   
Lokacija: Hakuna Matata 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		vsego Site Admin
  
  
  Pridružen/a: 06. 10. 2002. (22:07:09) Postovi: (3562)16 
Spol:   
Lokacija: /sbin/init 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		Luuka Forumaš(ica)
  
  
  Pridružen/a: 13. 02. 2007. (20:34:54) Postovi: (925)16 
Spol:   
Lokacija: Hakuna Matata 
		 | 
		
			
				 Postano: 16:17 uto, 28. 4. 2009    Naslov:  | 
				            | 
			 
			
				
  | 
			 
			
				| 
                                         A do čega je ona nula koja se pojavljivala na (0,1), tj (1,0) nakon transponiranja? Do compilera? Jer dobro učita matricu i onda kad se stavi ispis unutar fje transponiraj, prije for petlji, onda dođe 0 tamo di nije...  :? 
					
					A do čega je ona nula koja se pojavljivala na (0,1), tj (1,0) nakon transponiranja? Do compilera? Jer dobro učita matricu i onda kad se stavi ispis unutar fje transponiraj, prije for petlji, onda dođe 0 tamo di nije...   
					_________________ "Bolje bi prolazio na faxu da sam na drogama nego na netu" - by a friend of mine
 
"Poslije spavanja doma spavanje bilo di mi je najdraža stvar" - by the same guy    
					
					
					
				 | 
			 
		  | 
	
	
		| [Vrh] | 
		 | 
	
	
		malena Forumaš(ica)
  
 
  Pridružen/a: 27. 03. 2009. (16:43:42) Postovi: (62)16 
Spol:   
Lokacija: ... 
		 | 
		
			
				 Postano: 16:27 uto, 28. 4. 2009    Naslov:  | 
				            | 
			 
			
				
  | 
			 
			
				| 
                                         sve ucita i onda ma koliko ja elemenata zadala na mjestu [0][1] je uvik 0. ako oces probaj za n=3 i 1, 2, 3, 4, 5, 6, 7, 8, 9.
 sve transponira, a 4 se izgubi. pozz. 
					
					sve ucita i onda ma koliko ja elemenata zadala na mjestu [0][1] je uvik 0. ako oces probaj za n=3 i 1, 2, 3, 4, 5, 6, 7, 8, 9.
 
sve transponira, a 4 se izgubi. pozz.
					
 
  
					
					
					
				 | 
			 
		  | 
	
	
		| [Vrh] | 
		 | 
	
	
		Luuka Forumaš(ica)
  
  
  Pridružen/a: 13. 02. 2007. (20:34:54) Postovi: (925)16 
Spol:   
Lokacija: Hakuna Matata 
		 | 
		
			
				 Postano: 16:38 uto, 28. 4. 2009    Naslov:  | 
				            | 
			 
			
				
  | 
			 
			
				| 
                                         [quote="malena"]sve ucita i onda ma koliko ja elemenata zadala na mjestu [0][1] je uvik 0. ako oces probaj za n=3 i 1, 2, 3, 4, 5, 6, 7, 8, 9.
 sve transponira, a 4 se izgubi. pozz.[/quote]
 
 Sa ovim mojim promjenama je ok... ne dođe 0... evo ti i kod:
 
 [code:1]#include <stdio.h>
 #include <stdlib.h>
 
 void ucitaj(double z[10][10], int n){
      int i, j;
      for(i=0; i<n; i++){
               for(j=0; j<n; j++) scanf("%lg", &z[i][j]);
               }
     
      }
      
 void ispis(double z[10][10], int n){
      int i, j;
      for(i=0; i<n; i++){
               for(j=0; j<n; j++) printf("%lg  ", z[i][j]);
               printf("\n");
               }
   
      }
      
 void transponiraj(double z[10][10], int n){
      int i, j;
      
      for(i=0; i<n-1; i++)
               for(j=i+1; j<n; j++)
               {
                          double tmp=z[i][j];
                          z[i][j]=z[j][i];
                          z[j][i]=tmp;
                          }
                          
 
 }
              
 int main(){
     int i, j, n;
     double a[10][10], b[10][10], x[10][10], y[10][10];
    
     printf("n=");
     scanf("%d", &n);
    
     printf("\nUpisite elemente matrice:\n");
     ucitaj(x, n);
     printf("\nVasa matrica:\n");
     ispis(x, n);
    
     printf("\n");
     for(i=0; i<n; i++){
               for(j=0; j<n; j++) y[i][j]=x[i][j];
               }
     transponiraj(x, n);
     printf("\nTransponirana matrica:\n");
     ispis(x, n);
    
     
    
     for(i=0; i<n; i++){
              for(j=0; j<n; j++){
                       a[i][j]=(y[i][j]+x[i][j])/2.0;
                       }
                       }
     printf("\nMatrica a:\n");
     ispis(a, n);
     for(i=0; i<n; i++){
              for(j=0; j<n; j++){
                       b[i][j]=(y[i][j]-x[i][j])/2.0;
                       }
                       }
    
     printf("\nMatrica b:\n");
     ispis(b, n);
    
     system("pause");
     return 0;
 } [/code:1] 
					
					 	  | malena (napisa): | 	 		  sve ucita i onda ma koliko ja elemenata zadala na mjestu [0][1] je uvik 0. ako oces probaj za n=3 i 1, 2, 3, 4, 5, 6, 7, 8, 9.
 
sve transponira, a 4 se izgubi. pozz. | 	  
 
 
Sa ovim mojim promjenama je ok... ne dođe 0... evo ti i kod:
 
 
 	  | Kod: | 	 		  #include <stdio.h>
 
#include <stdlib.h>
 
 
void ucitaj(double z[10][10], int n){
 
     int i, j;
 
     for(i=0; i<n; i++){
 
              for(j=0; j<n; j++) scanf("%lg", &z[i][j]);
 
              }
 
    
 
     }
 
     
 
void ispis(double z[10][10], int n){
 
     int i, j;
 
     for(i=0; i<n; i++){
 
              for(j=0; j<n; j++) printf("%lg  ", z[i][j]);
 
              printf("\n");
 
              }
 
  
 
     }
 
     
 
void transponiraj(double z[10][10], int n){
 
     int i, j;
 
     
 
     for(i=0; i<n-1; i++)
 
              for(j=i+1; j<n; j++)
 
              {
 
                         double tmp=z[i][j];
 
                         z[i][j]=z[j][i];
 
                         z[j][i]=tmp;
 
                         }
 
                         
 
 
}
 
             
 
int main(){
 
    int i, j, n;
 
    double a[10][10], b[10][10], x[10][10], y[10][10];
 
   
 
    printf("n=");
 
    scanf("%d", &n);
 
   
 
    printf("\nUpisite elemente matrice:\n");
 
    ucitaj(x, n);
 
    printf("\nVasa matrica:\n");
 
    ispis(x, n);
 
   
 
    printf("\n");
 
    for(i=0; i<n; i++){
 
              for(j=0; j<n; j++) y[i][j]=x[i][j];
 
              }
 
    transponiraj(x, n);
 
    printf("\nTransponirana matrica:\n");
 
    ispis(x, n);
 
   
 
    
 
   
 
    for(i=0; i<n; i++){
 
             for(j=0; j<n; j++){
 
                      a[i][j]=(y[i][j]+x[i][j])/2.0;
 
                      }
 
                      }
 
    printf("\nMatrica a:\n");
 
    ispis(a, n);
 
    for(i=0; i<n; i++){
 
             for(j=0; j<n; j++){
 
                      b[i][j]=(y[i][j]-x[i][j])/2.0;
 
                      }
 
                      }
 
   
 
    printf("\nMatrica b:\n");
 
    ispis(b, n);
 
   
 
    system("pause");
 
    return 0;
 
}  | 	  
					_________________ "Bolje bi prolazio na faxu da sam na drogama nego na netu" - by a friend of mine
 
"Poslije spavanja doma spavanje bilo di mi je najdraža stvar" - by the same guy    
					
					
					
				 | 
			 
		  | 
	
	
		| [Vrh] | 
		 | 
	
	
		malena Forumaš(ica)
  
 
  Pridružen/a: 27. 03. 2009. (16:43:42) Postovi: (62)16 
Spol:   
Lokacija: ... 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		Luuka Forumaš(ica)
  
  
  Pridružen/a: 13. 02. 2007. (20:34:54) Postovi: (925)16 
Spol:   
Lokacija: Hakuna Matata 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		vsego Site Admin
  
  
  Pridružen/a: 06. 10. 2002. (22:07:09) Postovi: (3562)16 
Spol:   
Lokacija: /sbin/init 
		 | 
		
			
				 Postano: 17:01 uto, 28. 4. 2009    Naslov:  | 
				            | 
			 
			
				
  | 
			 
			
				| 
                                         Ona nula dodje zbog
 [tt]y[10][10]=0;[/tt]
 Naime, polje [tt]y[/tt] ima indekse od 0 do 9, pa je element [tt]y[10][10][/tt] isto sto i [tt]x[1][0][/tt], jer se varijable natrpaju u memoriju jedna za drugom, redom suprotinim od nabrojanog, pa [tt]x[/tt] u memoriji dodje odmah iza [tt]y[/tt]. :)
 
 Jednostavan test: stavi [tt]y[10][10] = 1719;[/tt] i u matricu ucitaj samo neke sitne brojeve, pa ces vidjeti da ti je u [tt]x[1][0][/tt] uletio bas taj 1719 (koji transponiranjem prijedje u [tt]x[0][1][/tt]). 8) 
					
					Ona nula dodje zbog
 
y[10][10]=0;
 
Naime, polje y ima indekse od 0 do 9, pa je element y[10][10] isto sto i x[1][0], jer se varijable natrpaju u memoriju jedna za drugom, redom suprotinim od nabrojanog, pa x u memoriji dodje odmah iza y.  
 
 
Jednostavan test: stavi y[10][10] = 1719; i u matricu ucitaj samo neke sitne brojeve, pa ces vidjeti da ti je u x[1][0] uletio bas taj 1719 (koji transponiranjem prijedje u x[0][1]).  
					_________________ U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
 
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.   
					
					
					
				 | 
			 
		  | 
	
	
		| [Vrh] | 
		 | 
	
	
		malena Forumaš(ica)
  
 
  Pridružen/a: 27. 03. 2009. (16:43:42) Postovi: (62)16 
Spol:   
Lokacija: ... 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		Luuka Forumaš(ica)
  
  
  Pridružen/a: 13. 02. 2007. (20:34:54) Postovi: (925)16 
Spol:   
Lokacija: Hakuna Matata 
		 | 
		
			
				 Postano: 17:27 uto, 28. 4. 2009    Naslov:  | 
				            | 
			 
			
				
  | 
			 
			
				| 
                                         [quote="malena"]ma najbolje je poslusati lukin savjet i nista ne inicijalizirati. ja sam samo htjela da cijela matrica bude inicijalizirana na 0, ali compiler ne prihvaca y[10][10]={0}, pa sam onda nesto sto ne pripada mom programu inicijalizirala na 0. nadan se da necu takvu gresku ponoviti na kolokviju... :neznam:[/quote]
 
 Inicijaliziraj ono što programu treba, tipa suma=0, produkt=1 i sl... 
 
 A matricu y možeš inicijalizirat na početku, dakle:
 [code:1]double y[10][10]={0.0};[/code:1] ali stvarno nije nužno... bolje ne diraj ono kaj ti ne treba... :D 
					
					 	  | malena (napisa): | 	 		  ma najbolje je poslusati lukin savjet i nista ne inicijalizirati. ja sam samo htjela da cijela matrica bude inicijalizirana na 0, ali compiler ne prihvaca y[10][10]={0}, pa sam onda nesto sto ne pripada mom programu inicijalizirala na 0. nadan se da necu takvu gresku ponoviti na kolokviju...   | 	  
 
 
Inicijaliziraj ono što programu treba, tipa suma=0, produkt=1 i sl... 
 
 
A matricu y možeš inicijalizirat na početku, dakle:
 
 	  | Kod: | 	 		  | double y[10][10]={0.0}; | 	   ali stvarno nije nužno... bolje ne diraj ono kaj ti ne treba...  
					_________________ "Bolje bi prolazio na faxu da sam na drogama nego na netu" - by a friend of mine
 
"Poslije spavanja doma spavanje bilo di mi je najdraža stvar" - by the same guy    
					
					
					
				 | 
			 
		  | 
	
	
		| [Vrh] | 
		 | 
	
	
		malena Forumaš(ica)
  
 
  Pridružen/a: 27. 03. 2009. (16:43:42) Postovi: (62)16 
Spol:   
Lokacija: ... 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		Cobs Forumaš(ica)
  
  
  Pridružen/a: 21. 01. 2008. (13:32:15) Postovi: (206)16 
Spol:   
Lokacija: Geto 
		 | 
		
			
				 Postano: 19:51 uto, 28. 4. 2009    Naslov:  | 
				            | 
			 
			
				
  | 
			 
			
				| 
                                         [quote="malena"]jedno pitanje: kad pisem funkciju ucitaj niz, i radim preko pokazivaca, moram li u funkciji napisati x=(int*)malloc(n*sizeof(int)) recimo?
 ja to ne napisem u funkciji, vec u glavnom programu i ona svejedno radi, ali me zanima da li ce se to traziti na kolokviju?
 hvala[/quote]
 
  ako se funkcija zove ucitaj_niz mislim da bi ona trebala to raditi, a ne da ti stavljas ispred svake uporabe te funkcije alokaciju memorije 
					
					 	  | malena (napisa): | 	 		  jedno pitanje: kad pisem funkciju ucitaj niz, i radim preko pokazivaca, moram li u funkciji napisati x=(int*)malloc(n*sizeof(int)) recimo?
 
ja to ne napisem u funkciji, vec u glavnom programu i ona svejedno radi, ali me zanima da li ce se to traziti na kolokviju?
 
hvala | 	  
 
 
 ako se funkcija zove ucitaj_niz mislim da bi ona trebala to raditi, a ne da ti stavljas ispred svake uporabe te funkcije alokaciju memorije
					
 
  
					
					
					
				 | 
			 
		  | 
	
	
		| [Vrh] | 
		 | 
	
	
		bimar Forumaš(ica)
  
  
  Pridružen/a: 16. 11. 2008. (14:45:25) Postovi: (61)16 
Lokacija: arkadija 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		markotron Forumaš(ica)
  
 
  Pridružen/a: 26. 10. 2008. (12:07:29) Postovi: (95)16 
Spol:   
Lokacija: Umag 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		malena Forumaš(ica)
  
 
  Pridružen/a: 27. 03. 2009. (16:43:42) Postovi: (62)16 
Spol:   
Lokacija: ... 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		bimar Forumaš(ica)
  
  
  Pridružen/a: 16. 11. 2008. (14:45:25) Postovi: (61)16 
Lokacija: arkadija 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		malena Forumaš(ica)
  
 
  Pridružen/a: 27. 03. 2009. (16:43:42) Postovi: (62)16 
Spol:   
Lokacija: ... 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		bimar Forumaš(ica)
  
  
  Pridružen/a: 16. 11. 2008. (14:45:25) Postovi: (61)16 
Lokacija: arkadija 
		 | 
		 | 
	
	
		| [Vrh] | 
		 | 
	
	
		 |