Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: ra58alfa en 4 Julio 2018, 03:57 am



Título: obtener el número máximo y el número mínimo de matriz aleatoria c++
Publicado por: ra58alfa en 4 Julio 2018, 03:57 am
Hola Buenas a Todos, necesito ayuda con una matriz aleatoria pues apenas comienzo con el tema y estoy un poco confundido, bueno es que quiero que también me muestre el numero máximo y el número mínimo generado en la matriz mi código es este y agradecería mucho su ayuda en este foro  
Código
  1. #include<iostream>
  2. #include<stdlib.h>
  3. #include<time.h>
  4.  
  5. using namespace std;
  6.  
  7. int main(){
  8. int matriz[100][100],filas,columnas;
  9. int matriz2[100][100],dato=0;
  10. int min=0;
  11. int max=0;
  12. cout<<"\n\tBIENVENIDO A LA MATRIZ ALEATORIA :3\n";
  13. system ("PAUSE");
  14. cout<<"Digite el numero de filas: "; cin>>filas;
  15. cout<<"Digite el numero de columnas: "; cin>>columnas;
  16.  
  17. srand(time(NULL));
  18.  
  19. for(int i=0;i<filas;i++){
  20. for(int j=0;j<columnas;j++){
  21. dato = 1+rand()%(1000);
  22. matriz[i][j] = dato;
  23. }
  24. }
  25.  
  26. for(int i=0;i<filas;i++)
  27. {
  28. for(int j=0;j<columnas;j++)
  29. {
  30. matriz2[i][j] = matriz[i][j];
  31. }
  32. }
  33. cout<<"\n\t MOSTRADO DE MATRIZ ::>>\n";
  34. for(int i=0;i<filas;i++)
  35. {
  36. for(int j=0;j<columnas;j++)
  37. {
  38. cout<< matriz2[i][j]<<" ";
  39.        }
  40.       cout<<endl;
  41. }
  42.  
  43. system("pause");
  44. return 0;
  45. }
  46.  



· Los códigos deben ir en etiquetas GeSHi
· No se debe escribir en mayúsculas
>aquí las reglas del foro (http://foro.elhacker.net/reglas.htm)
-Engel Lex


Título: Re: obtener el número máximo y el número mínimo de matriz aleatoria c++
Publicado por: Serapis en 4 Julio 2018, 10:03 am
Es absurdo, preguntar que te resuelvan algo como eso...

Son matemáticas de niño de 8 años... hallar el mayor o menor de una serie.

Vas recorriendo la serie si el actual es menor que el que tenías como el menor, entonces ese valor pasa a ser el menor, es decir se 'memoriaza el valor del que ahora es el menor, y se mmemoria para poder en adlante compararlo con el resto... al final d ela serie el que consta como el menor, resulta serlo.
Como el primero de la serie no tiene con quien compararse, el primero se toma de entrada como el menor, luego el resto de comparaciones d ela serie comienza con el siguiente, es decir con el 1.

Hallar el mayor d ela serie, es lo mismo, pero manteniendo otra 'memorizado' (variable), para el considerado mayor hallado...

Y como decía, el código tan elemental, que no merece ponerlo, si alguien es incapaz de hacerlo por su cuenta, lo que debe hacer es dedicarse a otra cosa, que como mínimo "se le dé mejor".


Título: Re: obtener el número máximo y el número mínimo de matriz aleatoria c++
Publicado por: Beginner Web en 4 Julio 2018, 23:31 pm
recorriendo la matriz ajajaja y utilizando una bandera logica iniciada en falso y dos variables maximo y minimo, cuando recorras la matriz haz esto:

si (bandera igual a falso entonces a minimo y maximo le agregas el valor de el elemento en la matriz y a bandera le cambiamos el valor a verdadero;)
sino ( si el elemento en matriz es mayor a maximo le agregas ese elemento de la matriz a maximo;
si el elemento en matriz es menor a minimo le agregas ese elemento de la matriz a minimo;)
y ahi tienes ya el valor minimo y maximo de  la matriz ;)  ;-)  :laugh:

Código
  1. void maxmin(matrix m, int &max, int &min)
  2. {
  3. bool band=false;
  4. for(int i=0;i<FILAS;i++){
  5. for(int j=0;j<COLUMNAS;j++){
  6. if(band==false){
  7. max=m[i][j];
  8. min=m[i][j];
  9. band=true;
  10. }
  11. else{
  12. if(m[i][j]>max){
  13. max=m[i][j];
  14. }
  15. if(m[i][j]<min){
  16. min=m[i][j];
  17. }
  18. }
  19. }
  20. }
  21. }