Ir ao conteúdo
  • Cadastre-se

silviorp

Membros Plenos
  • Total de itens

    138
  • Registro em

  • Última visita

  • Qualificações

    0%

Reputação

1

Informações gerais

  • Cidade e Estado
    Ribeirao PReto/Bauru
  1. Realmente, a estratégia do A.F.F. é mais interessante mesmo. Taí o código com a estratégia que ele postou funcionando: #include <stdio.h> int main () { int MatA[20], MatB[20]; int i, j; // Inicio printf("\nInforme os 20 elementos da matriz A:\n"); // Popular o vetor MatA for(i=0; i<20; i++) { scanf("%d", &MatA[i]); } printf("\n"); for(i=0;i<20;i++) { MatB[i] = MatA[19-i]; } // MOstrar o resultado for(i=0;i<20;i++) { printf("Valor A: %d\n", MatA[i]); } printf("\n"); for(i=0;i<20;i++) { printf("Valor B: %d\n", MatB[i]); } system("PAUSE"); }
  2. Cara, depois de declaradas as matrizes e a primeira já estar populada, você vai fazer isso: for(i=0;i<20;i++) { for(j=20;j<0;j--) { MatB[i] = MatA[j-1]; } } Declara o i e j antes. Pra mostrar elas você já sabe né? for(i=0;i<20;i++) { printf("%d ", MatA[i]); } printf("\n); for(i=0;i<20;i++) { printf("%d ", MatB[i]); }
  3. int main () { int MatA[15], MatB[15]; int i; printf("\nInforme valores 15 matriz A\n"); for(i=0;i<15;i++) { scanf("%d", &MatA[i]); } for(i=0;i<15;i++) { MatB[i] = MatA[i]*MatA[i]; } printf("\n"); printf("\n"); for(i=0;i<15;i++) { printf("%d %d", MatA[i], MatB[i]); printf("\n"); } system("PAUSE"); return 0; } Ta aí! Funcionando!
  4. Seu programa não está rodando porque no último for() você usou j como variável de controle e no incremento das matrizes você usou i. Só mudar isso que vai funcionar.
  5. Tenta assim: int main () { int MatA[5], MatB[10], MatC[15]; int i, cont, cont2; cont = 0; cont2=0; /*Entrada de [URL="http://forum.clubedohardware.com.br/#"]Dados[/URL]*/ printf("\nInforme os 5 valores da matriz A\n"); for(i=0; i<=4; i++) { scanf("%d", &MatA[i]); } printf("\nInforme os 10 valores da matriz B\n"); for(i=0; i<=9; i++) { scanf("%d", &MatB[i]); } printf("\nApresentando os dados da matriz A:\n"); for(i=0; i<=4; i++) { printf("%d ", MatA[i]); } printf("\nApresentando os dados da matriz B:\n"); for(i=0; i<=9; i++) { printf("%d ", MatB[i]); } for(i=0;i<15;i++) { cont++; if(cont <= 9) { MatC[i] = MatA[i]; } else { MatC[cont] = MatB[cont2]; cont2++; } } for(i=0;i<15;i++) { printf("%d ", MatC[i]); } printf("\n"); getch(); } Acabei de pensar nisso.. Sou iniciante em programação mas acho que vai rodar sim! Um abraço!
  6. Pessoal, tenho que terminar esse trabalho e não me caiu muito bem a ficha da utilização de ponteiros e alocamento de memória. Minha função para aplicar o filtro de Sobel num Bitmap não está compilando porque dá o seguinte erro: 539 C:\Users\SILVIO\Desktop\NOVO4\trabalho.c.c invalid operands to binary * O código da minha função é o seguinte: *PS: Quando eu declaro a matriz memória, é "mem" ali e não memória.. o fórum tá mudando automaticamente. void sobelFilter(FILE* inputFile, FILE* outputFile, int rows, int cols) { int i, j, k; unsigned int X, Y; int I, J; long dx, dy; int S; int GX[3][3]; int GY[3][3]; /* 3x3 GX Mascara de Sobel */ GX[0][0] = -1; GX[0][1] = 0; GX[0][2] = 1; GX[1][0] = -2; GX[1][1] = 0; GX[1][2] = 2; GX[2][0] = -1; GX[2][1] = 0; GX[2][2] = 1; /* 3x3 GY Mascara de Sobel */ GY[0][0] = 1; GY[0][1] = 2; GY[0][2] = 1; GY[1][0] = 0; GY[1][1] = 0; GY[1][2] = 0; GY[2][0] = -1; GY[2][1] = -2; GY[2][2] = -1; /* DECLARANDO E ALOCANDO MEMORIA PARA A MATRIZ QUE GUARDARA A IMAGEM INICIAL */ unsigned char ****v; //vetor de ponteiros v = (unsigned char ****)calloc(rows, sizeof(unsigned char***)); //Alocação dinamica do vetor //Lendo do arquivo de entrada e colocando em um vetor fseek(inputFile, 54, SEEK_SET);//Apontando para a inicio da imagem for (i = 0 ;i<rows; i++){ v[i] = (unsigned char ***)calloc(cols, sizeof(unsigned char **)); for (j = 0 ;j<cols ; j++){ v[i][j] = (unsigned char **)calloc(3,sizeof(unsigned char*)); for (k = 0 ; k<3 ; k++){ v[i][j][k] = (unsigned char* )calloc(1,sizeof(unsigned char*)); fread(v[i][j][k], 1, 1, inputFile); } } } /* DECLARANDO E ALOCANDO MEMORIA PARA A MATRIZ QUE GUARDARA A IMAGEM FINAL */ unsigned char ****memória//vetor de ponteiros memória (unsigned char ****)calloc(rows, sizeof(unsigned char***)); //Alocação dinamica do vetor //Lendo do arquivo de entrada e colocando em um vetor for (i = 0 ;i<=rows; i++){ mem[i] = (unsigned char ***)calloc(cols, sizeof(unsigned char **)); for (j = 0 ;j<cols ; j++){ mem[i][j] = (unsigned char **)calloc(3,sizeof(unsigned char*)); for (k = 0 ; k<3 ; k++){ mem[i][j][k] = (unsigned char* )calloc(1,sizeof(unsigned char*)); } } } /*--------------------------------------------------- ALGORITMO DE SOBEL COMEÇA AQUI ---------------------------------------------------*/ for(i=0; i<rows; i++) { for(j=0; j<cols; j++) { for(k=0; k<0; k++){ dx = 0; dy = 0; /* image boundaries */ if(i==0 || i==rows) S = 0; else if(j==0 || j==cols) S = 0; /* Convolution starts here */ else { dx = v[i-1][j-1][k]*GX[0][0] + v[i ][j-1][k]*GX[1][0] + v[i+1][j-1][k]*GX[2][0] + v[i-1][j+1][k]*GX[0][2] + v[i ][j+1][k]*GX[1][2] + v[i+1][j+1][k]*GX[2][2]; if(dx>255) dx=255; if(dx<0) dx=0; dy = v[i-1][j-1][k]*GX[0][0] + v[i-1][j ][k]*GX[0][1] + v[i-1][j+1][k]*GX[0][2] + v[i+1][j-1][k]*GX[2][0] + v[i+1][j ][k]*GX[2][1] + v[i+1][j+1][k]*GX[2][2]; if(dy>255) dy=255; if(dy<0) dy=0; S = sqrt(pow(dx, 2) + pow(dy, 2)); } mem[i][j][k] = S; } } } /* -----------ESCREVENDO A NOVA IMAGEM NO ARQUIVO DE SAIDA----------*/ fseek(outputFile, 54, SEEK_SET); //Apontando para a inicio da imagem do arquivo de saida for (i=0 ; i<cols; i++){ for (j=0 ; j<rows; j++){ for (k = 0 ; k<3 ; k++){ fwrite(mem[i][j][k], 1, 1, outputFile); } } } } Alguem me dá uma luz!! Dá esse erro quando na parte da convolução. Valeu ae!!
  7. aceita trocar essas 2 hd por um sata2 de 160 GB seagate? Moro em bauru tb, ficaria fácil a troca ! Qt conseguiu de taxa de transferencia no HDtach com raid-0?? valeu !
  8. Up !! Modifiquei alguns itens!
  9. Veio consegui 100% de over com esse processador com cooler box, mas voltei pra 80% porque tava esquentando muito! alias como eu sei se o meu é revisao M0 ??? você tá aumentando alguma tensão?! Nao acho q o problema seja a alimentacao nao! tem q pesquisar sobre a placa-mãe se ela sobe barramento pci juntos!! você usa alguma placa pci ??? Se tiver tira ela e tenta dar over !!! mas vai dando aos poucos !! E veja se o nao sobe o fsb da memoria, as vezes ela limita, ou seja tem muita coisa pra ser !! hehehe Flws !! t+
  10. tá file o pc !! qt a Asus, pode ser q esta placa em questao seja boa, mas eu nao confio... e nao é por falta de motivos... e provavelmente tera um valor menor na revenda, pois você fez uma pesquisa viu q ela é realmente boa, mas a maioria dos usuarios nao fazem isso, logo revenda é pior, pois é uma marca ruim !! (é minha opinião, e desbanco qq um q defenda a Asus por MP pois isso nao é a discussao do topico) FLWS !
  11. Adicionando rolo, tenho uma VGA XFX 6600GT pci-e porém eu só faço rolo com pra uma VGA melhor pci-e!!! Ahhhh da 6600gt troquei o cooler, coloquei o cooler de uma xfx 8600gt xxx novinha em folha o cooler antigo tava barulhento de+ !!! Obrigado !
  12. hahahahaha Eu tambem achei desnecessario AMD, pega celeron ou DURON e investe em mouse e teclado !!
  13. Adicionando Placa de Captura de Vídeo - Pinnacle PCTV Stereo fui testar hj pifou parece, então deletada hehehehe!!!
  14. Estou em sampa de ferias!!
  15. Ola, minhas peças pra rolo: placa-mãe Asus a7v8x-mx Mem 256 Generica Pc 2700 (333MHz) Mem 256 Generica Pc 2100 (266MHz) Fonte Generica 600w e 550w Aguardando propostas... Procuro processador 64 X2 socket 939 (AMD)

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...