Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.

TYSQUARE89

Membros Plenos
  • Total de itens

    413
  • Registro em

  • Última visita

  • Qualificações

    N/D

Reputação

328

3 Seguidores

Sobre TYSQUARE89

  • Data de Nascimento 11-07-1997

Informações gerais

  • Cidade e Estado
    Zion
  • Sexo
    Masculino
  1. C String como parâmetro de sizeof ()

    @Eric MGS Vamos supor que você escreva na entrada: João recebeu 1 salário de 4.300,35 em 3.0 dias. Essa entrada é 'armazenada' em uma string. Porém você quer separar todos elementos, identificar seu tipo e então verificar com sizeof. Portanto é preciso separar, mas antes temos que identificar cada coisa, exemlpo: Joao - string recebeu - string 1 - int salário - string de - string 4.300,35 - float em - string 3.0 - int / float dias - string Para identificar é preciso criar um algorítimo ou usar strtok, para separar, assim depois de separar cada palavra, é preciso verificar se tal char é um numero, e encontrar seu fim. Ao encontrar o fim do número é preciso manter ele em um buffer e usar atoi, atol, etc.Exemplo: mensagem[100] = "João recebeu 1 salário de 4.300,35 em 3.0 dias" mensagem[0][ i ] == isalpha ? true -> nova string Palavra -> encontrar final false -> verificar se é numero -> encontrar final é só você encontrar uma forma de separar os elementos e identificar o tipo
  2. C++ programa doaçao de briquedos

    Dê uma estudada melhor sobre os tipos de funções e formas de retorno, segue: tipo Pilha_x(){ return ret_tipo; } bool Pilha_x(){ return true; } int Pilha_x(){ return 0; } char Pilha_x(){ return 65;//A } scanf ("%c %f", &b1.nome, &b1.peso );
  3. C String como parâmetro de sizeof ()

    Não, se você fizer isso você vai obter o tamanho de bytes de char.
  4. C String como parâmetro de sizeof ()

    @Eric MGS Em uma string só há char's(caracteres) relacionado a um decimal da tabela ascii, portanto sizeof(char) tem a mesma quantidade de bytes que sizeof(int) Para ter os bytes de cada tipo, da string, você precisa separar esses valores, seja com scanf, etc, armazenar em uma variável temporária e depois usar sizeof
  5. C Struct dentro de Struct

    Se quiser usar um vetor de struct, use: struct data m [T]; struct data a [T]; Acesse: gado.m[0].mes | gado.m[1].mes | ... | gado.m[49].mes gado.a[0].ano | gado.a[1].ano | ... | gado.a[49].ano Caso contrário e quiser usar apenas uma struct, use: struct data m; struct data a; Acesse: gado.m.mes gado.a.ano
  6. Boa noite, vou fazer uma introdução básica sobre como fazer um programa simples em Go, tendo como finalidade, imprimir Hello World. Pré-requisitos Pacotes de desenvolvimento GO - https://golang.org/dl/ IDE para GO - recomendo LiteIDE - https://github.com/visualfc/liteide A linguagem GO Provavelmente muitos já ouviram falar dessa linguagem, mas poucos pesquisaram, enfim, vou dar uma breve introdução, assim poderemos compreender melhor tal linguagem. A linguagem Open-Source foi criada pela Google, para competir com as atuais linguagens, e pode atuar diversas aplicações. Go atualmente é a 9º linguagem mais usada no GitHub. Fonte: octoverse.github.com Já com 8 anos e fazendo muito sucesso, foi anunciado planos para Go 2, segue: https://blog.golang.org/toward-go2 Programa Hello World Inicialmente precisamos entender como funciona o Workspace: Um Workspace contém várias versões de controle, seja com Git, Svn, etc Cada repositório contém um ou vários package(pacote) Cada package consiste em um ou vários arquivos no diretório determinado. ( Todos arquivos .go em uma pasta são 'automaticamente' compilados) Finalmente vamos ao programa: //Identificamos como 'main' o package //responsável pela func main() package main //Importamos o package fmt para funções //como Printf import ( "fmt" ) //Função principal, que imprime //"Hello World!" e não há retorno func main(){ fmt.Printf("Hello World!") } Para usarmos retornos e outras funções, temos que determinar qual tipo de retorno será, por exemplo: package main import ( "fmt" ) //veja que primeiro determinanos os argumentos da seguinte forma: // nome da variavel: mensagem - // e tipo: string //Também determinamos nosso retorno como (int) func func1(mensagem string) int { if len(mensagem) > 0 { fmt.Println(mensagem) return 1 } return 0 } func main() { var i int var msg string fmt.Println("Digite uma mensagem: ") fmt.Scanf("%s", &msg) //chamada e retorno i = func1(msg) //se nao usassemos var i int, usariamos: //i := func1(msg) //sendo i auto int if i == 1 { fmt.Printf("Mensagem preenchida") } else { fmt.Printf("Mensagem vazia") } } Ao aprofundarmos mais nas variadas packages, podemos até criar um pequeno servidor 'http', onde podemos acessar normalmente as páginas html, imagens, css e js: // https server 0.0.1 // author: TYSQR89 - 2017 // basta colocar as páginas .html, etc, na mesma pasta // do programa.exe // e no navegador digite: localhost:8080/index.html package main // pacotes import ( "bytes" "fmt" "image" "image/jpeg" "image/png" "io/ioutil" "log" "net/http" "os" "strconv" "strings" ) type Pagina struct { titulo string //arquivo da página localhost/titulo body []byte //body será o conteudo do arquivo } //Carregar o arquivo da página func carrPagina(arquivo string) (*Pagina, error) { //lê conteúdo do arquivo body, err := ioutil.ReadFile(arquivo) //falha ao abrir arquivo if err != nil { fmt.Println("Falha ao abrir [", arquivo, "] !") return nil, err } //retorna página aberta - Pa return &Pagina{titulo: arquivo, body: body}, nil } //Carrega e envia imagem para o client func enviarImagem(w http.ResponseWriter, fname string, ftype string) { fimg, _ := os.Open(fname) defer fimg.Close() img, _, _ := image.Decode(fimg) buffer := new(bytes.Buffer) //tipo .jpg if ftype == ".jpg" { //codifica para jpg - armazena em buffer if err := jpeg.Encode(buffer, img, nil); err != nil { log.Println("Falha ao codificar.") return } } //tipo .png if ftype == ".png" { //codifica para png - armazena em buffer if err := png.Encode(buffer, img); err != nil { log.Println("Falha ao codificar.") return } } //determina tamanho da imagem w.Header().Set("Content-Length", strconv.Itoa(len(buffer.Bytes()))) //envia imagem para o cliente if _, err := w.Write(buffer.Bytes()); err != nil { log.Println("unable to write image.") } } //Lida com os clientes func handler(w http.ResponseWriter, r *http.Request) { var p2 *Pagina var err error var contentType string //carrega página padrão if len(r.URL.Path[1:]) <= 0 || string(r.URL.Path[1:]) == "index" { p2, err = carrPagina(string("index.html")) } else { //carrega página solicitada p2, err = carrPagina(r.URL.Path[1:]) } //determina tipo de conteúdo if strings.HasSuffix(p2.titulo, ".css") { contentType = "text/css" } else if strings.HasSuffix(p2.titulo, ".png") { contentType = "image/png" w.Header().Set("Content-Type", contentType) enviarImagem(w, p2.titulo, ".png") return } else if strings.HasSuffix(p2.titulo, ".html") { contentType = "text/html" } else if strings.HasSuffix(p2.titulo, ".jpg") { contentType = "image/jpeg" w.Header().Set("Content-Type", contentType) enviarImagem(w, p2.titulo, ".jpg") return } else if strings.HasSuffix(p2.titulo, ".js") { contentType = "text/javascript" } else { contentType = "text/plain" } if err != nil { fmt.Println("Falha ao abrir [", p2.titulo, "] !") } else { w.Header().Set("Content-Type", contentType) fmt.Println("Pagina enviada [", p2.titulo, "] !") // envia dados para o cliente fmt.Fprintf(w, string(p2.body)) } } func main() { http.HandleFunc("/", handler) //lida com path / http.HandleFunc("/css", handler) //lida com path /css http.HandleFunc("/js", handler) //lida com path /js http.HandleFunc("/images", handler) //lida com path /images http.ListenAndServe(":8080", nil) //inicia em localhost:8080 } Qualquer dúvida pode perguntar. "Aprendemos todos dias e não há motivo para descreditar o erro, poís cada erro é uma nova oportunidade para o sucesso."
  7. C Problema na saída do código

    @andrelopes0 De acordo com seu código, se você digitar as linhas: 287 715 112 530 249 406 234 287 Então a ordem de procura, será assim: 1. 287 == num > V 2. 112 != num > I 3. 530 != num > I 4. 249 != num > I 5. 406 != num > I 6. 234 != num > I 7. 287 != num > I
  8. C Problema na saída do código

    @andrelopes0 Qual o problema com a saída? Se você verificar, ele busca o valor correto depois imprime V, ai quando ele retorna recursivamente, ele acaba imprimindo I. Tente assim: int consulta(ArvBin r, int num){ if (r!=NULL){ if(r->info == num){ printf("V\n"); return 0; }else{ if(r->info < num) num = consulta(r->dir, num); else num = consulta(r->esq, num); if(num != 0){ printf("I\n"); } } } }
  9. C Erro ao ler uma String

    Use: %[^\n]s
  10. C Problema na saída do código

    @andrelopes0 quando você declarar uma variável/objeto 'iniciada', significa que ela nunca será NULL por definitivo, portanto em consulta você precisa usar ponteiro: void consulta(ArvBin *raiz, int num){ ... } Caso você não use como ponteiro, você simplesmente vai copiar os elementos de 'raiz' para o argumento raiz de consulta. Sem ponteiro você também precisa usar .(ponto) em vez de ->
  11. C Erro no codigo nao consigo arrumar

    @PBlackOuT O erro consiste em você declarar uma função dentro do case '5' ... Você precisa declarar acima de main e depois usar apenas a chamada dessa função.
  12. C++ Programa em C++ de conta bancária - Loop Infinito

    @Buzina Lopes lixo no buffer, use fflush(stdin), antes da mensagem de cpf inválido.
  13. C Erro ao ordenar nomes e números de forma crescente

    @Diogo alves12 Como são três estágios diferentes para verificar, coloque cada um em seu if: if(vet[i] > vet[j]) { aux = vet[i]; vet[i] = vet[j]; vet[j] = aux; }if(vet1[i] > vet1[j]) { aux = vet1[i]; vet1[i] = vet1[j]; vet1[j] = aux; } if(strcmp(nome[i], nome[j]) > 0) { strcpy(aux3, nome[i]); strcpy(nome[i], nome[j]); strcpy(nome[j], aux3); }
  14. C Programa que calcula Polinomios, com STRUCTS

    @lenayoung Veja que aqui não deveria ter retorno, ou não deveria ser void: void letermo() { int struct Termo t; scanf("%1.f x %d", &t.coef, &t.expo); return t; <---- }
  15. C Programa que calcula Polinomios, com STRUCTS

    Qual o output do compilador? Não seria melhor usar float main() ? ou int main()...

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

×