Ir para conteúdo
rafael_iftm

Programa modularizado para cadastrar dados de pessoas e manipular dados

Recommended Posts

Olá amigos do Fórum.

Estou tentando desenvolver um código que atende aos seguintes requisitos.

 

>>Escrever um programa que cadastre o nome, a altura, o peso, o cpf e sexo de algumas pessoas.

Com os dados cadastrados, em seguida, localizar uma pessoa através do seu CPF e imprimir o seu IMC,

além das funções adicionais descritas no menu.

 

>>Nome: até 50 caracteres

Altura: em centímetros com precisão de uma casa decimal

Peso: em kilogramas com precisão de uma casa decimal CPF: no formato de texto – XXX.XXX.XXX-XX Sexo: M ou F.

 

>>O programa deve apresentar um menu para:

1. Cadastrar pessoas.

2. Procurar pessoas (usar o CPF).

3. Listar as pessoas cadastradas .

4. Mostrar a quantidade de pessoas cadastradas.

5. Mostrar o menor e o maior IMC 6. Sair do programação.

 

Em anexo meu código, mas não consigo escrever todos esses requisitos.

Obrigado e á disposição.

 

 

 

main.c

Compartilhar este post


Link para o post
Compartilhar em outros sites
On 6/23/2017 at 12:07 AM, rafael_iftm said:

Olá amigos do Fórum.

Estou tentando desenvolver um código que atende aos seguintes requisitos.

 

>>Escrever um programa que cadastre o nome, a altura, o peso, o cpf e sexo de algumas pessoas.

Com os dados cadastrados, em seguida, comprar dapoxetina generico no Brasil localizar uma pessoa através do seu CPF e imprimir o seu IMC,

além das funções adicionais descritas no menu.

 

>>Nome: até 50 caracteres

Altura: em centímetros com precisão de uma casa decimal

Peso: em kilogramas com precisão de uma casa decimal CPF: no formato de texto – XXX.XXX.XXX-XX Sexo: M ou F.

 

>>O programa deve apresentar um menu para:

1. Cadastrar pessoas.

2. Procurar pessoas (usar o CPF).

3. Listar as pessoas cadastradas .

4. Mostrar a quantidade de pessoas cadastradas.

5. Mostrar o menor e o maior IMC 6. Sair do programação.

 

Em anexo meu código, mas não consigo escrever todos esses requisitos.

Obrigado e á disposição.

 

 

Na minha opinião, você abordou muito sistematicamente esta questão. Mas até o fim, não entendi...
 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por gust.php
      Prezados, bom dia.   Estou tentando diferenciar o layout de um modulo dos demais, todos os modulos do meu sistema tem um mesmo layout com o mesmo menu, quero que todos fiquem igual ao layout do modulo Application, e o modulo cliente seja diferente. Estou tentando assim:   No modulo Application o arquivos module.config.php esta assim:     'view_manager' => array( 'display_not_found_reason' => true,          'display_exceptions'       => true,          'doctype'                  => 'HTML5',          'not_found_template'       => 'error/404',          'exception_template'       => 'error/index',          'template_map' => array(              'layout/layout'           => __DIR__ . '/../view/layout/layout.phtml',              'application/index/index' => __DIR__ . '/../view/application/index/index.phtml',              'error/404'               => __DIR__ . '/../view/error/404.phtml',              'error/index'             => __DIR__ . '/../view/error/index.phtml', ),          'template_path_stack' => array(             'application' => __DIR__ . '/../view', ), 'strategies' => array( 'ViewJsonStrategy', ), ),     Em todos os outros modulos estou fazendo assim:     'view_manager' => array( 'display_not_found_reason' => true,          'display_exceptions'       => true,          'doctype'                  => 'HTML5',          'not_found_template'       => 'error/404',          'exception_template'       => 'error/index',          'template_map' => array(              'layout/layout'           => __DIR__ . '/../../Application/view/layout/layout.phtml',  ----> Estou usando o layout de Application, esta funcionando.              'cadastro/index/index' => __DIR__ . '/../view/cadastro/index/index.phtml',              'error/404'               => __DIR__ . '/../view/error/404.phtml',              'error/index'             => __DIR__ . '/../view/error/index.phtml',          ),     Quando faço o login, chamo a rota homecli. Beleza, isso funciona. Só que, quando logo com um outro usuário qualquer, ele carrega o layout do cliente, ele não carrega mais o layout do Application, ele sempre carrega o layout do cliente.   Arquivo module.config.php modulo cliente:     'view_manager' => array( 'display_not_found_reason' => true,          'display_exceptions'       => true,          'doctype'                  => 'HTML5',          'not_found_template'       => 'error/404',          'exception_template'       => 'error/index',          'template_map' => array(              'layout/layout'           => __DIR__ . '/../view/layout/layout.phtml',              'cliente/index/index' => __DIR__ . '/../view/cliente/index/index.phtml',              'error/404'               => __DIR__ . '/../view/error/404.phtml',              'error/index'             => __DIR__ . '/../view/error/index.phtml', ),    
    • Por willianvaneli
      Preciso enviar struct via winsock de um cliente em C para servidor em Python.
       
      to apanhando muito e já fiz diversas mudanças porém não consegui acertar. Resumindo estou completamente perdido.
      Fiz um cliente que salvava todas informações da estrutura em uma unica string e enviava .... deu tudo certo ... porém quando tento enviar a estrutura tudo cai em ruínas =õ(

      cliente em C:
       
      #include <stdio.h>
      #include <winsock.h>
      #include <conio.h>
      #include <windows.h>
      #include <string.h>
      //ESTRUTURA QUE CONTEM OS DADOS PARA ENVIAR PARA O SERVIDOR
      typedef struct Dados {
          int idMensagem;
          int umidade;
          int temperatura;
          char data[128];
          char confirmacao[2];
      }TDados,*PDados;

      //FUNCAO QUE GERA DADOS A SEREM ENVIADOS PARA O SERVIDOR
      TDados gera_dados(TDados dados){
          srand(time(NULL));
          dados.idMensagem++;
          dados.umidade=30+(rand() % 60);
          dados.temperatura=(rand() % 100)-50;
          strcpy(dados.confirmacao,"");
          /** Gera a data e hora atual:*/
          time(&dados.data);
          strftime(dados.data,sizeof(dados.data), "%H:%M:%S %A %d %b %Y \n", localtime(&dados.data));
          printf(dados.data);
          /*strcpy(dados.date,"Data: ");
          strcat(dados.date,__DATE__);
          strcat(dados.date," - Hora: ");
          strcat(dados.date,__TIME__);*/
          return dados;
      }
      int main(int argc,char *argv[]) {    
          //DECLARANDO VARIAVEIS
          WSADATA data;
          SOCKET winsock;
          SOCKADDR_IN sock;
          char strDados[1024];
          int bytes;
          TDados dados;
          PDados pdados;
          dados.idMensagem=0;
          int idCliente=5;
          while(1){
              //INICIALIZANDO WINSOCK
              if(WSAStartup(MAKEWORD(1,1),&data)==SOCKET_ERROR){
                  printf("Erro ao inicializar o winsock");
                  return 0;
              }
              //CRIANDO SOCKET
              if((winsock = socket(AF_INET,SOCK_STREAM,0))==SOCKET_ERROR){
                  printf("Erro ao criar socket");
                  return 0;
              }
              //ESTRUTUDA DO SOCKET
              sock.sin_family=AF_INET;
              sock.sin_port=htons(5000);
              sock.sin_addr.s_addr=inet_addr("127.0.0.1");
              
              //GERANDO DADOS...
              printf("\n ------------GERANDO OS DADOS--------------- \n");
              dados=gera_dados(dados);
              //sprintf(strDados,"%d,%d,%d,%d,%s",idCliente,dados.idMensagem,dados.umidade,dados.temperatura,dados.date);
              //printf("\n ------------IMPRIMINDO OS DADOS--------------- \n");
              //printf(strDados);
              printf("\n --------------------------- \n");
              //CONEXAO COMO SERVIDOR, CASO NÃO SE CONECTE RETORNA ERRO
              if(connect(winsock,(SOCKADDR*)&sock,sizeof(sock))==SOCKET_ERROR){
                  printf("Erro ao se conectar");
                  return 0;
              }
              printf("Conectado!\n");    
              while(strcmp(dados.confirmacao,"ok")){
                  printf("Enviando Dados ao servidor!\n");
                  //ENVIANDO MENSAGEM
                  //char buffer[sizeof(Header)];(TDados*)
                  //memcpy(buffer, &header, sizeof(Header));
                  char* pdados= (PDados)malloc (sizeof(TDados)*1);   /// DEI MOLLOC PRA ENVIAR PELO WINSOCK
                  memcpy(pdados, &dados, sizeof(dados));               /// MEMCPY NEM SEI Q Q ISSO DIREITO USEI PQ MANDARAM
                  if(send(winsock,pdados,sizeof(dados),NULL) < 0){  /// ENVIANDO PELO WINSOCK
                      perror("Erro ao enviar a mensagem \n");
                      exit(1);
              }
                  //RECEBENDO CONFIRMACAO
                  printf("Recebendo resposta do servidor!\n");
                  memset(dados.confirmacao,0,2);
                  bytes=recv(winsock,dados.confirmacao,2,0);
                  if(bytes==-1){
                      printf("Conexão perdida");
                      getch();
                      return 0;
                  }else{
                      printf("\nMensagem Recebida %s \n",dados.confirmacao);
                  }
              }
              
              closesocket(winsock);
              //FAZ O PROGRAMA ESPERAR 30 SEGUNDOS PARA ENVIAR NOVA MENSAGEM
              Sleep(30000);
          }
          getch();
          closesocket(winsock);
          WSACleanup();
          return 0;
          
      }
       
      ------------------------------------------------------------------------------------------------------------------------------
      servidor em python ... NOTA : AINDA NÃO SEI RECEBER NA ESTRUTURA CORRETAMENTE.
       
      import base64
      # FUNCAO DE PERSISTENCIA
      def salvaLog(string):
          try:
              with open('log.txt','rt') as arq:
                  conteudo = arq.readlines()
                  if conteudo!="":
                      conteudo.append("\n")
                  conteudo.append(msg)
          except IOError:
              print('Arquivo não encontrado!')
          #~ arq=open('log.txt','rt',encoding="utf-8")
          #~ conteudo = arq.readlines()
          #~ if conteudo!="":
              #~ conteudo.append("\n")
              conteudo=msg
          arq=open('log.txt','wt',encoding="utf-8")
          arq.writelines(conteudo)
          arq.close()
      import struct
      idMensagem=0
      umidade=0
      temperatura=0
      data=b''
      confirmacao=b''

      import socket
      HOST = ''              # Endereco IP do Servidor
      PORT = 5000            # Porta que o Servidor esta
      tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
      orig = (HOST, PORT)
      tcp.bind(orig)
      tcp.listen(5)
      while True:
          print ('Servidor Aberto\n')
          conexao, cliente = tcp.accept()
          print ('Conectado por', cliente)
          print ('Recebendo mensagem\n')
          msg = conexao.recv(142)
          print(len(msg))
          print (struct.calcsize('i i i 128s 2s'))
          print (msg)
          print(msg.decode())
          #~ msg= base64.decodebytes(msg)
          #~ print (msg)
          #~ print (msg.decode())
          cod = struct.unpack('i i i 128s 2s',msg)
          print (cod)
          (idMensagem,umidade,temperatura,data,confirmacao) = struct.unpack('i i i 128s 2s',msg)
          print ("Mensagem recebida, decodificando....\n")
          msg=msg.decode('UTF-8')
          print(msg)
          resposta='ok'
          conexao.send(resposta.encode())
          print ('\nSalvando em LOG as informacoes do cliente', cliente)
          salvaLog(msg)
          print ('\nFinalizando conexao do cliente', cliente)
          print("\n ----------------------------------------- \n")
          conexao.close()
       
    • Por Manu Oliveira
      Vetor é um conjunto de variáveis subordinadas a um único nome e struct também é um conjunto de variáveis subordinadas a um único nome.  Meu professor pediu para diferencia -las. mais estou com dificuldade.
       
       
    • Por Fah
      Boa Noite Pessoal!
      Estou com dificuldade em implementar um exercício de lista simplesmente encadeada.  Nele pede para criar uma estrutura com os dados de um aluno (matricula, nome e media), e outra para ser a lista (com a estrutura com os dados do aluno e um no com as informações do próximo nó). Uma das opções é para inserir os dados de um novo aluno em ordem crescente de matricula. O código está dando erro. Vocês conseguem me dizer onde estou errando? Vejam meu código:
       
      #include<stdio.h> #include<stdlib.h> #include<string.h> struct aluno{     int matricula;     char nome[100];     float media; }; typedef struct aluno Aluno; struct no{     Aluno* dados;     struct no* prox; }; typedef struct no No; No* cria(No* l){ No* p=(No*)malloc(sizeof(No)); p->dados=NULL; return l; } No* ins_ordenado(No* l,int mat,char* nome,float nota){     Aluno* Al=(Aluno*)malloc(sizeof(Aluno));     No* novo=(No*)malloc(sizeof(No));     int i=0;     Al->matricula=mat;     while(nome!='\0'){        Al->nome=nome;        i++;     }     Al->nome=NULL;     Al->media=nota;     novo->dados=Al;     No*p=l;     No*aux=NULL;     if(l==NULL){         novo->prox=l;         return novo;     }         while(p!=NULL&&p->dados->matricula<Al->matricula){               aux=p;               p=p->prox;         }         novo->prox=aux->prox;         aux->prox=novo;         if(p==NULL){             novo->prox=NULL;         }     return l; } void imprime(No* l){     No* p;     printf("turma 1:\n");     for(p=l;p!=NULL;p->prox){         printf("Matricula: %d\t Nome: %s Nota:%f\n",p->dados->matricula,p->dados->nome,p->dados->media);     }     printf("\n"); } int vazia(No* l){     return(l==NULL); } int main(){ No* l1=cria(l1); l1=ins_ordenado(l1,1,"Maria",5); printf("vazia? %d",vazia(l1)); //imprime(l1); return 0; }
       
      Desde já, Obrigada!
    • Por Johnny Saymon
      Boa tarde.
       
      Estou tentando modularizar meu código Javascript, e iniciei tentando trabalhar com o RequireJS mas ainda não consegui compreender a lógica, acredito que com um exemplo será melhor para explicar meu problema, abaixo colocarei o mínimo de código possível para ilustrar o problema, segue:
       
      // arquivo ClasseY.js define(["require", "exports", "pacote-x"], function (require, exports, pacote-x) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var ClasseY = (function () { function ClasseY { // código }; return ClasseY; })(); exports.ClasseY = ClasseY; }); Tenho outras "classes" que compõe esse pacote seguindo essa mesma estrutura do código acima.
      Rodei o RequireJs Optimizer para unir todos os arquivos em um só que chamei de "main.js", com isso tive uma concatenação e minificação do código que resultou em algo assim:
       
      define("ClasseY",["require","exports","pacote-x"],function(t,e,o){"use strict"; // e todo o restante do código segue... Por fim, parti para o html utilizando essas tags
       
      <script type="text/javascript" src="require.js"></script> <script type="text/javascript"> require(["main"], function(m){ var y = new m.ClasseY; }); </script> Mas meu código não funcionou, o Require JS até vai buscar o arquivo "main.js" mas o parâmetro "m" é "undefined".
       
      Onde está o erro? Esse é um bom fluxo de trabalho?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.