Jump to content
Fórum Script Brasil

asantos38

Membros
  • Content Count

    54
  • Joined

  • Last visited

Everything posted by asantos38

  1. Bom dia. Fiz o que você me pediu e retornou True. Talvez tenha sido um bug temporário, vou tentar um código mais completo, quem sabe funciona desta vez. Obrigado pela sua atenção.
  2. Boa noite. Estou usando mac os catalina 10.15.4, e o python é o 3.8.2. Agora esse print da saída, que você pede seria como?
  3. Tive o mesmo retorno.
  4. Boa noite, ArteEN. Seria isso?: Air-de-Angelo:python angelo$ python3 clientsocket.py ['MAX_BYTES', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'argparse', 'client', 'random', 'server', 'socket', 'sys'] Air-de-Angelo:python angelo$
  5. asantos38

    atributo inexistente

    Boa tarde, a todos. Estou estudando socket e as fontes de estudo que tenho são um pouco antigas. Estou recebendo a seguinte mensagem de erro quando tento executar o código abaixo: import socket sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) Erro: AttributeError: module 'socket' has no attribute 'AF_INET' Alguém pode ajudar? Desde já agradeço!
  6. Vou aplicar sua solução! Serviu como uma luva! Obrigado Vangodp.
  7. Boa noite a todos. Alguém pode me passar um algoritmo que simule a pausa feita pela função sleep().É para um projeto que estou trabalhando. Estou precisando dar esta pausa para que o usuário possa ver um dos resultados retornados pelo programa. Estou usando xcode 11.4.1. Desde já agradeço!
  8. Boa tarde, a todos. Preciso instalar o python 3.4.0 para fazer os exemplos de um livro que estou estudando. É necessária esta versão pois o livro foi baseado nela. Mas quando vou instalar recebo a mensagem de erro dizendo que o instalador não encontrou software para ser instalado e a instalação é abortada. Estou usando MAC OS Catalina 10.15.3 Posso fazer a instalação manualmente? Desde já obrigado!!
  9. asantos38

    Mapeamento

    Boa noite a todos. Em que tipo de projeto C++ usa-se mapeamento? Desde já agradeço!
  10. Boa tarde! Estou trabalhando neste projeto e esse erro tem me tirado o sono. O projeto é um cadastro de petshop. E o erro parece estar associado a função limparBuffer(), mas sinceramente não sei como tirar esse bug. Estou usando xcode 11.2.1. Vou postar o código. // //main.c #include <stdio.h> #include <stdlib.h> #include "limpaBuf.h" #include "messages.h" #include "animal.h" #include "menu.h" int main(int argc, const char * argv[]) { Animal *cadastro; char escolha = '0'; cadastro = malloc(sizeof(Animal)); do { escolha = menu(); switch (escolha) { case '1': cadastro = cadastroGeral(); break; case '2': procurarAnimal(cadastro); break; default: break; } } while (escolha != '3'); return 0; } // // menu.c #include <stdio.h> #include <stdlib.h> #include "menu.h" #include "limpaBuf.h" char menu(void){ char escolha; system("clear"); printf("Cadastro de Animais\n\n\n"); printf("[1] -- Cadastrar\n"); printf("[2] -- Encontrar\n"); printf("[3] -- Sair\n"); printf("\n\n\n\n?: "); escolha = getchar(); limparBuffer(); return escolha; } #include <stdio.h> #include <stdlib.h> #include <string.h> #include "animal.h" #include "limpaBuf.h" #include "messages.h" Animal* cadastrarAnimal(void){ Animal* animal; system("clear"); printf("Cadastro de Animal\n\n\n"); animal = malloc(sizeof(Animal)); printf("Nome: "); fgets(animal->nome, sizeof(animal->nome), stdin); printf("Dono: "); fgets(animal->dono, sizeof(animal->dono), stdin); printf("Idade: "); scanf("%d", &animal->idade); limparBuffer(); printf("Raca: "); fgets(animal->raca, sizeof(animal->raca), stdin); animal->internado = false; animal->vacinado = false; return animal; } Animal* cadastroGeral(void){ Animal* animal; char escolha = 's'; int posicao_ponteiro = 0; animal = malloc(sizeof(Animal)); while (escolha == 's' || escolha == 'S') { if (posicao_ponteiro == 0) { animal = malloc(sizeof(Animal)); animal = cadastrarAnimal(); }else{ animal = realloc(animal, posicao_ponteiro * sizeof(Animal)); animal += posicao_ponteiro; animal = cadastrarAnimal(); } showMessage("Cadastro realizado com sucesso!"); printf("\n\nCadastrar outro? "); escolha = getchar(); limparBuffer(); if (escolha == 's' || escolha == 'S') { posicao_ponteiro++; } } return animal; } void procurarAnimal(Animal* cadastro){ char nome_animal[42]; int posicao_ponteiro = 0; int encontrado = 0; system("clear"); printf("Busca de Animal\n\n"); printf("Nome Animal: "); fgets(nome_animal, sizeof(nome_animal), stdin); system("clear"); while(cadastro) { if (strcmp(cadastro->nome, nome_animal) == 0) { encontrado = 1; break; }else{ posicao_ponteiro++; } cadastro += posicao_ponteiro; } if (encontrado == 1) { printf("Animal encontrado\n\n"); printf("Nome: %s\n", cadastro->nome); printf("Raça: %s\n", cadastro->raca); printf("Dono: %s\n", cadastro->dono); printf("Idade: %d\n", cadastro->idade); if (cadastro->vacinado == true) { printf("Vacinado: sim\n"); }else{ printf("Vacinado: não\n"); } if (cadastro->internado == true) { printf("Interno: sim\n"); }else{ printf("Interno: não\n"); } }else{ showMessage("Animal não cadastrado!"); } } // // messages.c #include <stdio.h> #include <stdlib.h> void showMessage(const char* msg){ int contador; system("clear"); for (contador = 1; contador <= 80; contador++) { printf("-"); if (contador == 80) { printf("\n"); } } printf("-"); for (contador = 1; contador <= 78; contador++) { printf(" "); } printf("-\n"); printf("-"); for (contador = 1; contador <= 78; contador++) { printf(" "); } printf("-\n"); printf("-"); for (contador = 1; contador < 25; contador++) { printf(" "); } printf("%s", msg); for (contador = 1; contador < 24; contador++) { printf(" "); } printf("-\n"); for (contador = 1; contador <= 78; contador++) { printf(" "); } printf("-\n"); printf("-"); for (contador = 1; contador <= 78; contador++) { printf(" "); } printf("-\n"); for (contador = 1; contador <= 80; contador++) { printf("-"); if (contador == 80) { printf("\n"); } } } // // limpaBuf.h #include <stdio.h> #ifndef limpaBuf_h #define limpaBuf_h void limparBuffer(){ char c; while ((c = getchar()) != '\n' && c != EOF) { } } #endif /* limpaBuf_h */
  11. Obrigado pela ajuda. Vou estudar seu código e continuar o trabalho. Abraços!
  12. asantos38

    cadastro de petshop

    Boa noite pessoal! Fiz um pequeno programa para cadastrar animais clientes de um petshop, mas há alguns erros que não estou conseguindo corrigir. Vou postar o código fonte e as mensagens de erro. Não é nenhum trabalho de facul ou trabalho do trabalho(rsrsrs). É apenas um hobby. Mas agradeço quem puder ajudar. #include <stdio.h> #include <stdbool.h> #include <stdlib.h> #include <string.h> #define limite 4 struct Animal{ char nome[15]; int idade; int registro; char cor[15]; char raca[15]; bool vacinado; }; struct Animal* cria_cadastro(int tamanho); void limpar_buffer(void); void cadastrar(struct Animal* cadastro, int tamanho); struct Animal* buscar(struct Animal* cadastro, int limite); int main(int argc, char* argv[]){ struct Animal* cadastro; char escolha = '0'; struct Animal* objeto_da_busca; cadastro = cria_cadastro(limite); do { printf("[1] - Cadastrar\n"); printf("[2] - Procurar\n"); printf("[3] - Encerrar Programa\n\n\n"); printf("Sua escolha? "); escolha = getchar(); switch (escolha) { case '1': cadastrar(cadastro, limite); break; case '2': if ((objeto_da_busca = buscar(cadastro, limite)) != NULL) { printf("Nome: %s\n", objeto_da_busca->nome); printf("Idade: %d\n", objeto_da_busca->idade); printf("Cor: %s\n", objeto_da_busca->cor); printf("Raça: %s\n", objeto_da_busca->raca); printf("Registro: %d\n", objeto_da_busca->registro); if (objeto_da_busca->vacinado == true) { printf("Vacinado: sim\n"); }else{ printf("Vacinado: não\n"); } }else{ printf("Animal não cadastrado.\n"); } break; case '3': printf("Encerrando o programa."); break; default: printf("Opção inválida.Tente novamente.\n"); } } while (escolha != '3'); return 0; } struct Animal* cria_cadastro(int tamanho){ struct Animal* cadastro; cadastro = (struct Animal*)malloc(sizeof(struct Animal) * tamanho); return cadastro; } void limpar_buffer(void){ char c; while((c = getchar()) != '\n' && c != EOF){}; } void cadastrar(struct Animal* cadastro, int tamanho){ int contador = 0; static int rg; char continuar; do { system("clear"); printf("Cadastro de Animal\n\n"); printf("Nome: "); fgets(cadastro[contador].nome, 15, stdin); printf("Idade: "); scanf("%d", cadastro[contador].idade); limpar_buffer(); printf("Cor: "); fgets(cadastro[contador].cor, 15, stdin); printf("Raça: "); fgets(cadastro[contador].raca, 15, stdin); cadastro[contador].registro = rg++; contador++; printf("\n\n\n\ncadastrar outro animal? "); continuar = getchar(); } while (contador < tamanho && (continuar != 'n' && continuar != 'N')); } struct Animal* buscar(struct Animal* cadastro, int limite){ char nome_pesquisa[15]; int contador; struct Animal* retorno = NULL; system("clear"); printf("Busca de Animal\n\n"); printf("Nome Animal: "); fgets(nome_pesquisa, 15, stdin); for (contador = 0; contador < limite; contador++) { if (strcmp(cadastro[contador]->nome, nome_pesquisa) == 0) { retorno = cadastro[contador]; } } return retorno; } Last login: Thu Sep 12 19:55:56 on console MacBook-Air-de-Angelo:~ angelo$ cd Documents/C MacBook-Air-de-Angelo:C angelo$ ls -l total 0 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 Listas3 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 acme drwxr-xr-x 4 angelo staff 128 8 Set 23:00 arquivos1 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 arquivos2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 arquivos3 drwxr-xr-x 5 angelo staff 160 19 Ago 20:39 arquivos4 drwxr-xr-x 5 angelo staff 160 8 Set 23:00 arquivos5 drwxr-xr-x 3 angelo staff 96 8 Set 23:00 arquivos6 drwxr-xr-x 3 angelo staff 96 12 Set 20:59 arquivos7 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 aula1 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 aula2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 aula3 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 aula4 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 aula5 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 cadastro drwxr-xr-x 4 angelo staff 128 8 Set 23:00 categoria jogador drwxr-xr-x 4 angelo staff 128 8 Set 23:00 classifica_pessoa drwxr-xr-x 4 angelo staff 128 30 Jul 20:07 cls drwxr-xr-x 4 angelo staff 128 8 Set 23:00 colisao drwxr-xr-x 4 angelo staff 128 8 Set 23:00 colisao2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 contador drwxr-xr-x 4 angelo staff 128 8 Set 23:00 contagem regressiva drwxr-xr-x 4 angelo staff 128 8 Set 23:00 contagem regressiva2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 conversao drwxr-xr-x 4 angelo staff 128 8 Set 23:00 conversao2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 cript drwxr-xr-x 4 angelo staff 128 8 Set 23:00 decisao multipla drwxr-xr-x 4 angelo staff 128 8 Set 23:00 decisao simples drwxr-xr-x 4 angelo staff 128 8 Set 23:00 decisao simples2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 dobro de um numero drwxr-xr-x 4 angelo staff 128 8 Set 23:00 dobro de um numero2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 estrutura drwxr-xr-x 4 angelo staff 128 8 Set 23:00 fila ex1 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 funcao soma drwxr-xr-x 4 angelo staff 128 8 Set 23:00 funcao soma2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 idade drwxr-xr-x 4 angelo staff 128 8 Set 23:00 idade_pelo_nascimento drwxr-xr-x 4 angelo staff 128 8 Set 23:00 idade_pelo_nascimento2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 imc drwxr-xr-x 4 angelo staff 128 8 Set 23:00 imc2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 imc3 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 insercao qualquer drwxr-xr-x 4 angelo staff 128 8 Set 23:00 inseri_final drwxr-xr-x 4 angelo staff 128 8 Set 23:00 inserindo_inicio drwxr-xr-x 4 angelo staff 128 8 Set 23:00 jogos_megasenha drwxr-xr-x 4 angelo staff 128 8 Set 23:00 listas ligadas ex1 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 listas ligadas ex2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 listas ligadas ex3 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 listas ligadas ex4 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 listas2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 listas4 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 listas5 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 listas6 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 loops esccrevendo fatec3 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 loops escrevendo FATEC drwxr-xr-x 4 angelo staff 128 8 Set 23:00 loops escrevendo FATEC2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 maior de dois drwxr-xr-x 4 angelo staff 128 8 Set 23:00 matrizes drwxr-xr-x 4 angelo staff 128 8 Set 23:00 matrizes2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 matrizes3 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 menu times drwxr-xr-x 4 angelo staff 128 8 Set 23:00 pilha1 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 pilha2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 pilha3 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 pilha4 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 pilha5 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 ponteiros_e_vetores_1 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 problema das xerox drwxr-xr-x 4 angelo staff 128 8 Set 23:00 projeto1 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 projeto2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 senha_sem_enter drwxr-xr-x 4 angelo staff 128 8 Set 23:00 soma drwxr-xr-x 4 angelo staff 128 8 Set 23:00 tabuada de cinco drwxr-xr-x 4 angelo staff 128 8 Set 23:00 tabuada de numero qualquer drwxr-xr-x 4 angelo staff 128 8 Set 23:00 teste1 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 tipos drwxr-xr-x 4 angelo staff 128 8 Set 23:00 usando enums drwxr-xr-x 4 angelo staff 128 8 Set 23:00 usando typedef drwxr-xr-x 4 angelo staff 128 8 Set 23:00 usando typedef2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 valida_entrada drwxr-xr-x 4 angelo staff 128 8 Set 23:00 vetor_numeros_nao_repetidos MacBook-Air-de-Angelo:C angelo$ clear MacBook-Air-de-Angelo:C angelo$ ls -l\more total 0 drwxr-xr-x 4 angelo 128 8 Set 23:00 vetor_numeros_nao_repetidos drwxr-xr-x 4 angelo 128 8 Set 23:00 valida_entrada drwxr-xr-x 4 angelo 128 8 Set 23:00 usando typedef2 drwxr-xr-x 4 angelo 128 8 Set 23:00 usando typedef drwxr-xr-x 4 angelo 128 8 Set 23:00 usando enums drwxr-xr-x 4 angelo 128 8 Set 23:00 tipos drwxr-xr-x 4 angelo 128 8 Set 23:00 teste1 drwxr-xr-x 4 angelo 128 8 Set 23:00 tabuada de numero qualquer drwxr-xr-x 4 angelo 128 8 Set 23:00 tabuada de cinco drwxr-xr-x 4 angelo 128 8 Set 23:00 soma drwxr-xr-x 4 angelo 128 8 Set 23:00 senha_sem_enter drwxr-xr-x 4 angelo 128 8 Set 23:00 projeto2 drwxr-xr-x 4 angelo 128 8 Set 23:00 projeto1 drwxr-xr-x 4 angelo 128 8 Set 23:00 problema das xerox drwxr-xr-x 4 angelo 128 8 Set 23:00 ponteiros_e_vetores_1 drwxr-xr-x 4 angelo 128 8 Set 23:00 pilha5 drwxr-xr-x 4 angelo 128 8 Set 23:00 pilha4 drwxr-xr-x 4 angelo 128 8 Set 23:00 pilha3 drwxr-xr-x 4 angelo 128 8 Set 23:00 pilha2 drwxr-xr-x 4 angelo 128 8 Set 23:00 pilha1 drwxr-xr-x 4 angelo 128 8 Set 23:00 menu times drwxr-xr-x 4 angelo 128 8 Set 23:00 matrizes3 drwxr-xr-x 4 angelo 128 8 Set 23:00 matrizes2 drwxr-xr-x 4 angelo 128 8 Set 23:00 matrizes drwxr-xr-x 4 angelo 128 8 Set 23:00 maior de dois drwxr-xr-x 4 angelo 128 8 Set 23:00 loops escrevendo FATEC2 drwxr-xr-x 4 angelo 128 8 Set 23:00 loops escrevendo FATEC drwxr-xr-x 4 angelo 128 8 Set 23:00 loops esccrevendo fatec3 drwxr-xr-x 4 angelo 128 8 Set 23:00 listas6 drwxr-xr-x 4 angelo 128 8 Set 23:00 listas5 drwxr-xr-x 4 angelo 128 8 Set 23:00 listas4 drwxr-xr-x 4 angelo 128 8 Set 23:00 listas2 drwxr-xr-x 4 angelo 128 8 Set 23:00 listas ligadas ex4 drwxr-xr-x 4 angelo 128 8 Set 23:00 listas ligadas ex3 drwxr-xr-x 4 angelo 128 8 Set 23:00 listas ligadas ex2 drwxr-xr-x 4 angelo 128 8 Set 23:00 listas ligadas ex1 drwxr-xr-x 4 angelo 128 8 Set 23:00 jogos_megasenha drwxr-xr-x 4 angelo 128 8 Set 23:00 inserindo_inicio drwxr-xr-x 4 angelo 128 8 Set 23:00 inseri_final drwxr-xr-x 4 angelo 128 8 Set 23:00 insercao qualquer drwxr-xr-x 4 angelo 128 8 Set 23:00 imc3 drwxr-xr-x 4 angelo 128 8 Set 23:00 imc2 drwxr-xr-x 4 angelo 128 8 Set 23:00 imc drwxr-xr-x 4 angelo 128 8 Set 23:00 idade_pelo_nascimento2 drwxr-xr-x 4 angelo 128 8 Set 23:00 idade_pelo_nascimento drwxr-xr-x 4 angelo 128 8 Set 23:00 idade drwxr-xr-x 4 angelo 128 8 Set 23:00 funcao soma2 drwxr-xr-x 4 angelo 128 8 Set 23:00 funcao soma drwxr-xr-x 4 angelo 128 8 Set 23:00 fila ex1 drwxr-xr-x 4 angelo 128 8 Set 23:00 estrutura drwxr-xr-x 4 angelo 128 8 Set 23:00 dobro de um numero2 drwxr-xr-x 4 angelo 128 8 Set 23:00 dobro de um numero drwxr-xr-x 4 angelo 128 8 Set 23:00 decisao simples2 drwxr-xr-x 4 angelo 128 8 Set 23:00 decisao simples drwxr-xr-x 4 angelo 128 8 Set 23:00 decisao multipla drwxr-xr-x 4 angelo 128 8 Set 23:00 cript drwxr-xr-x 4 angelo 128 8 Set 23:00 conversao2 drwxr-xr-x 4 angelo 128 8 Set 23:00 conversao drwxr-xr-x 4 angelo 128 8 Set 23:00 contagem regressiva2 drwxr-xr-x 4 angelo 128 8 Set 23:00 contagem regressiva drwxr-xr-x 4 angelo 128 8 Set 23:00 contador drwxr-xr-x 4 angelo 128 8 Set 23:00 colisao2 drwxr-xr-x 4 angelo 128 8 Set 23:00 colisao drwxr-xr-x 4 angelo 128 30 Jul 20:07 cls drwxr-xr-x 4 angelo 128 8 Set 23:00 classifica_pessoa drwxr-xr-x 4 angelo 128 8 Set 23:00 categoria jogador drwxr-xr-x 4 angelo 128 8 Set 23:00 cadastro drwxr-xr-x 4 angelo 128 8 Set 23:00 aula5 drwxr-xr-x 4 angelo 128 8 Set 23:00 aula4 drwxr-xr-x 4 angelo 128 8 Set 23:00 aula3 drwxr-xr-x 4 angelo 128 8 Set 23:00 aula2 drwxr-xr-x 4 angelo 128 8 Set 23:00 aula1 drwxr-xr-x 3 angelo 96 12 Set 20:59 arquivos7 drwxr-xr-x 3 angelo 96 8 Set 23:00 arquivos6 drwxr-xr-x 5 angelo 160 8 Set 23:00 arquivos5 drwxr-xr-x 5 angelo 160 19 Ago 20:39 arquivos4 drwxr-xr-x 4 angelo 128 8 Set 23:00 arquivos3 drwxr-xr-x 4 angelo 128 8 Set 23:00 arquivos2 drwxr-xr-x 4 angelo 128 8 Set 23:00 arquivos1 drwxr-xr-x 4 angelo 128 8 Set 23:00 acme drwxr-xr-x 4 angelo 128 8 Set 23:00 Listas3 MacBook-Air-de-Angelo:C angelo$ clear MacBook-Air-de-Angelo:C angelo$ ls -l | more total 0 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 Listas3 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 acme drwxr-xr-x 4 angelo staff 128 8 Set 23:00 arquivos1 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 arquivos2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 arquivos3 drwxr-xr-x 5 angelo staff 160 19 Ago 20:39 arquivos4 drwxr-xr-x 5 angelo staff 160 8 Set 23:00 arquivos5 drwxr-xr-x 3 angelo staff 96 8 Set 23:00 arquivos6 drwxr-xr-x 3 angelo staff 96 12 Set 20:59 arquivos7 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 aula1 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 aula2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 aula3 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 aula4 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 aula5 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 cadastro drwxr-xr-x 4 angelo staff 128 8 Set 23:00 categoria jogador drwxr-xr-x 4 angelo staff 128 8 Set 23:00 classifica_pessoa drwxr-xr-x 4 angelo staff 128 30 Jul 20:07 cls drwxr-xr-x 4 angelo staff 128 8 Set 23:00 colisao drwxr-xr-x 4 angelo staff 128 8 Set 23:00 colisao2 drwxr-xr-x 4 angelo staff 128 8 Set 23:00 contador drwxr-xr-x 4 angelo staff 128 8 Set 23:00 contagem regressiva MacBook-Air-de-Angelo:C angelo$ cd arquivos7 MacBook-Air-de-Angelo:arquivos7 angelo$ clear MacBook-Air-de-Angelo:arquivos7 angelo$ ls -l total 8 [email protected] 1 angelo staff 3559 12 Set 20:59 main.c MacBook-Air-de-Angelo:arquivos7 angelo$ nano main.c MacBook-Air-de-Angelo:arquivos7 angelo$ gcc -o main main.c main.c:23:52: error: expected ')' struct Animal* buscar(struct Animal* cadastro, int limite); ^ main.c:6:16: note: expanded from macro 'limite' #define limite 4 ^ main.c:23:22: note: to match this '(' struct Animal* buscar(struct Animal* cadastro, int limite); ^ main.c:97:33: error: member reference type 'struct Animal' is not a pointer; did you mean to use '.'? fgets(cadastro[contador]->nome, 15, stdin); ~~~~~~~~~~~~~~~~~~^~ . main.c:100:39: error: member reference type 'struct Animal' is not a pointer; did you mean to use '.'? scanf("%d", cadastro[contador]->idade); ~~~~~~~~~~~~~~~~~~^~ . main.c:100:21: warning: format specifies type 'int *' but the argument has type 'int' [-Wformat] scanf("%d", cadastro[contador]->idade); ~~ ^~~~~~~~~~~~~~~~~~~~~~~~~ main.c:105:33: error: member reference type 'struct Animal' is not a pointer; did you mean to use '.'? fgets(cadastro[contador]->cor, 15, stdin); ~~~~~~~~~~~~~~~~~~^~ . main.c:108:33: error: member reference type 'struct Animal' is not a pointer; did you mean to use '.'? fgets(cadastro[contador]->raca, 15, stdin); ~~~~~~~~~~~~~~~~~~^~ . main.c:110:27: error: member reference type 'struct Animal' is not a pointer; did you mean to use '.'? cadastro[contador]->registro = rg++; ~~~~~~~~~~~~~~~~~~^~ . main.c:110:38: error: expression is not assignable cadastro[contador]->registro = rg++; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ main.c:122:52: error: expected ')' struct Animal* buscar(struct Animal* cadastro, int limite){ ^ main.c:6:16: note: expanded from macro 'limite' #define limite 4 ^ main.c:122:22: note: to match this '(' struct Animal* buscar(struct Animal* cadastro, int limite){ ^ main.c:122:52: error: parameter name omitted struct Animal* buscar(struct Animal* cadastro, int limite){ ^ main.c:6:16: note: expanded from macro 'limite' #define limite 4 ^ main.c:135:38: error: member reference type 'struct Animal' is not a pointer; did you mean to use '.'? if (strcmp(cadastro[contador]->nome, nome_pesquisa) == 0) { ~~~~~~~~~~~~~~~~~~^~ . main.c:136:21: error: assigning to 'struct Animal *' from incompatible type 'struct Animal'; take the address with & retorno = cadastro[contador]; ^ ~~~~~~~~~~~~~~~~~~ & 1 warning and 11 errors generated. MacBook-Air-de-Angelo:arquivos7 angelo$ clear MacBook-Air-de-Angelo:arquivos7 angelo$ gcc -o main main.c main.c:23:52: error: expected ')' struct Animal* buscar(struct Animal* cadastro, int limite); ^ main.c:6:16: note: expanded from macro 'limite' #define limite 4 ^ main.c:23:22: note: to match this '(' struct Animal* buscar(struct Animal* cadastro, int limite); ^ main.c:100:21: warning: format specifies type 'int *' but the argument has type 'int' [-Wformat] scanf("%d", cadastro[contador].idade); ~~ ^~~~~~~~~~~~~~~~~~~~~~~~ main.c:122:52: error: expected ')' struct Animal* buscar(struct Animal* cadastro, int limite){ ^ main.c:6:16: note: expanded from macro 'limite' #define limite 4 ^ main.c:122:22: note: to match this '(' struct Animal* buscar(struct Animal* cadastro, int limite){ ^ main.c:122:52: error: parameter name omitted struct Animal* buscar(struct Animal* cadastro, int limite){ ^ main.c:6:16: note: expanded from macro 'limite' #define limite 4 ^ main.c:135:38: error: member reference type 'struct Animal' is not a pointer; did you mean to use '.'? if (strcmp(cadastro[contador]->nome, nome_pesquisa) == 0) { ~~~~~~~~~~~~~~~~~~^~ . main.c:136:21: error: assigning to 'struct Animal *' from incompatible type 'struct Animal'; take the address with & retorno = cadastro[contador]; ^ ~~~~~~~~~~~~~~~~~~ & 1 warning and 5 errors generated. MacBook-Air-de-Angelo:arquivos7 angelo$
  13. Boa noite a todos. Estou tentando gravar uma struct em um arquivo, mas toda vez que executo, o arquivo continua vazio. Estou usando o xcode em mac air. E já verifiquei se o arquivo tem as permissões exigidas. Segue o código: // // main.c // arquivos3 // #include <stdio.h> #include <stdlib.h> struct Pessoa{ char nome[20]; unsigned int idade; float altura; }; int main(int argc, const char * argv[]) { // insert code here... FILE* ptr; char* filename = "arq_teste.dat"; char* modo_gravacao = "w"; struct Pessoa pessoa = {"Fernando Santos", 42, 1.75}; //Abre o arquivo para gravação; se ocorrer erro o programa aborta. if ((ptr = fopen(filename, modo_gravacao)) == NULL) { puts("Erro ao abrir o arquivo!"); exit(1); } fwrite(&pessoa, sizeof(struct Pessoa), 1, ptr); fclose(ptr); return 0; }
  14. Boa noite.Segue aqui uma pequena classe vetor. Aceito críticas e sugestões. // // vetor.cpp // vetor // #include <iostream> #include <cstdlib> #include <stdio.h> #include "vetor.h" using namespace std; // Construtor. Vetor::Vetor(void){ tamanho = 0; valores = (int*)malloc(sizeof(int)); } void Vetor::incluir(int novo){ if (tamanho == 0) { *(valores + tamanho) = novo; tamanho++; }else{ valores = (int*)realloc(valores, sizeof(int) * (tamanho + 1)); *(valores + tamanho) = novo; tamanho++; } } void Vetor::ordenar_crescente(void){ int temp; for (int i = 0; i < tamanho - 1; i++) { for (int j = i + 1; j < tamanho; j++) { if (*(valores + i) > *(valores + j)) { temp = *(valores + i); *(valores + i) = *(valores + j); *(valores + j) = temp; } } } } void Vetor::imrimir(void){ for (int contador = 0; contador < tamanho; contador++) { cout << contador + 1 << "o. elemento -> " << *(valores + contador) << endl; } } main.cpp: // // main.cpp // vetor // #include <iostream> #include "vetor.h" using namespace std; int main(int argc, const char * argv[]) { // declaração de objetos. Vetor vetor; vetor.incluir(30); vetor.incluir(50); vetor.incluir(40); vetor.incluir(20); vetor.incluir(10); vetor.ordenar_crescente(); vetor.imrimir(); return 0; }
  15. Bom dia a todos. Quando executo o código abaixo só imprime o valor armazenado no primeiro nó. A função insere o nó no início da lista. Estou usando Xcode em um macbook Air. Alguém sabe qual o bug? #include <stdio.h> #include <stdlib.h> // definição do tipo Lista. struct Lista{ int valor; struct Lista * proximo; }; // função insere_iniciio(). struct Lista* insere_inicio(struct Lista* n, int valor){ // declaração de variáveis. struct Lista* novo; if (n == NULL) { // se a lista estiver vazia. n = (struct Lista*)malloc(sizeof(struct Lista)); n->valor = valor; n->proximo = NULL; // por ser o primeiro nó não deve apontar. return n; }else{ // se a lista não estiver vazia. novo = (struct Lista*)malloc(sizeof(struct Lista)); novo->valor = valor; novo->proximo = n; return novo; } } int main(){ // declaração de variáveis. int valor; struct Lista* inicio; struct Lista* novo; struct Lista* temp; // aloca memória para a lista. inicio = (struct Lista*)malloc(sizeof(struct Lista)); // inicializa a estrutura. inicio->valor = 20; inicio->proximo = NULL; // limpa o console. system("clear"); printf("Informe o valor para armazenar na lista: "); scanf("%d", &valor); // chamada para a função insere_inicio(). novo = insere_inicio(inicio, valor); temp = novo; while (temp->proximo != NULL) { printf("Valor armazenado: %d\n", temp->valor); temp = temp->proximo; } return 0; }
  16. Programa que calcula o perímetro de triângulo. Recebe como dados de entrada as coordenadas dos vértices do triângulo e retorna o perímetro na unidade de medida escolhida. #include <stdio.h> #include <stdlib.h> #include <math.h> //definição do tipo Ponto. struct Ponto{ float x; float y; }; typedef struct Ponto PONTO; //definição da estrutura Triangulo com vértices do tipo PONTO. struct Triangulo{ //Vértices do triângulo. PONTO p[3]; }; typedef struct Triangulo TRIANGULO; //definição da função gerarTriangulo, que retorna uma estrutura do tipo //TRIANGULO. TRIANGULO gerarTriangulo(){ //variáveis. TRIANGULO tr; int contador; //Limpa a tela. system("cls"); //Entrada das coordenadas dos vértices do triângulo. for(contador = 0; contador < 3; contador++){ printf("Obtendo p%i:\n", contador + 1); printf("Abscissa: "); scanf("%f%*c", &tr.p[contador].x); printf("Ordenada: "); scanf("%f%*c", &tr.p[contador].y); } return tr; } float perimetro(TRIANGULO t){ //declaração de variáveis. float d1, d2, d3; //Cálculo do tamanho dos lados do triângulo. d1 = sqrt(pow(t.p[0].x - t.p[1].x, 2) + pow(t.p[0].y - t.p[1].y, 2)); d2 = sqrt(pow(t.p[0].x - t.p[2].x, 2) + pow(t.p[0].y - t.p[2].y, 2)); d3 = sqrt(pow(t.p[1].x - t.p[2].x, 2) + pow(t.p[1].y - t.p[2].y, 2)); //Retorno da soma dos lados que é o perímetro do triângulo. return d1 + d2 + d3; } int main(){ //Declaração de variáveis. char unidade_medida; system("cls"); //Solicita um tipo de unidade de medida até que o usuário escolha uma das opções //válidas. do{ printf("Escolha a unidade de medida: \n"); printf("c - centimetros, m - metros: "); scanf("%c%*c", &unidade_medida); }while(unidade_medida != 'c' && unidade_medida != 'm'); //Exibe o resultado de acordo com a unidade de medida escolhida. //Considera até três casas decimais. switch(unidade_medida){ case 'c': printf("O perimetro do triangulo e: %.3f cm.\n", perimetro(gerarTriangulo())); break; case 'm': printf("O perimetro do triangulo e: %.3f m.\n", perimetro(gerarTriangulo())); } return 0; }
  17. Boa tarde, galera! Fiz um pequeno programa de cadastro de pessoas e percebi que quando exibo as pessoas cadastradas o último registro gravado está duplicado. Estou usando win10 e o compilador é o minGW. segue o código: #include <stdio.h> #include <stdlib.h> #include <string.h> struct Pessoa{ char nome[30]; int idade; }; void pausa(){ printf("pressione qualquer tecla para voltar ao menu principal\n"); scanf("%*c"); } void limpar_buffer(){ scanf("%*[^\n]"); scanf("%*c"); } void cadastrar(){ FILE* fp; struct Pessoa p; char escolha = 's'; do{ system("cls"); printf("Rotina de cadastro\n\n\n"); printf("Nome: "); fgets(p.nome, 30, stdin); printf("Idade: "); scanf("%d%*c", &p.idade); fp = fopen("cadastro.dat", "ab"); fwrite(&p, sizeof(p), 1, fp); fclose(fp); system("cls"); printf("Cadastro realizado com sucesso!\n"); printf("\n\n\nCadastrar outro?: "); escolha = getchar(); limpar_buffer(); }while(escolha != 'n' && escolha != 'N'); } void exibir(){ FILE* fp; struct Pessoa p; int total = 0; system("cls"); printf("Relacao de cadastrados\n\n\n"); fp = fopen("cadastro.dat", "rb"); while(!feof(fp)){ fread(&p, sizeof(p), 1, fp); total++; printf("Nome: %s\n", p.nome); printf("Idade: %d\n", p.idade); printf("-----------------------------------------\n"); } fclose(fp); printf("Numero de cadastrados: %d\n", total); pausa(); } int menu(){ int m; system("cls"); printf("Menu principal\n\n\n"); printf("[1] - Cadastrar\n"); printf("[2] - Relacao cadastrados\n"); printf("[3] - Sair\n"); printf("\n\n\n?: "); scanf("%d%*c", &m); return m; } int main(){ //declaração de variáveis. int escolha = 0; do{ escolha = menu(); switch(escolha){ case 1:cadastrar(); break; case 2:exibir(); } }while(escolha != 3); return 0; }
  18. asantos38

    IDE Builder

    Tudo bem.Mas agradeço pelo seu interesse em ajudar.
  19. asantos38

    IDE Builder

    Boa noite a todos. Instalei alguns meses atrás o Builder, uma IDE que faz parte dos pacotes que podem ser instalados no Ubuntu 18.04, porém não consigo executar programas nele. estou fazendo assim: Crio um projeto; python por exemplo. E dentro da pasta 'src' crio um arquivo .py Criei uma janela simples com tkinter, mas quando executo o projeto não aparece nada, e a execução é interrompida. Na internet quase não se encontra material sobre o Builder, para não dizer nenhum! Desde já agradeço!
  20. Boa noite, Britivaldo. Fiz as correções que você mandou e o programa compilou e rodou legal. Obrigado! Abraços!
  21. Boa noite a todos. Estou tentando fazer um pequeno programa de cadastro, mas meu código contém erros que não estou conseguindo resolver. segue o código e a mensagem de erro: main.c: #include <stdio.h> #include <stdlib.h> #include "pessoa.h" int main(){ struct Pessoa pessoas[3]; int limite; for(limite = 0; limite < 3; limite++){ system("clear"); printf("Cadastrando a %da. pessoa\n\n", limite + 1); pessoas[limite] = gerarPessoa(); } //exibe as pessoas. exibirPessoa(pessoas, 3); return 0; } pessoa.h: #ifndef PESSOA_H_INCLUDED #define PESSOA_H_INCLUDED //definição de tipo. struct Pessoa{ char nome[45]; int idade; float altura; }; struct Pessoa gerarPessoa(); void exibirPessoa(struct Pessoa*, int); #endif pessoa.c: #include <stdio.h> #include <stdlib.h> #include "pessoa.h" struct Pessoa gerarPessoa(){ //declaração de variáveis. struct Pessoa pessoa; //system("clear"); printf("Nome: "); scanf("%[^\n]s", pessoa.nome); printf("Idade: "); scanf("%d%*c", &pessoa.idade); printf("Altura: "); scanf("%f%*c", &pessoa.altura); return pessoa; } void exibirPessoa(struct Pessoa* pessoa, int tamanho){ int contador; system("clear"); for(contador = 0; contador < tamanho; contador++){ printf("Nome: %s\n", *(pessoa + contador)->nome); printf("Idade: %d\n", *(pessoa + contador)->idade); printf("Altura: %.2f\n\n", *(pessoa + contador)->altura); } } erro: pessoa.c: In function ‘exibirPessoa’: pessoa.c:29:18: warning: format ‘%s’ expects argument of type ‘char *’, but argument 2 has type ‘int’ [-Wformat=] printf("Nome: %s\n", *(pessoa + contador)->nome); ~^ ~~~~~~~~~~~~~~~~~~~~~~~~~~ %d pessoa.c:31:25: error: invalid type argument of unary ‘*’ (have ‘int’) printf("Idade: %d\n", *(pessoa + contador)->idade); ^~~~~~~~~~~~~~~~~~~~~~~~~~~ pessoa.c:33:30: error: invalid type argument of unary ‘*’ (have ‘float’) printf("Altura: %.2f\n\n", *(pessoa + contador)->altura); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ Desde já agradeço.
  22. Poste seu código usando o botão <>. Assim fica mais fácil de te ajudar. Outra forma é usando o método getline() de cin: #include <iostream> using namespace std; int main(){ char palavra[20]; cout << "Escreva uma palavra: "; //Este trecho do código recebe sua palavra e armazena na variável palavra. cin.getline(palavra, 20); return 0; } O método getline() possui dois argumentos: o primeiro é a variável onde será armazenada a palavra e o segundo é o tamanho do vetor de caracteres. Não esqueça que o tamanho do vetor de caracteres deve ter um caractere a mais para o ' \0 '. Exemplo: se você quer armazenar 10 caracteres deve fazer " char palavra[11]; "
  23. Boa tarde Alex. Acredito que seja algo assim: #include <iostream> using namespace std; int main(){ //declaração de variável. char palavra[] = "Digite aqui sua palavra"; //aí para usar a variável você pode fazer assim. cout << palavra << endl; return 0; } Se resolver seu problema coloque resolvido em seu post. Beleza?
  24. Sua dica deu certo, navegantenarede. Obrigado!!
  25. Boa tarde a todos. Estou aprendendo a escrever shell scripts, e esbarrei em um erro que até agora não consegui resolver. O Sistema é o Ubuntu 18. Seguem o código e a mensagem de erro: #!/bin/bash echo "Digite seu nome:" read nome if [ -z $nome ] ; then echo "Você não digitou seu nome!" else echo "Boa tarde, $nome!" fi Digite seu nome: Fernando Santos ./login2.sh: linha 7: [: Fernando: esperava operador binário Boa tarde, Fernando Santos! Desde já agradeço!
×
×
  • Create New...