brutus89
14-03-2007, 11:24
Salve a tutti, domani compito di mate e ci sarà come al solito anche un quesito di informatica dove scriveremo il listato di un programma realizzato con turbo pascal 7
Per esercitarmi avevo pensato di creare un programma che visualizzasse la matrice inversa da una matrice data immettendo i dati da tastiera.
Innanzitutto devo calcolare il determinante della matrice data e verificare se diverso da zero (e quindi poter ricavare l'inversa) oppure uguale a zero (e non poterla ricavare).
Il primo errore che mi ha rilevato turbo pascal è...line too long...avevo scritto troppo :D come posso portare a capo senza che poi mi spunti il seguente errore: string constant exceeds line cioè l'errore che mi fa notare che manca l'apice ( ' ) alla fine della stringa?
Altro errore durante il calcolo del determinante....ho dichiarato la variabile det sia come integer che come real ma mi da sempre l'errore type mismatch
ecco il listato
program inversa;
uses crt;
type matrice= array[1..3,1..3] of integer;
var mat: matrice;
i,j: integer;
det: integer;
begin
clrscr;
writeln('Inserisci i valori della matrice');
writeln;
for i:=1 to 3 do
for j:=1 to 3 do begin
readln(mat[i,j]);
writeln (mat[i,j]);
end;
writeln
('Per ottenere la matrice inversa dobbiamo prima controllare se ciè è possibile calcolando il determinante della matrice.');
det:=[1,1]*[2,2]*[3,3]+[2,1]*[3,2]*[3,1]+[1,2]*[2,3]*[3,1]-[1,3]*[2,2]*[3,1]-[2,3]*[3,2]*[1,1]-[1,2]*[2,1]*[3,3];
writeln ('Il determinante della matrice è: ', det);
readln;
end.
Ciao a tutti e grazie in anticipo
Per esercitarmi avevo pensato di creare un programma che visualizzasse la matrice inversa da una matrice data immettendo i dati da tastiera.
Innanzitutto devo calcolare il determinante della matrice data e verificare se diverso da zero (e quindi poter ricavare l'inversa) oppure uguale a zero (e non poterla ricavare).
Il primo errore che mi ha rilevato turbo pascal è...line too long...avevo scritto troppo :D come posso portare a capo senza che poi mi spunti il seguente errore: string constant exceeds line cioè l'errore che mi fa notare che manca l'apice ( ' ) alla fine della stringa?
Altro errore durante il calcolo del determinante....ho dichiarato la variabile det sia come integer che come real ma mi da sempre l'errore type mismatch
ecco il listato
program inversa;
uses crt;
type matrice= array[1..3,1..3] of integer;
var mat: matrice;
i,j: integer;
det: integer;
begin
clrscr;
writeln('Inserisci i valori della matrice');
writeln;
for i:=1 to 3 do
for j:=1 to 3 do begin
readln(mat[i,j]);
writeln (mat[i,j]);
end;
writeln
('Per ottenere la matrice inversa dobbiamo prima controllare se ciè è possibile calcolando il determinante della matrice.');
det:=[1,1]*[2,2]*[3,3]+[2,1]*[3,2]*[3,1]+[1,2]*[2,3]*[3,1]-[1,3]*[2,2]*[3,1]-[2,3]*[3,2]*[1,1]-[1,2]*[2,1]*[3,3];
writeln ('Il determinante della matrice è: ', det);
readln;
end.
Ciao a tutti e grazie in anticipo