elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Ejercicios
| | | |-+  Duda Pascal
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda Pascal  (Leído 3,614 veces)
-iSiS-

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Duda Pascal
« en: 20 Enero 2010, 12:05 pm »

Hola! He hecho un prgrama que me permita ingresar los números en columna uno a uno de una matriz 4x4 y las imprima como matriz, y a continuación me saque el mayor elemento de la diagonal principal y el menor de la diagonal secundaria. Bien, he usado for, y el programa compila y se ejecuta perfectamente. Me gusta hacer los programas y guardarlos hechos de distinta forma, pero en este caso, al querer hacerlo con while, se queda imprimiendo solo la matriz y no el resto. ¿Alguien podría ayudarme? Aqui les dejo las partes que me interesan:

Código
  1. writeln('La matriz que usted ha introducido es: ');
  2. writeln( );
  3. for i:= low(a) to high(a) do
  4. begin
  5. for j:=low(a[i]) to high(a[i]) do
  6. write(' ', a[i,j]:2, ' ');
  7. writeln( );
  8. end;
  9.  
  10. max:= a[1, 1];
  11. for i:= 1 to 4 do
  12. begin
  13. if (a[i,i] > max) then
  14. begin
  15. max:=a[i,i];
  16. end;
  17. end;
  18. writeln( );
  19. writeln('El mayor elemento de la diagonal principal es: ', max);
  20.  
  21. min:= a[1,4];
  22. j:=5;
  23. for i:= 1 to 4 do
  24. begin
  25. if (a[i,j-i] < min) then
  26. begin
  27. min:=a[i,j-i];
  28. end;
  29. end;
  30. writeln('El menor elemento de la diagonal secundaria es: ', min);
  31. writeln( );

Muchas gracias

Nota del mod: se hace más legible con etiquetas de código


« Última modificación: 20 Enero 2010, 12:19 pm por Novlucker » En línea

Festor
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.955


Ver Perfil
Re: Duda Pascal
« Respuesta #1 en: 22 Enero 2010, 12:25 pm »

Código
  1. writeln('La matriz que usted ha introducido es: ');
  2. writeln( );
  3. for i:= low(a) to high(a) do
  4. begin
  5. for j:=low(a[i]) to high(a[i]) do
  6. write(' ', a[i,j]:2, ' ');
  7. writeln( );
  8. end;
  9.  
  10. max:= a[1, 1];
  11. for i:= 1 to 4 do
  12. begin
  13. if (a[i,i] > max) then
  14. begin
  15. max:=a[i,i];
  16. end;
  17. end;
  18. writeln( );
  19. writeln('El mayor elemento de la diagonal principal es: ', max);
  20.  
  21. min:= a[1,4];
  22. j:=5;
  23. for i:= 1 to 4 do
  24. begin
  25. if (a[i,j-i] < min) then
  26. begin
  27. min:=a[i,j-i];
  28. end;
  29. end;
  30. writeln('El menor elemento de la diagonal secundaria es: ', min);
  31. writeln( );

Yo ahí, en el código que has escrito, no veo ningún while...   :o


« Última modificación: 22 Enero 2010, 12:44 pm por Festor » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda pascal
Programación General
netca 4 5,323 Último mensaje 3 Abril 2011, 22:08 pm
por skapunky
Duda pascal calculadora
Programación General
netca 1 4,368 Último mensaje 12 Abril 2011, 02:20 am
por Nakp
Duda pascal array unidimensional
Programación General
pyxolo 3 2,971 Último mensaje 3 Septiembre 2011, 02:18 am
por Valkyr
duda en pascal
Programación General
General Dmitry Vergadoski 1 1,985 Último mensaje 23 Mayo 2012, 15:27 pm
por Ferno
Duda Pascal
Ejercicios
Yankris 0 2,467 Último mensaje 12 Diciembre 2015, 19:14 pm
por Yankris
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines