fudencius 0 Denunciar post Postado Junho 3, 2005 pessoal estou com um probleminha no assunto. primeiramente fiz uma matriz dentro de outra matriz (3 dimensoes?) usando o registro. criei uma matriz constante para ser comparada com as outras ao final, mas da o error de tipos diferentes, tencei criar uma constante do mesmo tipo de registro da outra matriz, não ajudando em nada! por isso fiz esse pequeno algoritmo para alguém me explicar! pois se esse for resolvido o outro tambem será! program teste; uses crt; const abobora: array[0..1] of integer = (2,3); var arroz: array[0..1] of integer; i: integer; begin clrscr; for i:=0 to 1 do begin readln(arroz); end; if arroz = abobora then writeln('igual') else writeln('diferente'); readkey; end. * o problema está na comparação da constante com a matriz digitada! espero que possam me ajudar, obrigado! qualquer coisa Compartilhar este post Link para o post Compartilhar em outros sites
Graymalkin 0 Denunciar post Postado Junho 4, 2005 Você não pode comparar dois vetores desse jeito (ah, isso que você está utilizando são vetores e não matrizes, pois só possuem 1 dimensão). Você tem que comparar elemento por elemento para saber se elas são iguais. Segue um exemplo disso: program teste;uses crt;const abobora: array[0..1] of integer = (2,3);var arroz: array[0..1] of integer; i: integer; igual : boolean;begin igual := True; clrscr; for i:=0 to 1 do readln(arroz[i]); for i:=0 to 1 do if arroz[i] <> abobora[i] then igual := False; if igual then writeln('igual') else writeln('diferente'); readkey;end. Certo? ;) Abraços, Graymalkin Compartilhar este post Link para o post Compartilhar em outros sites
fudencius 0 Denunciar post Postado Junho 5, 2005 Você não pode comparar dois vetores desse jeito (ah, isso que você está utilizando são vetores e não matrizes, pois só possuem 1 dimensão). Você tem que comparar elemento por elemento para saber se elas são iguais. Segue um exemplo disso: program teste;uses crt;const abobora: array[0..1] of integer = (2,3);var arroz: array[0..1] of integer; i: integer; igual : boolean;begin igual := True; clrscr; for i:=0 to 1 do readln(arroz[i]); for i:=0 to 1 do if arroz[i] <> abobora[i] then igual := False; if igual then writeln('igual') else writeln('diferente'); readkey;end.Certo? ;) Abraços, Graymalkin <{POST_SNAPBACK}> brigadao! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/hug.gif ( hehehe) finalmente uma alma bondosa responde a algum dos meus posts! é eu já sabia q só comparando um a um... mas dai fica mais trabalhoso de que sem usar uma constante! http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif Compartilhar este post Link para o post Compartilhar em outros sites