Exemple #1
0
main(){
	int A[6], B[6], C[6], D[6];
	printf("CARREGANDO VETOR A DE 6 ELEMENTOS: \n\n");
	le_vetor(A,6);
	printf("CARREGANDO VETOR B DE 6 ELEMENTOS: \n\n");
	le_vetor(B,6);
	printf("CARREGANDO VETOR C DE 6 ELEMENTOS: \n\n");
	le_vetor(C,6);
	printf("CARREGANDO VETOR D DE 6 ELEMENTOS: \n\n");
	le_vetor(D,6);
	system("cls");
	
	printf("\n\nVETOR A DE 6 ELEMENTOS: \n\n");
	imprime_vetor(A,6);
	printf("\n\nVETOR B DE 6 ELEMENTOS: \n\n");
	imprime_vetor(B,6);
	printf("\n\nVETOR C DE 6 ELEMENTOS: \n\n");
	imprime_vetor(C,6);
	printf("\n\nVETOR D DE 6 ELEMENTOS: \n\n");
	imprime_vetor(D,6);
	
	printf("\n\nVETOR DE SOMA DE A+B+C+D ELEMENTOS: \n\n");
	soma_vetor(A,B,C,D,6);
	printf("\n\nVETOR DE SOMA DE A-B-C-D ELEMENTOS: \n\n");
	dif_vetor(A,B,C,D, 6);
	printf("\n\nVETOR DE SOMA DE 4*A-5*B+18*C-14*D ELEMENTOS: \n\n");
	op_vetor(A,B,C,D, 6);

}
int main(){
  int x[MAX], n = 0,  y[MAX], m = 0,  inter[MAX], tam_inter = 0;

  le_vetor(x, &n);
  le_vetor(y, &m);
  interseccao(x, n, y, m, inter, &tam_inter);
  imprime_vetor(inter, tam_inter);
  return 0;

}
Exemple #3
0
int main() {
  int *v;
  int n;
  
  v = le_vetor(&n);
  escreve_vetor(v, n);
  free(v);
  
  return 0;
}
Exemple #4
0
main()
{
  int v[DIM];
  le_vetor      (v, DIM);
  printf("\nImprimindo o vetor na ordem em que foi lido\n");
  imprime_vetor (v, DIM);
  inverte_vetor (v, DIM);
  printf("\nImprimindo o vetor depois que foi invertido pela funcao\n");
  imprime_vetor (v, DIM);
  getch();
}
Exemple #5
0
int main(int argc[], char *argv[]){
	int dimensao;
	float **matriz;
    float *vetorIndependente;
    
    int i, j, t, l, status_t, tam, *vet;
	int linha = 0;
	pid_t pid = 1;


    printf("Digite o dimensao da matriz seguido dos elementos e do vetor independente:");
    scanf("%d", &dimensao);

    int TAM_BUFFER = dimensao+3;	
	
	matriz = le_matriz(dimensao, dimensao);

    vetorIndependente = le_vetor(dimensao);

    //criação dos filhos
	
	int REF = 1;
	int inicio = 0;
	
	while(REF != dimensao){
		int fd[2];
		float buffer[TAM_BUFFER];
		if(pipe(fd) == -1) printf("Erro na funcao que cria o descritor de arquivo!\n");
		
		for(i=0; i<(dimensao-REF); i++){
			if(pid!=0){
				sleep(10);
				pid = fork();
				inicio = i+REF;		// inicio vai determinar a linha que será usada como referencia
			}
		}

		if(pid == 0){
		float constante = (matriz[inicio][REF-1]) / (matriz[REF-1][REF-1]);
		float *vetor_auxiliar;
		vetor_auxiliar =  calloc(dimensao+2,sizeof(float));
		
		int w = REF-1;
		for(i=(REF-1); i<dimensao; i++){
				vetor_auxiliar[w] = matriz[inicio][i] - ((matriz[REF-1][i])*constante);
				w++;
		}
		vetor_auxiliar[w] = vetorIndependente[inicio] - ((vetorIndependente[REF-1])*constante);
		vetor_auxiliar[w+1] = inicio;
		
		close(fd[0]);
		write(fd[1], vetor_auxiliar, (TAM_BUFFER)*sizeof(float));
		exit(0);
		sleep(5);
		}
		

		// FIM DA EXECUÇÃO DOS FILHOS


		if (pid != 0){
			close(fd[1]);
			
			for (l=0; l<dimensao-REF; l++){
				read(fd[0], buffer, sizeof(buffer));
				
				linha = (buffer[dimensao+1]);
				int y = 0;
				for(i=0; i<dimensao+1; i++){
					matriz[linha][i] = buffer[y];
					y++;
				}
				vetorIndependente[linha] = buffer[dimensao];
			}

		}
		REF += 1;
	}
	sleep(5);

	// REALIZANDO A ELIMINAÇÃO

	float *vetor_resultados = NULL;
    
    vetor_resultados = (float *) calloc(dimensao, sizeof(float));
	float soma = 0;

	for (i = dimensao; i>0; i=i-1){
		soma = vetorIndependente[i-1];
	
		for (j=i; j<dimensao; j++){
			soma += (matriz[i-1][j]*vetor_resultados[j]) * (-1);
		}
	
		vetor_resultados[i-1] = soma / matriz[i-1][i-1];
	}

	// REALIZANDO A ELIMINAÇÃO

	printf("\n");
	
	//Imprimindo o vetor resultado
	for(i=0; i<dimensao; i++){
        printf("%f ",vetor_resultados[i]);
	}
	
	free_matrix(dimensao, matriz);
	free_vector(vetorIndependente);
	

	return 0;

}