Buscar fila y columna de arreglo bidimensional

Iniciado por luis9430, 5 Enero 2019, 23:36 PM

0 Miembros y 1 Visitante están viendo este tema.

luis9430

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


#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;

}










Beginner Web

Pues la imprimes y ya, porque tanta vuelta?  :xD
7w7

Cero++

Cita de: 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


#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 (cpp) [Seleccionar]
int A[15][12]
//Carga del vector
//...........
//Finalizacion de la carga

//Mostrar el vector
for(int i=0;i<15;i++){
   fori(int j=0;j<12;j++){
         cout<<A[i][j]<<" ";
   }
}

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 (cpp) [Seleccionar]

//El usuario ingreso la fila "x"
for(int i=0;i<12;i++){
    cout<<A[x][i]<<" ";

Espero responda tu pregunta  ;D
Ser diligente es lo ÚNICO que importa para lograr el éxito[c/ode]