Esempio n. 1
0
void trocar(int m[][T])
{
        int k, l, n;
        int aux;

        /* Processamento e Saída*/
        /* linhas 2 <-> 8 */
        for (k = 0; k < T; k++) {
                for (l = 0; l < T; l++) {
                        if (k == 1) {
                                aux = m[1][l];
                                m[1][l] = m[7][l];
                                m[7][l] = aux;
                        }
                }
        }
        printf("\nTroca das linhas 2 e 8\n");
        imprimirMatriz(m);

        /* colunas 4 <-> 10 */
        for (k = 0; k < T; k++) {
                for (l = 0; l < T; l++) {
                        if (l == 3) {
                                aux = m[k][3];
                                m[k][3] = m[k][9];
                                m[k][9] = aux;
                        }
                }
        }
        printf("\nTroca das colunas 4 e 10\n");
        imprimirMatriz(m);

        /* diagonais */
        for (k = 0; k < T; k++) {
                for (l = 0; l < T; l++) {
                        if (k + l == T-1) {
                                aux = m[k][l];
                                m[k][l] = m[k][k];
                                m[k][k] = aux;
                        }
                }
        }
        printf("\nTroca das diagonais\n");
        imprimirMatriz(m);

        /* linha 5 <-> coluna 10 */
        l = 0;
        for (k = 0; k < T-1; k++) {
                if (l == 4) {
                        l++;
                }
                aux = m[4][k];
                m[4][k] = m[l][9];
                m[l][9] = aux;
                l++;
        }
        printf("\nTroca da linha 5 e coluna 10\n");
        imprimirMatriz(m);
}
int main() {
	int g[V][V];
	inicializar(g);
	
	imprimirMatriz(g);
	adicionarAresta(3,3,g);
	adicionarAresta(1,2,g);
	adicionarAresta(3,4,g);
	imprimirMatriz(g);
	excluirAresta(1,2,g);
	imprimirMatriz(g);
}
main()
{
	int A[DIM][DIM], B[DIM][DIM];
	
	lerMatriz(A);
	lerMatriz(B);
	printf("\nMatriz A: \n");
	imprimirMatriz(A);
	printf("\nMatriz B: \n");
	imprimirMatriz(B);
	printf("\nSoma: \n");
	somarMatrizes(A, B);
	printf("\nSubtracao: \n");
	subtrairMatrizes(A, B);
}
int main(void){
    //declaracion de variables
    bool seAcabo=false;
    int casos=1;
    int m;
    int n;
    char matrizEtrada[M][N];
    int matrizSalida[M][N];
    //lectura de la entrada
    while(!seAcabo){
        scanf("%i %i",&m,&n);
        if(m==0 && n==0){
            seAcabo=true;
        }
        int i=0;
        int j=0;
        for(i;i<m;i++){
            j=0;
            for(j;j<n;j++){
                scanf("%c",matrizEtrada[i][j]);
            }
        }
        if(!seAcabo){
            calcularMatrizDeBombasAdyacentes(matrizSalida,matrizEtrada,m,n);
            printf("FIELD #%i:\n",casos);
            imprimirMatriz(matrizSalida,m,n);
            casos++;
        }
        }
return 0;
}
Esempio n. 5
0
void realizarJogada(char m[TAM][TAM], char jogador, int *vez){
    int x,y;
    system("clear");
    printf("####### Jogador %c #######\n",jogador);
    printf("Informe o valor de X: ");
    scanf("%i", &x);
    printf("Informe o valor de Y: ");
    scanf("%i", &y);

    // Verifica se o local nos valores X e Y
    // esta disponivel para jogada.
    if(m[x][y] == 'L'){
        m[x][y] = jogador;
        *vez = *vez + 1;
    }else if(m[x][y] == 'B'){
        system("clear");
        printf("Jogador %c Perdeu!!\n",jogador);
        imprimirMatriz(m);
        system("pause");
        *vez = 1;
        inicializarMatriz(m);
        gerarBombas(m);
    }else{
        system("clear");
        printf("Nao eh possivel realizar a jogada!\n");
        system("pause");
    }
}
Esempio n. 6
0
int main(int argc, char  *argv[]){
	int A[4][4];
	int B[4][4];
	int aux = 1;
	struct tipoDeDatos C = {2,3.87};
	

	for (int i = 0; i < 4; ++i){
		for (int j = 0; j < 4; ++j){
			B[i][j] = aux++;

		}
	}
	invertirMatriz(&A[0][0],&B[0][0]);
	
	printf("Matriz invertida: \n");
	imprimirMatriz(A);

	printf("\nMatriz multiplicada: \n");

	multiplicarMatriz(A,C,fopen((argc > 1 ? argv[1]:"resultado.txt"),"w"));
/*
	if (argc > 1){
		multiplicarMatriz(A,C,fopen(argv[1],"w"));
	}else{
		multiplicarMatriz(A,C,fopen("resultado.txt","w"));
	}*/
	
	

	return 0;
}
Esempio n. 7
0
int main() {
    int nFilas,nColumnas;
    char nombreFichero[100];
    float *matriz=NULL;
    int retval;

    printf("Introduzca el número de filas de la matriz a leer: ");
    scanf(" %d",&nFilas);
    printf("Introduzca el número de columnas de la matriz a leer: ");
    scanf(" %d",&nColumnas);
    printf("Introduzca el nombre del fichero: ");
    scanf(" %s",nombreFichero);
    
    matriz=(float *) malloc(nFilas*nColumnas*sizeof(float));
    if (matriz==NULL) {
       printf("No se pudo reservar memoria para la matriz\n");
       system("PAUSE");
       return 3;
    }
    
    if (retval=leerMatriz(nombreFichero,nFilas,nColumnas,matriz)) {
       printf("Hubo un error al leer el fichero\n");
       system("PAUSE");
       return retval;
    }
    
    imprimirMatriz(nFilas,nColumnas,matriz);
    
    system("PAUSE") ;
    return 0 ;
}
int main(){

    seed();

    int matriz_A[x][y];
    int matriz_B[x][y];
    int suma[x][y];

    llenarMatriz(matriz_A);
    imprimirMatriz(matriz_A);

    llenarMatriz(matriz_B);
    imprimirMatriz(matriz_B);

    sumarMatrices(matriz_A, matriz_B, suma);
    imprimirMatriz(suma);
}
Esempio n. 9
0
void PageRankEsparso::imprimirEsparso(const vector< map<int, double> > &A) {
	vector< vector<double> > v(A.size(), vector<double>(A.size(), 0));
	for (unsigned int i = 0; i < A.size(); i++) {
		typedef map<int, double>::const_iterator it_type;
		for(it_type iterator = A[i].begin(); iterator != A[i].end(); iterator++) {
			v[i][iterator->first] = iterator->second;
		}
	}
	imprimirMatriz(v);
}
Esempio n. 10
0
int main(){
    int m1[LIN][COL], m2[LIN][COL];
    int soma[LIN][COL];

    printf("Cadastrar valores para M1\n");
    cadastrarMatriz(m1);

    printf("Cadastrar valores para M2\n");
    cadastrarMatriz(m2);

    printf("\t\tImprimir valores de M1\n");
    imprimirMatriz(m1);

    printf("\t\tImprimir valores de M2\n");
    imprimirMatriz(m2);

    printf("\t\tImprimir Soma das Matrizes\n");
    realizarSomaMatrizes(m1,m2,soma);
    imprimirMatriz(soma);
}
Esempio n. 11
0
int main (void) {
    int n,
        matriz[LINHAS][COLUNAS];

    while(scanf("%d\n", &n) != EOF) {
        montarMatriz(matriz, n);
        imprimirMatriz(matriz, n);
    }

    return 0;
}
Esempio n. 12
0
void main() {
	int matriz[1][1], inversa[1][1], adjunta[1][1], determinante;
	unsigned int dimensao, linha, coluna;

  	for(linha = 0; linha < dimensao; linha++) {
   		for(coluna = 0; coluna < 2; coluna++) {
   			printf("Informe o elemento matriz[%d][%d]: ", linha+1, coluna+1);
   			scanf("%u", &matriz[linha][coluna]);
   	        printf("\n");		
   		}
   	}

   	/*calcula o determinante da matriz*/
    determinante = matriz[0][0]*matriz[0][1] - matriz[1][0]*matriz[1][1];

    /*montar matriz adjunta*/
    adjunta[0][0] = matriz[1][1];
    adjunta[0][1] = -matriz[1][0];
    adjunta[0][1] = -matriz[1][0];

	
	printf("Matriz original\n");
	imprimirMatriz(matriz, dimensao);
	printf("\n");
	printf("Matriz transposta\n");
	imprimirMatriz(transposta, dimensao);
	printf("\n");
	if(simetrica)
		printf("As matrizes são simétricas\n");
	else
		printf("As matrizes não são simétricas\n");

	if(antisimetrica)
		printf("As matrizes são anti-simétrica\n");
	else
		printf("As matrizes não são anti-simétrica\n");



	
}
Esempio n. 13
0
int main(){
  int f, c, mat[MAXF][MAXC];
  for(f = 0; f < MAXF; f++){
    for(c = 0; c < MAXC; c++){
      printf("Ingrese un número entero: ");
      scanf("%d", &mat[f][c]);
    }
  }
  imprimirMatriz(mat);

  return 0;
}
void subtrairMatrizes(int a[][DIM], int b[][DIM])
{
	int i, j, res[DIM][DIM];
	
	for (i = 0; i < DIM; i++) {
		for (j = 0; j < DIM; j++) {
			res[i][j] = a[i][j] - b[i][j];
		}
	}
	
	imprimirMatriz(res);
}
int main(void)
{
	int iRen = 5; 
	int iCol = 6; 
	float** fMat = crearMatriz(iRen,iCol);
	
	llenarMatriz(fMat,iRen,iCol);
	imprimirMatriz(fMat,iRen,iCol);
    destruirMatriz(fMat,iRen);
    
	return 0;
}
int main(){
    VetorBi *m= matriz(9,9); 
    
    int i,j; 
    
    atribuirValores(m);
    
    printf("Sudoku\n\n");
    imprimirMatriz(m);

    desalocar(m); 
    system("pause");
    return 0; 
}
Esempio n. 17
0
main()
{
        /* vars */
        float M[T][T];
        float media;

        printf("MEDIA DOS ELEMENTOS SOB AS DUAS DIAGONAIS\n\n");

        /* Entrada */
        lerMatriz(M);

        /* Processamento e Saída */
        printf("\nM:\n");
        imprimirMatriz(M);
        media = calcularMediaSobDiagonalPrincipalESecundaria(M);

        printf("\nMEDIA = %.2f\n", media);
}
Esempio n. 18
0
main()
{
        /* vars */
        int k, l, soma;
        int A[7][T];

        printf("SOMA DOS ELEMENTOS DA LINHA 5 E COLUNA 3\n\n");

        /* Entrada */
        lerMatriz(A, 7);

        /* Processamento*/
        soma = somar(A, 7);

        /* Saída */
        printf("\nA:\n");
        imprimirMatriz(A, 7);
        printf("\nSOMA = %i\n", soma);
}
Esempio n. 19
0
main()
{
        /* vars */
        int A[T][T];
        int i, j;

        printf("TROCA DE LINHAS, COLUNAS E DIAGONAIS DE UMA MATRIZ\n\n");

        /* Entraada */
        printf("\nCarregando matriz %ix%i:\n", T, T);
        for (i = 0; i < T; i++) {
                for (j = 0; j < T; j++) {
                        printf("m[%i][%i]: ", i, j);
                        scanf("%i", &A[i][j]);
                }
        }

        /* Processamento e Saída */
        printf("\nA:\n");
        imprimirMatriz(A);

        trocar(A);
}
Esempio n. 20
0
int main()
{
    int v[5], i, j, k, x=0, troca, m[5][5];

    freopen("e6.txt", "r", stdin);
    freopen("s6.txt", "w", stdout);

    for (i=0 ; i<L ; i++)
    {
        ler(v);

        ordenar(v);

        popularMatriz(m, v, x);
        x++;
    }
    
    imprimirMatriz(m);

    fclose(stdin);
    fclose(stdout);

    return 0;
}
void  main(int argc, char* const argv[])
{

    if(argv[1]== NULL) {
        perror("Digite el tamaño de la matriz N");
        exit(-1);
    }
    if(argv[2] == NULL) {
        perror("Digite el numero de hilos ");
        exit(-1);
    }
    int N = atoi(argv[1]);
    int nHilos = atoi(argv[2]);
    printf("N = %i, numero hilos= %i\n", N, nHilos);
    if (N != 2 && N != 4 && N != 8 && N != 16 && N != 32 && N != 64 && N != 128 && N != 256 && N != 512 && N!= 1024)
    {
        perror("El tamaño debe ser un numero de estos [2,4,8,16,32,64,128, 256, 512, 1024]");
        exit(-1);
    }
    if(nHilos > N) {
        perror("Los hilos deven ser menores o iguales a el tamaño");
        exit(-1);
    }
    int i=0;
    int *MATRIZA[N];
    for (i=0; i<N; i++)
        MATRIZA[i] = (int *)malloc(N * sizeof(int));

    initMatriz(N,N,MATRIZA);
    //imprimirMatriz(N,N,MATRIZA);

    int *MATRIZB[N];
    for (i=0; i<N; i++)
        MATRIZB[i] = (int *)malloc(N * sizeof(int));

    initMatriz(N,N,MATRIZB);
    //imprimirMatriz(N,N,MATRIZB);

    int *MATRIZC[N];
    for (i=0; i<N; i++)
        MATRIZC[i] = (int *)malloc(N * sizeof(int));


    int particiones = N/nHilos;
    #pragma omp parallel num_threads(nHilos)
    {
        int ID = omp_get_thread_num();

        int inicioParte = ID*(particiones);
        int finParte = (ID+1)*(particiones);
        int k=0;
        //printf("inicioParte->%i, finParte->%i\n", inicioParte,finParte);
        int i = 0;
        for (i = inicioParte; i < finParte; i++)
        {
            int j = 0;
            for (j = 0; j < N; j++)
            {
                filaXcolum(N,i,j,MATRIZA,MATRIZB,MATRIZC);
                //printf("DATO:%i\n",dato );
                //printf("res %i %i el [%i]\n",i,j,hiloInfo->C[i][j]);
                k++;
            }
        }
    }
    imprimirMatriz(N,N,MATRIZA);
    imprimirMatriz(N,N,MATRIZB);
    imprimirMatriz(N,N,MATRIZC);

}
Esempio n. 22
0
int main(int argc,char *argv[]){

	if (argc!=4){
		printf("Has introducido %i parametros.\n",argc);
		printf("Sintaxis: <nombre programa> <archivo de matriz 1> <archivo de matriz 2> <archivo de salida>\n");
		exit(1);
	}

	FILE *fEntrada1, *fEntrada2, *fSalida;
	int** mEntrada1;
	int** mEntrada2 = NULL;

	//Dimensiones de las matrices
	int filasA, columnasA, filasB, columnasB;

	fEntrada1=fopen(argv[1],"r");
	fEntrada2=fopen(argv[2],"r");
	fSalida=fopen(argv[3],"w");

	if(!fEntrada1 || !fEntrada2 || !fSalida){
		printf("Error abriendo ficheros. Compruebe que el fichero de entrada existe\r\n");
		exit(1);
	}
	//Lee los valores de las dos matrices y cerrar los ficheros correspondientes
	leerMatriz(&mEntrada1, &filasA, &columnasA, fEntrada1);
	leerMatriz(&mEntrada2, &filasB, &columnasB, fEntrada2);
	fclose(fEntrada1);
	fclose(fEntrada2);

	if((filasA!=columnasB)||(columnasA!=filasB)){
		printf("\n\n*********Matrices incompatibles************\r\n");
		printf("Filas de A: %d; Columnas de A: %d;\r\nFilas de B: %d; Columnas de B: %d;\r\n ", filasA, columnasA, filasB, columnasB);
		fclose(fSalida);
		exit(1);
	}

	int i, j, k, sum=0;
	int* offset;

	int** resultado = malloc(filasA*(sizeof(int*)+columnasB*sizeof(int)));
        offset = (int*) resultado + filasA;
	for(i=0; i<filasA; i++, offset+=columnasB)
		resultado[i]=offset;

	for(i = 0; i < filasA; i++)
		for(j = 0; j < columnasB; j++){
			sum = 0;
			for(k=0; k < filasB; k++)
				sum += mEntrada1[i][k]*mEntrada2[k][j];
			resultado[i][j] = sum;
		}

	printf("Matriz 1: \r\n");
	imprimirMatriz(mEntrada1, filasA, columnasA);
	printf("Matriz 2: \r\n");
	imprimirMatriz(mEntrada2, filasB, columnasB);
	printf("Resultado: \r\n");
	imprimirMatriz(resultado, filasA, columnasB);

	escribirMatriz(resultado, filasA, columnasB, fSalida);
	fclose(fSalida);

	free(mEntrada1);
	free(mEntrada2);
	free(resultado);
	return 0;
}