Ir ao conteúdo
  • Cadastre-se

BifeProgramador

Membro Pleno
  • Posts

    32
  • Cadastrado em

  • Última visita

Reputação

28
  1. porque é no maximo 100 valores por linha não é ? E ali tem ((if ++col % 100) == 0 ) fprintf ("\n") o (\n) pula para a outra linha quando o ++col chega a 100 porque só esse valor que dividido por 100 vai dar resto 0... Ou estou errado ?
  2. Na verdade essa parte não é apenas para fazer a quebra de linhas ? Eu queria entender direito como funciona
  3. Nessa linha aqui por que tem esse ++col ? Qual a função disso ?
  4. @washalbano Para o que estou querendo não ajudou muita coisa mas obrigado
  5. <?php session_start(); $titulo = str_replace('#', '-', $_POST['titulo']); //Se conter o caractere # será substituido pelo - $categoria = str_replace('#', '-', $_POST['categoria']); $descricao = str_replace('#', '-', $_POST['descricao']); //utiliza o # como separador no arquivo $texto = $_SESSION['id'] . ' # ' . $titulo . ' # ' . $categoria . ' # ' . $descricao . PHP_EOL; /* Para resolver questões de diferentes sistemas operacionais utilize o PHP_EOL para forçar uma quebra de linha na visualização */ //FAZER A ESCRITA NO ARQUIVO TXT header('Location: abrir_chamado.php'); ?> Alguém sabe como faço para pegar dados q o usuario vai digitar em um site de php e armazenar esses dados em um arquivo txt ?
  6. Sim eu só não tava raciocinando direito... kkkkkk a pressa acaba atrapalhando
  7. eu estava executando dessa forma : atividade6.exe < name.txt
  8. Tinha só que eu não tava entendendo o que era aquele Uso: %s <imagem[.pts]> depois que eu fui ligar os pontos e fui entender que estava executando da forma errada ! isso eu ja fiz, configurei pra abrir com i_view 32 e ja me mostrou as imagens, muito obrigado por sua ajuda !
  9. Era isso ! Eu não sabia como chamar o programa Rodei o exemplo do J , gerou o arquivo pbm e apareceu isso : Agora sim eu vendo o código rodando inteirinho eu consegui entender melhor como ele funciona
  10. Eu não estou sabendo como testar esse J , mesmo com suas explicações ainda não sei fazer. não entendo direito esse código que o professor passou e como ele funciona . Não sei nem porque ainda insisto nesse curso vou desistir de entregar esse trabalho Muito obrigado por sua ajuda e desculpe tomar seu tempo !
  11. Realmente esse programa que foi dado a gente foi bem confuso... A turma inteira está tendo dificuldades nele
  12. No write pbm a unica coisa que fala é isso : void write_pbm(image img, char *name, int nl, int nc) { FILE *f; int i, contador; f = fopen (name, "wt"); if (f==NULL) { puts ("Erro na ao criar arquivo"); return; } fputs("P1\n",f); fputs("#Olá, bem vindo a atividade6.c\n",f); fprintf (f, "%d %d\n", nc , nl); contador = 0; for (i=0; i < nl * nc; i++) { fprintf (f, "%d ", img[i]); contador++; if (contador == 100) { fprintf (f, "\n"); contador = 0; } } fclose(f); } //Falta fazer // 1. gravar os 0's ou 1's da imagem (no máximo 100 valores por linha)
  13. sim ate baixei esse programa aqui na minha máquinha
  14. Era pra está funcionando... mas só mostra isso Entendi a parte que você editou mas ainda sou um pouco perdido com essa questão de chamar funções, deve ser alguma coisa que não estou percebendo Ou ele deve precisar do write_pbm completo pra poder executar certo
  15. @arfneto Implementei a sua função no meu código e compilou , agora quero saber como faço para testar o J ? A seguir o código todo para você dar uma olhada #include <stdio.h> #include <stdlib.h> #include <string.h> #if defined(_WIN32) || defined(__WIN64__) || defined(__CYGWIN__) #define VIEW "./i_view32" #elif defined(__linux__) #define VIEW "eog" #endif typedef int *image; image alloc_memo(int nl, int nc) { return (image)malloc(nl * nc * sizeof(int)); } void write_pbm(image img, char *name, int nl, int nc) { FILE *f; int i, contador; f = fopen (name, "wt"); if (f==NULL) { puts ("Erro na ao criar arquivo"); return; } fputs("P1\n",f); fputs("#Olá, bem vindo a atividade6.c\n",f); fprintf (f, "%d %d\n", nc , nl); contador = 0; for (i=0; i < nl * nc; i++) { fprintf (f, "%d ", img[i]); contador++; if (contador == 100) { fprintf (f, "\n"); contador = 0; } } fclose(f); } //Falta fazer // 1. gravar os 0's ou 1's da imagem (no máximo 100 valores por linha) image read_pts(char *name, int *nl, int *nc) { // -------------------------------------------- // Para Fazer // 1. abrir o arquivo texto 'nome' para leitura // 2. ler o número de linhas e colunas // 3. ler o número 'n' de pontos // 4. alocar o vetor 'img' com nl x nc // elementos // 5. preencher o vetor imagem com zeros // 6. ler as 'n' coordenadas (i, j) e preencher // a posição correspondente de img com 1. // -------------------------------------------- // 1. int i,j,n; FILE *f = fopen(name, "r"); if (f == NULL) return NULL; // 2,3. int pt = 0; // total de pixels '1' int res = fscanf(f, "%d %d %d", nl, nc, &pt); if (res != 3) return NULL; // não leu direito, cancela // 4. image img = alloc_memo(*nl, *nc); // 5. memset((void *)img, 0, sizeof(int) * (*nl) * (*nc)); // zera tudo // 6. for (n = 0, i = 0, j = 0; n < pt; n += 1) { // para os 'pt' pontos if (2 != fscanf(f, "%d %d", &i, &j)) { // deu erro: free(img); return NULL; } *(img + (i * *nc) + j) = 1; // marca o pixel } ////////////////////////////////////////////////////////////////// // mostra o que leu int col = 6; pt = *nc * *nl; for ( i = 0; i < pt; i += 1) { if ( *(img + i) == 1 ) printf("* "); else printf(" "); if (++col % 6 == 0) printf("\n"); } printf("\n"); ////////////////////////////////////////////////////////////////// fclose(f); return img; } // Falta fazer // 1. preencher o vetor imagem com zeros // 2. ler as 'n' coordenadas (i, j) e preencher a posição correspondente de img com 1. int main(int argc, char *argv[]) { image in; char *p; char nameIn[40]; char nameOut[40]; char command[100]; int nl, nc; if (argc < 2) { printf("Uso: %s <imagem[.pts]>\n\n", argv[0]); return 1; } if (p = strstr(argv[1], ".pts")) *p = 0; strcpy(nameIn, argv[1]); strcat(nameIn, ".pts"); strcpy(nameOut, argv[1]); strcat(nameOut, ".pbm"); // transformação in = read_pts(nameIn, &nl, &nc); write_pbm(in, nameOut, nl, nc); sprintf(command, "%s %s &", VIEW, nameOut); system(command); free(in); return 0; } Como faço para testar ?

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!