PDA

View Full Version : [Turbo pascal 7] programma per la scuola


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

yorkeiser
15-03-2007, 14:02
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];

Da quel poco che ricordo di Pascal, questa è sicuramente sbagliata. Casomai sarà

det:=matrice[1,1]*matrice[2,2]*matrice[... etc


Per spezzare la stringa, basta che fai due writeln

writeln ('Per ottenere la matrice inversa dobbiamo prima controllare ');
writeln('se ciò è possibile calcolando il determinante della matrice.');

brutus89
15-03-2007, 14:31
ti ringrazio adesso modifico tutto

ciauz ;)