Isabelle_Andrade 0 Denunciar post Postado Julho 1, 2009 Bom dia! Estou fazendo um trabalho na faculdade, mas estou meio perdida. Na hora de compilar da erro. O código ainda não está pronto. Program matrizes; uses crt; const n = 2; {tamanho da matriz} type vet_matA = array[1..n,1..n] of real; vet_matB = array[1..n,1..n] of real; var i,j:integer; {variaveis de controle} matA: vet_matA; {variavel da matriz A} matB: vet_matB; {variavel da matriz B} opcao: char; {variavel que recebera a opcao que o usuario digitou no menu} som,sub,traspA,transpB,procura: real; {variaveis para operacoes do menu} verificaSimet: string; {variavel para verificar se sa matrizes sao simetricas} Begin clrScr; som:= 0; sub:= 0; {===================funcoes e procedimentos===================} {Procedimentos de preenchimento e leitura da matrizes::::::::::::::::::::::::::::::::::::} procedure lerMatA; {---------------------------> aqui esta o erro, o que esta faltando?} begin {Aqui o usuario preenche a matriz A::::::::::::::::::::::::::::::::::::::::::::::::::} for i:=1 to n do for j:=1 to n do begin writeln('Digite os valores da matriz A, linha ',i,' coluna ',j,':'); readln(matA[i,j]); end; end; procedure lerMatB; begin {Aqui o usuario preenche a matriz B::::::::::::::::::::::::::::::::::::::::::::::::::} for i:=1 to n do for j:=1 to n do begin writeln('Digite os valores da matriz B, linha ',i,' coluna ',j,':'); readln(matB[i,j]); end; {Fim do preenchimento da matriz B::::::::::::::::::::::::::::::::::::::::::::::::::::} end; {Funcao que monta o menu na tela:::::::::::::::::::::::::::::::::::::::::::::::::::::} function menu (matA,matB:var); begin writeln('Menu de opcoes:'); writeln(''); writeln('A: soma as matrizes (A+B)'); writeln('S: subtrai as matrizes (A-B)'); writeln('T: escreve a transposta de A'); writeln('R: escreve a transposta de B'); writeln('M: mostra as matrizes A e B'); writeln('V: verifica se A e B são simetricas'); writeln('P: procura um elemento em A e B'); writeln('F: finaliza o programa.'); readln(opcao); {recebe a opcao que o usuário digitou} menu:= opcao; end; {Funcao soma::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::} function soma(var matA,matB:real); begin for i:=1 to n do begin for j:=1 to n do begin som:= matA[i] + matB[i]; writeln(som' '); end; writeln(''); end menu; end; begin readln(matA,matB); som(matA,matB); end; {Funcao subtracao::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::} function subtracao(); begin for i:=1 to n do begin for j:=1 to n do begin sub:= matA[i] + matB[i]; writeln(sub' '); end; writeln(''); end menu; end; begin readln(matA,matB); sub'(matA,matB); end; {====================Codigo Principal====================} writeln('.::::::::Trabalhando com matrizes::::::::.'); begin lerMatA(matA); lerMatB(matB); end; {Executa a operacao que o usuario escolheu:::::::::::::::::::::::::::::::::::::::::::} While opcao <> F then begin if (opcao = A) or (opcao = a) do som(matA,matB); else if (opcao = S) or (opcao = s) do sub(matA,matB); else if (opcao = T) or (opcao = t) do transpA; else if (opcao = R) or (opcao = r) do transpB; else if (opcao = M) or (opcao = m) do begin mostraMatA; mostraMatB; end; else if (opcao = V) or (opcao = v) do verificaSimet; else if (opcao = P) or (opcao = p) do procura; else begin writeln('Você digitou uma opção inválida. Tente novamente!'); menu; end; end; {fim do while} Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Julho 1, 2009 Não qria ser chato, + ... ql o erro q ele apresenta? []s Compartilhar este post Link para o post Compartilhar em outros sites
Isabelle_Andrade 0 Denunciar post Postado Julho 1, 2009 você não é chato! Obrigada pela ajuda! o erro é: (43,3) Error: Ilegal expression (43,13) Fatal: syntax error, ";" expected but "identifier LERMATA" found Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Julho 1, 2009 Nessa parte: Begin clrScr; som:= 0; sub:= 0;teria q ter um end no final??e outra pascal é case-sensitive?? se for escreva clrscr; -- ou então cria tds as funções fora da principal, e depois faça a chamada delas lah dentro. é q n mecho com pascal, por isso a ajuda será um pouco dificil, + vamos lah Compartilhar este post Link para o post Compartilhar em outros sites
Isabelle_Andrade 0 Denunciar post Postado Julho 1, 2009 tem um end no final, é que não postei ai em cima. vou tentar o clrscr; o lance de crias as funções fora da principal...., eu n entendi.... testei o clrscr; , mas continua dando erro. Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Julho 1, 2009 veja como esse usuario fez no programa dele: http://forum.imasters.com.br/index.php?showtopic=351103 ele cria os procedimentos fora da principal. e no final ele cria a principal e faz as chamadas.. []s Compartilhar este post Link para o post Compartilhar em outros sites
Isabelle_Andrade 0 Denunciar post Postado Julho 1, 2009 ah... entendi... Vou arrumar desse jeito. assim que acabar volto aqui! Obrigada! Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Julho 1, 2009 ok, fico no aguardo ;D []s Compartilhar este post Link para o post Compartilhar em outros sites
Isabelle_Andrade 0 Denunciar post Postado Julho 1, 2009 Depois de limpar todos os erros..... FUNCIONOU!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! http://forum.imasters.com.br/public/style_emoticons/default/yay.gif \o/\o/\o/\o/\o/\o/\o/\o/\o/ Obrigada!!!!!!!!!!!!!!!!!!!!! Beijos Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Julho 1, 2009 q bom http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif []s --- conseguiw ver oq estava de errado? Compartilhar este post Link para o post Compartilhar em outros sites
Isabelle_Andrade 0 Denunciar post Postado Julho 1, 2009 consegui, tinha um monte de coisas erradas.. rsrsrsrss eram erros bobos... vlw Compartilhar este post Link para o post Compartilhar em outros sites