Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    1

    matrici

    ciao a tutti ,giusto per imparare sto realizzando un " pacchetto " dii programmi in C che abbia le seguenti caratteristiche:

    uno dei programmi legge da file una matrice quadrata (scritta da un altro prog con successo) e scrive su un altro file il risulatato della eliminazione di gauss (senza pivotng ma la versione semplificata)..
    ed il valore deldeterminante....


    lo scopo è di ripetere l'esecuzione del pacchetto un numero grande di volte e siccome la matrice di partenza è sempre diversa , studiare la distribuzione o istogramma del determinante .....


    mi potete dare qualche consiglio? e poi guardate cosa mi da in output il programma (che è compilato senza errori)

    velo posto
    ma premetto che questa versione è di prova: nn dovrebbe applicare nessun algoritmo alla matrice ma solo ristamparla ugualle in un altro file,,,,giusto per vedere l'uso di fscanf con gli array...poi parliamo della eiminazione se vedo che nn trovo soluzioni
    grazie in anticipo

    codice:
    #include <stdio.h> 
    #include <stdlib.h>
    
    
    #define MAXCOL 10
    
    
    int i,j;
    double  mat[MAXCOL][MAXCOL];  
    double  triang[MAXCOL][MAXCOL];
    double det ;	
    
    
    double eliminazione (double  mat[MAXCOL][MAXCOL]); 
    double determinante (double  triang[MAXCOL][MAXCOL] );
    
    
    
    int main (){
    double det ;
    double mat [MAXCOL][MAXCOL];
    
    FILE *outfile ;
    FILE *outfile1 ;
    outfile1 = fopen("matrici.dat", "r");
    outfile = fopen("det.dat", "w");
    
    
     
    for (i=0 ;  i<MAXCOL;i++){
      for (j= 0; j< MAXCOL;j++){
    fscanf(outfile1, "%f \n ", &mat[i][j]);
    printf("%f        " , mat [i][j]);
    
      }
      
    printf("\n");
    
    }
    
    /*
    for (i=0 ;  i<MAXCOL;i++){
      for (j= 0; j< MAXCOL;j++){
    
    
      fprintf (outfile ,"%f                                         ",mat[i][j] );
      }
    fprintf(outfile, "\n           ");
    } 	
    */
    triang[i][j] = eliminazione (mat) ;
    
    det = determinante (triang);
     //printf("\n\n\n" );
     // printf("%f\n", det );
    fclose (outfile);
    fclose (outfile1);
    return 0;
     }
    
    
    double eliminazione ( double mat [MAXCOL][MAXCOL]) {
      int i,j,k;
      double triang [MAXCOL][MAXCOL];
      double  tmp[MAXCOL][MAXCOL];
    
    
    
        for (k=0 ; k < MAXCOL;  k++){
      
    	for (i = k +1 ;i < MAXCOL; i++){
          
          
          
          tmp [i][k] =  mat[i][k] ;
          
          for (j = k; j < MAXCOL +1 ; j ++ ){
    	//triang [i][j]  =  - tmp/ mat[i][k] ;
        }
        }    
    }
          
     return triang[MAXCOL][MAXCOL] ;
     
    }
      
      double determinante (double triang [MAXCOL][MAXCOL]){
      int i;
      double det = 1; 
      for (i =0 ; i< MAXCOL ; i++){
        det *= triang [i][i];
      }
      
      return det;
      }

  2. #2
    1) forum sbagliato
    2) usa i tag code!
    max

    Silence is better than bullshit.
    @mmarcon
    jHERE, Maps made easy

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    Invito anche a leggere il Regolamento interno per conoscere le norme di partecipazione.

    I tag CODE li aggiungo io, come il linguaggio di programmazione nel titolo (che provvederò a sistemare, per dargli una forma consona).

    PS: L'output del programma lo devi postare tu... non puoi chiedere alla gente di copiare/incollare, compilare ed eseguire il tuo codice.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.