Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-01-2010, 15:22   #1
Stallwars
Junior Member
 
Iscritto dal: Dec 2009
Messaggi: 10
[C] Calcolo det matrice

Raga ho provato a sviluppare un programma per il calcolo del determinante di una matrice max 1000 per 1000 ma mi da errore: ARITHMETIC ON POINTER AN INCOMPLETE TYPE... cioè??
Help!!! xD

Eccovi il codice se può servire... L'errore me lo da sulle righe 119 e 139.
Credo scambi la moltiplicazione per un puntatore ma nn so come risolvere.

Codice:
#include<stdio.h>


void load(int *h, int x, int y);
long determinante (long X[][], int x);
long totdet(long X[][], long mx, int h);


void 
main ()
{

long M[1000][1000];
int i=1, j=1, x, y;

printf("\t\tCALCOLO DETERMINANTE MATRICI QUADRATE.\n
\t\tIL CALCOLO VIENE ESEGUITO SU ELEMENTI\n
\t\tCOMPRESI TRA -3000 e 3000.\n\n
\t\tDIMENSIONE MASSIMA MATRICE: 1000x1000\n\n");







//CARICAMENTO GRANDEZZA MATRICE
          
do
{
     if(i<1||i>1000) printf("\n\nIl valore inserito e' errato, inserire un valore compreso tra 1 e 1000.");
                              
     printf("\n\n\n*Inserire il numero di righe (e colonne) della matrice: ");
     scanf("%d",&i);
}
while(i<1||i>1000);


j=i;


printf("\n\n\n\n\n");


do
{
        for(x=0; x<i; x++)
        {
        load(&M[y][x], y, x);    
        }
        
        y++;
}
while(y<j);


printf("\n\n\n\t\tIl determinante della matrice è: %ld", determinante(M ,x ));


system("PAUSE");

}



_______________FINE MAIN_______________





void 
load(int *h, int y, int x)
{
       do
       {
        
        if(*h<-3000||*h>3000) printf("\n\nINSERISCI UN VALORE CORRETTO\n\n");
        
        printf("***Inserire l'elemento di indici %d,%d della matrice: ", y+1, x+1);
        scanf("%d",&*h);
        
        }
        while(*h<-3000||*h>3000);
     
}










long 
determinante(long X[][], int x)
{
      
          int h, DET=1, TOTDET;


          for(h=0;h<x-1;h++)
          {
             DET=X[h][h]*(DET);        /*vedi teorema di laplace*/
          }

          h++;

          TOTDET=totdet(X , DET, h);

          return TOTDET;

     }








long 
totdet(long X[][], long mx, int h)
{

         return mx*(((X[h][h])*(X[h+1][h+1]))-((X[h+1][h])*(X[h][h+1])));

     }

Ultima modifica di Stallwars : 24-01-2010 alle 14:08.
Stallwars è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2010, 16:17   #2
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Illeggibile
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2010, 16:49   #3
Stallwars
Junior Member
 
Iscritto dal: Dec 2009
Messaggi: 10
Scusate... Aggiusto e riposto. =)

Aggiungo: fino al caricamento tutto ok. Le righe sono nella funzione "totdet" e nella funzione "determinante"
Il resto dovrebbe fungere dato k l'ho testato.

Ultima modifica di Stallwars : 23-01-2010 alle 17:00.
Stallwars è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2010, 17:23   #4
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Il calcolo del determinante secondo Laplace e' ricorsivo, ma nel codice non vedo la ricorsione.
E non penso sia opportuno supportare una matrice 1000x1000 e poi inserire i dati uno ad uno con una scanf...
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2010, 14:02   #5
Stallwars
Junior Member
 
Iscritto dal: Dec 2009
Messaggi: 10
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Il calcolo del determinante secondo Laplace e' ricorsivo, ma nel codice non vedo la ricorsione.
E non penso sia opportuno supportare una matrice 1000x1000 e poi inserire i dati uno ad uno con una scanf...

No la ricorsione c'è... Praticamente l'indice h punta in maniera incrementale agli elementi con indici eguali... E' come se applicassi tante volte laplace finchè non ottieni un minore 2x2... A quel punto calcola il minore.

Per quanto riguarda la scanf... Forse c'è qlke altro metodo + pratico! xD
Cmq credo mi riconosca le moltiplicazioni come puntatori
Stallwars è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2010, 15:12   #6
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Guarda che stai praticamente moltiplicando solo i termini della diagonale maggiore, e poi il determinante delll'ultima sotto-matrice 2X2 in basso a destra.
Mancano tutti gli altri contributi, ed e' li' che ci si diverte.

Inutile correggere la versione corrente quando comunque non funzionerebbe.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2010, 16:58   #7
Stallwars
Junior Member
 
Iscritto dal: Dec 2009
Messaggi: 10
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Guarda che stai praticamente moltiplicando solo i termini della diagonale maggiore, e poi il determinante delll'ultima sotto-matrice 2X2 in basso a destra.
Mancano tutti gli altri contributi, ed e' li' che ci si diverte.

Inutile correggere la versione corrente quando comunque non funzionerebbe.
Cavolo... Erroraccio nell'interpretazione del teorema... xD
Stallwars è offline   Rispondi citando il messaggio o parte di esso
Old 22-04-2013, 12:17   #8
coidrok
Member
 
L'Avatar di coidrok
 
Iscritto dal: Jan 2009
Messaggi: 123
io mi son tenuto un pò più stretto.Qui potete trovare un file eseguibile java per calcolare determinante e rango di matrici 3x3
http://uosew.weebly.com/software.html
coidrok è offline   Rispondi citando il messaggio o parte di esso
Old 22-04-2013, 13:20   #9
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Se vuoi restare su questo thread devi postare il codice, che e' quello che ci interessa.
Se invece si tratta solo di eseguibile, devi spostarti su "Programmi e Utility"

Poi vabbe', il thread originale era di 3 anni fa
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Un piccolo accessorio trasforma lo smart...
Dopo 370 anni il Cyphral Distich non è p...
Oppo Find X10, X10 Pro Max e X10 E: conf...
Dal microscopio all'IA: un cervello di i...
Cyberpunk 2077 arriverà su Battle...
Altro che divieto: interi pallet di GeFo...
QNAPTS-h966TX, il NAS per chi fa editing...
Il trucco semplicissimo per installare W...
Apple rinvia due novità di iOS 27...
Una memoria ferroelettrica raggiunge 10 ...
Honor Magic 9, Pro Max e Super Edition: ...
24 offerte Amazon da non perdere, dalla ...
Apple starebbe progettando i propri cont...
Niente borsa per OpenAI prima del 2027: ...
Meta potrebbe aver mostrato in anticipo ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:18.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v