Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: luis9430 en 5 Enero 2019, 23:36 pm



Título: Buscar fila y columna de arreglo bidimensional
Publicado por: luis9430 en 5 Enero 2019, 23:36 pm
Buenas! tengo un arreglo bidimensional  de 16 filas y 12 columnas , en si lo que tengo que hacer, es pedirle al usuario que escoja de las 15 filas cual desea y que  en base a eso imprima la fila y su posicion y de igual manera con la columna

este es mi codigo, el arreglo ya esta hecho y suma el total de filas y columnas

Código:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<time.h>
#define valorx 16  // filas
#define valory 12 // columnas

int arr[valorx][valory]={0},b, x,y,acu;
int n;
int valor, resultado;

main ()

{



printf("\n");
printf("vendedor vento  Jetta   Polo   Teramont Beetle  Golf    Gol    Passat    Up!   Tiguan  Touareg  TOTAL ");
printf("\n");

srand(time(NULL));
for(x = 0; x < valorx-1; x++) // no escribimos en la ultima fila
    for(y = 0; y < valory-1; y++) // no escribimos en la ultima columna
        arr[x][y] =1+rand()%9;
 
// suma de filas
for(x = 0; x < valorx-1; x++){ // este for recorre las filas desde la 0 hasta la 15
    acu = 0;
    for(y = 0; y < valory-1; y++) // este for recorre las columnas desde la 0 hasta la 11
     acu+= arr[x][y];
     arr[x][y] = acu; // guardamos en la posicion [x][12] la suma de la fila x
}
// suma de columnas
for(y = 0; y < valory; y++) { // este for recorre las columnas desde la 0 hasta la 11
    acu = 0;
    for(x = 0; x < valorx-1; x++)  // este for recorre las filas  desde la 0 hasta la 11 incluida
    
        acu+= arr[x][y];
    arr[x][y] = acu; // guardamos en la posicion [x][12] la suma de la fila x
}

for(x=0;x<valorx;x++){
printf("\n");

for(y=0;y<valory;y++)
printf("\t$%d", arr[x][y]);

}
printf("\tTOTAL\n");



getch();
return 0;

}











Título: Re: Buscar fila y columna de arreglo bidimensional
Publicado por: Beginner Web en 6 Enero 2019, 01:43 am
Pues la imprimes y ya, porque tanta vuelta?  :xD


Título: Re: Buscar fila y columna de arreglo bidimensional
Publicado por: Cero++ en 6 Enero 2019, 14:15 pm
Buenas! tengo un arreglo bidimensional  de 16 filas y 12 columnas , en si lo que tengo que hacer, es pedirle al usuario que escoja de las 15 filas cual desea y que  en base a eso imprima la fila y su posicion y de igual manera con la columna

este es mi codigo, el arreglo ya esta hecho y suma el total de filas y columnas

Código:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<time.h>
#define valorx 16  // filas
#define valory 12 // columnas

int arr[valorx][valory]={0},b, x,y,acu;
int n;
int valor, resultado;

main ()

{



printf("\n");
printf("vendedor vento  Jetta   Polo   Teramont Beetle  Golf    Gol    Passat    Up!   Tiguan  Touareg  TOTAL ");
printf("\n");

srand(time(NULL));
for(x = 0; x < valorx-1; x++) // no escribimos en la ultima fila
    for(y = 0; y < valory-1; y++) // no escribimos en la ultima columna
        arr[x][y] =1+rand()%9;
 
// suma de filas
for(x = 0; x < valorx-1; x++){ // este for recorre las filas desde la 0 hasta la 15
    acu = 0;
    for(y = 0; y < valory-1; y++) // este for recorre las columnas desde la 0 hasta la 11
     acu+= arr[x][y];
     arr[x][y] = acu; // guardamos en la posicion [x][12] la suma de la fila x
}
// suma de columnas
for(y = 0; y < valory; y++) { // este for recorre las columnas desde la 0 hasta la 11
    acu = 0;
    for(x = 0; x < valorx-1; x++)  // este for recorre las filas  desde la 0 hasta la 11 incluida
    
        acu+= arr[x][y];
    arr[x][y] = acu; // guardamos en la posicion [x][12] la suma de la fila x
}

for(x=0;x<valorx;x++){
printf("\n");

for(y=0;y<valory;y++)
printf("\t$%d", arr[x][y]);

}
printf("\tTOTAL\n");



getch();
return 0;

}











Pues mira, ésta sería la base de cómo trabajar con un arreglo bidimensional:

Código
  1. int A[15][12]
  2. //Carga del vector
  3. //...........
  4. //Finalizacion de la carga
  5.  
  6. //Mostrar el vector
  7. for(int i=0;i<15;i++){
  8.   fori(int j=0;j<12;j++){
  9.         cout<<A[i][j]<<" ";
  10.   }
  11. }
Pues así sería la base para mostrar el vector, solo deberías pedirle la fila "x" que quieres que muestre el usuario y en ves de poner un for, simplemente dejarías uno, para mostrar todos los valores de esa fila y ya.
Algo como esto:
Código
  1. //El usuario ingreso la fila "x"
  2. for(int i=0;i<12;i++){
  3.    cout<<A[x][i]<<" ";
Espero responda tu pregunta  ;D