Ir ao conteúdo
  • Cadastre-se

fdsmello

Membro Pleno
  • Posts

    43
  • Cadastrado em

  • Última visita

Tudo que fdsmello postou

  1. quando eu crio o objeto igreja ele esta dando nullpointException. Não sei porque O IgrejaDAO package dao; import java.sql.Connection; import java.sql.PreparedStatement; import conexao.Conexaofactory; import modelo.Igreja; public class IgrejaDAO extends Conexaofactory { public void inserir(Igreja igreja){ Connection conn =null; PreparedStatement stat = null; StringBuilder sb = new StringBuilder(); sb.append("INSERT INTO igreja (id_igreja,id_estilo,id_bairro,anoconstru,id_pontoturistico) "); sb.append("VALUES (?,?,?,?,?"); try { conn = getConexao(); stat = conn.prepareStatement(sb.toString()); stat.setInt(1, igreja.getId_igreja()); stat.setInt(2, igreja.getEstiloigreja().getId_estilo()); stat.setInt(3, igreja.getBairro().getId_bairro()); stat.setString(4, igreja.getAnoConstru()); stat.setInt(6, igreja.getId_pontoTuristico()); stat.executeQuery(); } catch (Exception e) { // TODO: handle exception } } } Os modelos Igreja package modelo; public class Igreja extends PontoTuristico { private String anoConstru; private int id_igreja; private Estiloigreja estiloigreja; private Bairro bairro; public String getAnoConstru() { return anoConstru; } public void setAnoConstru(String anoConstru) { this.anoConstru = anoConstru; } public int getId_igreja() { return id_igreja; } public void setId_igreja(int id_igreja) { this.id_igreja = id_igreja; } public Estiloigreja getEstiloigreja() { return estiloigreja; } public void setEstiloigreja(Estiloigreja estiloigreja) { this.estiloigreja = estiloigreja; } public Bairro getBairro() { return bairro; } public void setBairro(Bairro bairro) { this.bairro = bairro; } } Modelo Bairro package modelo; public class Bairro { private int id_bairro; private String descricao; public int getId_bairro() { return id_bairro; } public void setId_bairro(int id_bairro) { this.id_bairro = id_bairro; } public String getDescricao() { return descricao; } public void setDescricao(String descricao) { this.descricao = descricao; } } modelo EstiloIgreja package modelo; public class Estiloigreja { private int id_estilo; private String estiloarquitetural; public int getId_estilo() { return id_estilo; } public void setId_estilo(int id_estilo) { this.id_estilo = id_estilo; } public String getEstiloarquitetural() { return estiloarquitetural; } public void setEstiloarquitetural(String estiloarquitetural) { this.estiloarquitetural = estiloarquitetural; } } A classe que Igreja extends package modelo; public class PontoTuristico { private String nome; private int id_pontoTuristico; public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public int getId_pontoTuristico() { return id_pontoTuristico; } public void setId_pontoTuristico(int id_pontoTuristico) { this.id_pontoTuristico = id_pontoTuristico; } } Testando para ver se vai inserir no banco mas só q da nullPoinner antes de chegar na igrejaDao.inserir Da problema aqui // igreja.getBairro().setId_bairro(1); igreja.getBairro().setId_bairro(bairro.getId_bairro()); package testeApp; import dao.IgrejaDAO; import modelo.Bairro; import modelo.Estiloigreja; import modelo.Igreja; public class App { public static void main(String[] args) { // TODO Auto-generated method stub Estiloigreja estiloigreja = new Estiloigreja(); Bairro bairro = new Bairro(); Igreja igreja = new Igreja(); IgrejaDAO igrejaDAO = new IgrejaDAO(); bairro.setDescricao("Centro"); bairro.setId_bairro(1); estiloigreja.setId_estilo(1); igreja.setAnoConstru("1985"); // igreja.getBairro().setId_bairro(1); igreja.getBairro().setId_bairro(bairro.getId_bairro()); // igreja.getEstiloigreja().setId_estilo(1); igreja.getEstiloigreja().setId_estilo(estiloigreja.getId_estilo()); igreja.setId_igreja(8); igreja.setId_pontoTuristico(1); igrejaDAO.inserir(igreja); } }
  2. Tenho esse Arquivo no javaScript com essa função. function teste(e) { var expressao; expressao = /[a-zA-Z]/; if(expressao.test(String.fromCharCode(e.keyCode))) { return true; } else { return false; } } E tenho isso no xhtml. Chamo arquivo JavaScript. <script type="text/javascript" src="assets/js/validacaoLetraseEspaco.js"></script> <p:outputLabel for="nome" value="Nome" /> <p:inputText size="25" maxlength="25" id="nome" placeholder="Insira o Nome" required="true" style="width:90%;" validatorMessage="Campo obrigatorio" onkeypress="return validacaoLetraseEspaco(event)" > </p:inputText> Só que não ta pegando o campo esta aceitando números. Era só para aceitar só letras. Alguém ajuda
  3. Estou com um problema em no inputText , quero que ele só aceite letras e espaço no campo.Se o usuario tentar digitar &¨&¨&¨ou 78787 o campo não deve aceitar. Estou sando o JSF e primafaces. Não estou usando o keyFilter do primafaces e não gostaria de usar. O f:validateRegex não valida na hora. E não gostaria de usar JavaScript . Alguém sabe como? <p:inputText size="25" maxlength="25" id="nome" placeholder="Insira o Nome" required="true" style="width:90%;" validatorMessage="Campo obrigatorio" > </p:inputText>
  4. Fiz esse codigo simple alguem sabe dizer porque ta dando esse erro: Diz que espera uma else na linha 2. #include <stdio.h> main() { double valor; scanf("%lf",&valor); if (valor>=0|| valor<=25) { printf("Intervalo [0,25]"); else if (valor>25 || valor <=50) { printf("Intervalo [25,50]"); } else if (valor>50 || valor <=75) { printf("Intervalo [50,75]"); } else if (valor >75 || valor <=100) { printf("Intervalo [75,100]"); } }else printf("Fora de intervalo"); }
  5. To tentando fazer um exercício para cria uma servelt que receba dois parâmetros na sua inicialização, multiplique os dois e retorne para a jsp para exibir na tela. Minha xml. <?xml version="1.0" encoding="UTF-8"?><web-app><display-name>Exe1 </display-name><description>Aplicação lista</description><servlet><servlet-name>Primeira</servlet-name><servlet-class>lista.Primeira</servlet-class> <init-param> <param-name>num1</param-name> <param-value>20</param-value> <param-name>num2</param-name> <param-value>75</param-value> </init-param> <load-on-startup>0</load-on-startup></servlet><servlet-mapping><servlet-name>primeiraQuestao</servlet-name><url-pattern>/lista/Questao1/E1</url-pattern></servlet-mapping></web-app> Meu Servlet package lista;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * Servlet implementation class Primeira */@WebServlet("/Primeira")public class Primeira extends HttpServlet { private static final long serialVersionUID = 1L; private int numero; private int numero1; private int resultado; /** * @see HttpServlet#HttpServlet() */ public Primeira() { super(); // TODO Auto-generated constructor stub } public void init() throws ServletException { super.init(); numero = Integer.parseInt(getInitParameter("num1")); numero1 = Integer.parseInt(getInitParameter("num2")); } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub response.getWriter().append("Served at: ").append(request.getContextPath()); resultado = numero * numero1; response.sendRedirect("Questao1.jsp?resultado=" +resultado); response.sendRedirect("Questao1.jsp?numero=" +numero); response.sendRedirect("Questao1.jsp?numero=" +numero1); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); }} Minha Jsp <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Insert title here</title></head><body><% String x1 = request.getParameter("numero");String x2 = request.getParameter("numero1");String x3 = request.getParameter("resultado");out.println("recebir o paramento" + x1);out.println("recebir o paramento" + x2);out.println("o valor foi" + x3);%></body></html> Não consigo imprimir os valores na minha jsp. Alguém pode ajudar? grato
  6. Boa noite, Alguém sabe alguma biblioteca em java que eu possa localizar HD e vê a quantidade de espaço que tem nele?
  7. Reformulei a função esta funcionando em partes.Mas, quando passo o paramento da esse erro. Não passando paramento ela me retorna só os primeiros dados iguais. ERRO: referência à coluna "cod_especie" é ambígua LINE 1: Select nome_raca,cod_especie From RACA R , ESPECIE E where (... ^ QUERY: Select nome_raca,cod_especie From RACA R , ESPECIE E where (E.cod_especie = R.cod_especie) CONTEXT: função PL/pgSQL mostraraca(integer) linha 5 em FOR sobre registros de SELECT ********** Error ********** ERRO: referência à coluna "cod_especie" é ambígua SQL state: 42702 Context: função PL/pgSQL mostraraca(integer) linha 5 em FOR sobre registros de SELECT CREATE OR REPLACE FUNCTION mostraRaca (cod_especie INTEGER) RETURNS SETOF record AS $$DECLARE ret record;BEGIN FOR ret IN Select nome_raca,cod_especie From RACA R , ESPECIE E where (E.cod_especie = R.cod_especie) LOOP RETURN NEXT ret; END LOOP;END;$$ LANGUAGE plpgsql;Select *From mostraRaca ('2') as (nome_raca varchar); // se passar o vazio me retorna uma parte quando passo com o dois da erro
  8. Sou novo em BD. To tentando desenvolver essa função só que da um erro. Gostaria q ela mostra-se o nome da raça referente ao código da especie o usuário vai passar a letra e função mostraria os nomes da raça para aquelas especies . CREATE TABLE ANIMAL (cod_animal integer,nome_animal varchar (30),dta_nascimento varchar(10),sexo varchar (15),cod_especie integer,cpf integer,cod_raca integer);ALTER TABLE Animal RENAME COLUMN nome TO nome_animal;CREATE TABLE ESPECIE( cod_especie integer,nome_especie varchar (15));CREATE TABLE CLIENTE( cpf integer,nome_cliente varchar (30),endereco varchar (40),cep varchar (9),teleforne varchar (9));ALTER TABLE Cliente RENAME COLUMN nome TO nome_cliente;CREATE TABLE RACA (cod_raca integer,nome_raca varchar (20),cod_especie integer );CREATE TABLE TRATAMENTO( cod_consulta integer,dta_inicial varchar (10),cod_tratamento integer,nome_tratamento varchar (20) );CREATE TABLE CONSULTA( cod_animal integer,dta_consulta varchar(10),cod_consulta integer,cod_veterinario integer,descricao_consulta varchar (70));CREATE TABLE EXAME( cod_consulta integer,cod_exame integer,resultado varchar (20),tipo_exame varchar (20));CREATE TABLE VETERINARIO(cod_veterinario integer,nome_veterinario varchar (15),telefone varchar (9));ALTER TABLE ANIMAL ADD CONSTRAINT "pkAnimal" primary key ("cod_animal");ALTER TABLE ESPECIE ADD CONSTRAINT "pkEspecie" primary key ("cod_especie");ALTER TABLE RACA ADD CONSTRAINT "pkRaca" primary key ("cod_raca");ALTER TABLE CLIENTE ADD CONSTRAINT "pkCliente" primary key ("cpf");ALTER TABLE TRATAMENTO ADD CONSTRAINT "pkTratamento" primary key ("cod_tratamento");ALTER TABLE CONSULTA ADD CONSTRAINT "pkConsulta" primary key ("cod_consulta");ALTER TABLE EXAME ADD CONSTRAINT "pkExame" primary key ("cod_exame");ALTER TABLE VETERINARIO ADD CONSTRAINT "pkVeterinario" primary key ("cod_veterinario");ALTER TABLE ANIMAL ADD CONSTRAINT "fkEspecieAnimal" FOREIGN KEY ("cod_especie") REFERENCES RACA ("cod_raca");ALTER TABLE ANIMAL ADD CONSTRAINT "fkClienteAnimal" FOREIGN KEY ("cpf") REFERENCES CLIENTE ("cpf");ALTER TABLE RACA ADD CONSTRAINT "fkEspecieRaca" FOREIGN KEY ("cod_especie") REFERENCES ESPECIE ("cod_especie");ALTER TABLE CONSULTA ADD CONSTRAINT "fkAnimalConsulta" FOREIGN KEY ("cod_animal") REFERENCES ANIMAL ("cod_animal");ALTER TABLE CONSULTA ADD CONSTRAINT "fkVeterinarioConsulta" FOREIGN KEY ("cod_veterinario") REFERENCES VETERINARIO ("cod_veterinario");ALTER TABLE EXAME ADD CONSTRAINT "fkExameConsulta" FOREIGN KEY ("cod_consulta") REFERENCES CONSULTA ("cod_consulta");ALTER TABLE TRATAMENTO ADD CONSTRAINT "fkConsultaTratamento" FOREIGN KEY ("cod_consulta") REFERENCES CONSULTA ("cod_consulta");CREATE OR REPLACE FUNCTION mostraRaca ( char opcao ) RETURN CHAR AS $$DECLARE opcao ALIAS FOR $1;retorno Char(15);BEGIN IF opcao = 'C' THEN Select nome_raca From RACA R , ESPECIE E where (E.cod_especie = R.cod_raca)End if;END $$Language plpsql;Select mostraRaca ('C'); // não ta funcionando
  9. Gostaria de uma ajudinha. Para apresetar o resultado não aparece nada #include <stdio.h>#include <stdlib.h>#define TAM_MAXIMO 100000void lista_vetor(int *vetor, int tamanho);void ordena_bubble(int *vetor, int tamanho);int main(int argc, char *argv[]){ int vetor[TAM_MAXIMO]; int tamanho; int x; char metodo; printf("\nTamanho:"); scanf("%d", &tamanho); srand(tamanho); for (x = 0; x < tamanho; x++) vetor[x] = rand() % 100; lista_vetor(vetor, tamanho); printf("\n\nMetodo:"); printf("\n1 - Bubble"); printf("\n2 - Merge"); printf("\n\nOpcao:"); metodo = getch(); printf ("\n"); switch (metodo) { case '1': ordena_bubble(vetor, tamanho); break; case '2': ordena_merge(vetor, tamanho); break; } system("PAUSE"); return 0;}void lista_vetor(int *vetor, int tamanho){ int x; for (x = 0; x < tamanho; x++) printf("%d ", vetor[x]);}void ordena_bubble(int *vetor, int tamanho){ int i =0; int j =0; int aux =0; for (i = 0; i < tamanho; i++) { printf("teste"); for (j=0; j<i; j++) { if (vetor[j]>vetor[j+1]) { vetor [j] = aux; vetor [j] = vetor [j+1]; vetor[j+1] = vetor[j]; } } } void lista_vetor(vetor, tamanho); // preciso de ajuda aqui para apresentar não aparece nada }
  10. É porque estou começando cara. Só aprendi assim.
  11. Sou novo em banco de dados estou com problema nessa sum. Ela não mostra nada. create table livro( isbn integer , nome_livro varchar(30) , cod_editora integer, qtdlivros integer , cod_assunto integer);create table editora( cod_editora integer , nome_editora varchar(30) );create table assunto( cod_assunto integer, nome varchar (30) );--criaçao de chave primariaalter table assunto add constraint "pkAssunto" primary key ("cod_assunto");alter table livro add constraint "pklivro" primary key ("isbn");alter table editora add constraint "pkeditora" primary key ("cod_editora");--criaçao de chave estrangeiraalter table livro add constraint "fkEditoraLivro" foreign key ("cod_editora") REFERENCES editora ("cod_editora");alter table livro add constraint "fkAssuntoLivro" foreign key ("cod_assunto") REFERENCES assunto ("cod_assunto");--insetinsert into editora (cod_editora,nome_editora) values (1,'Abril');insert into editora (cod_editora,nome_editora) values (2,'Globo');insert into editora (cod_editora,nome_editora) values (3,'Saraiva');insert into assunto (cod_assunto,nome) values (1,'infantil');insert into assunto (cod_assunto,nome) values (2,'tecnologia');insert into assunto (cod_assunto,nome) values (3,'adulto');insert into assunto (cod_assunto,nome) values (4,'teen');insert into assunto (cod_assunto,nome) values (5,'gerais');insert into assunto (cod_assunto,nome) values (6,'Humor');insert into livro(isbn,nome_livro,cod_editora,cod_assunto,qtdlivros) values (1,'branca de neve',1,1,20);insert into livro(isbn,nome_livro,cod_editora,cod_assunto,qtdlivros) values (2,'Harry potter',1,4,30);insert into livro(isbn,nome_livro,cod_editora,cod_assunto,qtdlivros) values (3,'tecmundo',1,2,100);insert into livro(isbn,nome_livro,cod_editora,cod_assunto,qtdlivros) values (4,'playboy',2,3,10);insert into livro(isbn,nome_livro,cod_editora,cod_assunto,qtdlivros) values (5,'exame',3,5,40);insert into livro(isbn,nome_livro,cod_editora,cod_assunto,qtdlivros) values (6,'arte de guerra',2,5,20);insert into livro(isbn,nome_livro,cod_editora,cod_assunto,qtdlivros) values (7,'Harry potter',1,4,30);--Quantidade de livro por editora fazer dpsSELECT nome_editora, sum(qtdlivros)-- conta o valor total From Editora E,Livro LWhere nome_editora = cod_editoraGroup By nome_editora
  12. Estou com problema para salvar e carregar aquivo nesse codigo ele salva tudo sem nada e carrega sem nada , no caso sem nem uma informação. #include<stdlib.h>#include<stdio.h>#include<string.h>#define QUANTIDADE_CLIENTES 99999void InserirCliente(void);void ApresentarCliente(void);void GravarDados (void);void AlterarCliente(void);typedef struct telefone{ char codInternacional[3]; char codArea[3]; char numeroTel[10];} tpTelefone;typedef struct data{ int dia; int mes; char ano[5];} tpData;struct cliente{ char nome[51]; tpTelefone residencialTel; char cpf[12]; tpData nascimento; char logradouro[60]; char bairro[20]; char cep[10]; char complemento[51]; char email[100]; tpData DtCadastro;};struct cliente listaClientes[QUANTIDADE_CLIENTES];int inicioListaCliente = 0;int fimListaCliente = 0;int MenuPrincipal(){ //----------------------MENU PRICIPAL------------------------------------------- char escolha=0; system("color 1f");//função para alterar a cor o 1º representa o fundo e 2º numero representa caracteres printf("\n ======================================\n"); printf(" | __ __ ___ ___ __ |"); printf("\n | |\\ /| | | | | / / | | |"); printf("\n | | \\/ | |-- |-- | / / |--| |"); printf("\n | | | | | | --- --- | | |"); printf("\n | VERSAO 1.0 |"); printf("\n ======================================\n"); printf("\n MENU PRINCIPAL"); printf("\n\n\n \t\tCLIENTE"); printf("\n\n\n \t[1] - INCLUIR CLIENTE\t\t[2]GRAVAR DADOS"); printf("\n\n \t[3] - CARREGAR CLIENTES\t\t[4]ALTERAR DADOS CLIENTES"); printf("\n\n\n Bem Vindo(a) ao MF PIZZA!\n"); printf("________________________________________________________________________________"); printf("\n[Opcao]: "); return (getche()); //------------------------MENU PRINCIPAL----------------------------------------}void TrataMenu( char op){ switch(op) { case '1':InserirCliente(); break; case '2':GravarDados(); break; case '3': ApresentarCliente(); break; case '4': AlterarCliente(); break; }}int main(){ int opcao = 0; do { opcao=MenuPrincipal(); TrataMenu(opcao); } while(opcao != 0); return (0);}void InserirCliente(){ int escolha =0; int contadorCpf =0; system("cls"); do { system("cls"); printf("DESEJA VOLTAR AO MENU PRINCIPAL \n\n[1]RETORNA AO MENU PRINCIPAL\n\nAPERTE [2] PARA PROSSEGUIR \n\n[ ]\b\b"); scanf("%d",&escolha); if(escolha==1) { system("cls"); main(); } else if (escolha==2) { system("cls"); system("color 0f"); printf("\n INSERIR CLIENTE"); printf("\n ==============="); if(fimListaCliente < QUANTIDADE_CLIENTES) { fflush(stdin); printf("\n\n\nNOME: "); scanf("%51[a-z][A-Z][^\n]",listaClientes[fimListaCliente].nome); strupr(listaClientes[fimListaCliente].nome); // Transforma a string em maiscula para facilitar numa função pesquisa fflush(stdin); printf("\nTELEFONE: "); printf("\n DIGITE O CODIGO NACIONAL: [ ]\b\b\b"); scanf("%3[0-9][^\n]",listaClientes[fimListaCliente].residencialTel.codInternacional);// função fgest para não passar de caracteres estupulados da sting fflush(stdin); printf("\n DIGITE O CODIGO AREA: [ ]\b\b\b"); scanf("%3[0-9][^\n]",listaClientes[fimListaCliente].residencialTel.codArea); fflush(stdin); printf("\n DIGITE O TELEFONE RESIDENCIAL: "); scanf("%10[^\n]",listaClientes[fimListaCliente].residencialTel.numeroTel); fflush(stdin); do { printf("\nCPF: "); scanf("%12[0-9][^\n]",listaClientes[fimListaCliente].cpf); fflush(stdin); contadorCpf = strlen(listaClientes[fimListaCliente].cpf); }while((contadorCpf< 11) || (contadorCpf>11)); do { printf("\nDATA DE NASCIMENTO: "); printf("DIA: "); scanf("%d",&listaClientes[fimListaCliente].nascimento.dia); fflush(stdin); }while((listaClientes[fimListaCliente].nascimento.dia > 31)|| (listaClientes[fimListaCliente].nascimento.dia<1)); do { printf("MES: "); scanf("%d",&listaClientes[fimListaCliente].nascimento.mes); fflush(stdin); }while((listaClientes[fimListaCliente].nascimento.mes < 1)|| (listaClientes[fimListaCliente].nascimento.mes > 12)); printf("ANO: "); scanf("%5[0-9][^\n]",listaClientes[fimListaCliente].nascimento.ano); //fgets(listaClientes[fimListaCliente].nascimento.ano,5,stdin); fflush(stdin); printf("\nE-MAIL: "); scanf("%100[^\n]",listaClientes[fimListaCliente].email); strupr(listaClientes[fimListaCliente].email); fflush(stdin); printf("\nLOGRADOURO (rua, avenida, travessa, ...): "); scanf("%60[^\n]",listaClientes[fimListaCliente].logradouro); strupr(listaClientes[fimListaCliente].logradouro); fflush(stdin); printf("\nCOMPLEMENTO (casa, apto, ...): "); scanf("%51[^\n]",listaClientes[fimListaCliente].complemento); strupr(listaClientes[fimListaCliente].complemento); fflush(stdin); printf("\nBAIRRO: "); scanf("%20[^\n]",listaClientes[fimListaCliente].bairro); strupr(listaClientes[fimListaCliente].bairro); fflush(stdin); printf("\nCEP: "); scanf("%10[^\n]",listaClientes[fimListaCliente].cep); strupr(listaClientes[fimListaCliente].cep); fflush(stdin); printf("\nDATA DO CADASTRO: "); do{ printf("DIA: "); scanf("%d",&listaClientes[fimListaCliente].DtCadastro.dia); fflush(stdin); }while((listaClientes[fimListaCliente].DtCadastro.dia > 31)|| (listaClientes[fimListaCliente].DtCadastro.dia<1)); do{ printf("MES: "); scanf("%d",&listaClientes[fimListaCliente].DtCadastro.mes); fflush(stdin); }while((listaClientes[fimListaCliente].DtCadastro.mes < 1)|| (listaClientes[fimListaCliente].DtCadastro.mes > 12)); printf("ANO: "); scanf("%5[0-9][^\n]",listaClientes[fimListaCliente].DtCadastro.ano); fflush(stdin); printf("\n\t\t\t CLIENTE CADASTRADO! \n\n\t PRESSIONE QUALQUER TECLA PARA RETORNAR AO MENU PRINCIPAL"); fimListaCliente++; } else { printf("\n\n\nQUANTIDADE DE CLIENTES CADASTRADOS CHEGOU AO LIMITE!"); } } getchar();}while ((escolha<1)||(escolha>2));}void GravarDados (){ system("cls"); int indice = 0; char temp[4096]; FILE *ptrArq; ptrArq = fopen("CLIENTE.txt","a"); if(!ptrArq) { printf("\nErro na abertura do arquivo! Finalizando o programa!\n"); getchar(); return; } for (indice=0;indice<fimListaCliente;indice++) { sprintf(temp,"\n\n______________________________________\n\nNOME: %s;TELEFONE: +%s[%s]%s;CPF: %s;DATA NASC: %d/%d/%s;EMAIL: %s;LOGRADOURO: %s;COMPLEMENTO: %s;BAIRRO: %s;CEP: %s;DATA CADASTRO: %d/%d/%s;\n",listaClientes[fimListaCliente].nome,listaClientes[fimListaCliente].residencialTel.codInternacional,listaClientes[fimListaCliente].residencialTel.codArea,listaClientes[fimListaCliente].residencialTel.numeroTel,listaClientes[fimListaCliente].cpf,listaClientes[fimListaCliente].nascimento.dia,listaClientes[fimListaCliente].nascimento.mes,listaClientes[fimListaCliente].nascimento.ano,listaClientes[fimListaCliente].logradouro,listaClientes[fimListaCliente].complemento,listaClientes[fimListaCliente].bairro,listaClientes[fimListaCliente].cep,listaClientes[fimListaCliente].email,listaClientes[fimListaCliente].DtCadastro.dia,listaClientes[fimListaCliente].DtCadastro.mes,listaClientes[fimListaCliente].DtCadastro.ano); fputs(temp,ptrArq); printf("Cadastros Salvos"); } fclose(ptrArq); getchar();}void ApresentarCliente(){ { system("cls"); printf("\n CLIENTES CADASTRADOS"); printf("\n \t============================="); char c; FILE *ptrvisualizar; ptrvisualizar = fopen("CLIENTE.txt", "r"); do { c = fgetc(ptrvisualizar); printf("%c",c); if (c == ';') printf("\n"); } while (c != EOF); getch(); fclose(ptrvisualizar); getchar(); } getchar();}
  13. No caso era para salvar só 5 posições.Aí quando abrisse o programa de novo e tivesse gravado 5 clientes informasse que não pode mais inserir clientes.
  14. To precisando de uma ajuda nesse codigo. Minha intenção é que se tiver 5 clientes ja cadastrado no arquivo ele informar que esta cheio e não pode inserir mais.Alguem poderia ajudar. #include<stdlib.h>#include<stdio.h>#include<string.h>#define QUANTIDADE_CLIENTES 5void InserirCliente(void);void ApresentarCliente(void);typedef struct telefone{ char codInternacional[3]; char codArea[3]; char numeroTel[10];} tpTelefone;typedef struct data{ int dia; int mes; char ano[5];} tpData;struct cliente{ char nome[51]; tpTelefone residencialTel; char cpf[12]; tpData nascimento; char logradouro[60]; char bairro[20]; char cep[10]; char complemento[51]; char email[100]; tpData DtCadastro;};struct cliente listaClientes[QUANTIDADE_CLIENTES];int inicioListaCliente = 0;int fimListaCliente = 0;int MenuPrincipal(){ //----------------------MENU PRICIPAL------------------------------------------- char escolha=0; system("color 1f");//função para alterar a cor o 1º representa o fundo e 2º numero representa caracteres printf("\n ======================================\n"); printf(" | __ __ ___ ___ __ |"); printf("\n | |\\ /| | | | | / / | | |"); printf("\n | | \\/ | |-- |-- | / / |--| |"); printf("\n | | | | | | --- --- | | |"); printf("\n | VERSAO 1.0 |"); printf("\n ======================================\n"); printf("\n MENU PRINCIPAL"); printf("\n\n\n\tCLIENTE\t\t\t PIZZA\t\t\tPEDIDOS"); printf("\n\n\n [1] - INCLUIR CLIENTE\t\t[4] - INCLUIR PIZZA\t[7] - INCLUIR PEDIDO"); printf("\n\n [2] - VISUALIZAR CLIENTE\t[5] - VISUALIZAR PIZZA\t[8] - VISUALIZAR PEDIO"); printf("\n\n [3] - ALTERAR DADOS CLIENTE\t[6] - ALTERAR PIZZA\t[9] - GERAR NOTA"); printf("\n\n\n Bem Vindo(a) ao MF PIZZA!\n"); printf("________________________________________________________________________________"); printf("\n[Opcao]: "); return (getche()); //------------------------MENU PRINCIPAL----------------------------------------}void TrataMenu( char op){ switch(op) { case '1':InserirCliente(); break; case '2': ApresentarCliente(); break; }}int main(){ int opcao = 0; do { opcao=MenuPrincipal(); TrataMenu(opcao); } while(opcao != 0); return (0);}void InserirCliente(){ char temp[4096]; FILE *ptrArq; int escolha =0; system("cls"); do { system("cls"); printf("DESEJA VOLTAR AO MENU PRINCIPAL \n\n[1]RETORNA AO MENU PRINCIPAL\n\nAPERTE [2] PARA PROSSEGUIR \n\n[ ]\b\b"); scanf("%d",&escolha); if(escolha==1) { system("cls"); main(); } else if (escolha==2) { system("cls"); system("color 0f"); printf("\n INSERIR CLIENTE"); printf("\n ==============="); ptrArq = fopen("CLIENTE.txt","a"); if(!ptrArq) { printf("\nErro na abertura do arquivo! Finalizando o programa!\n"); getchar(); exit(0); } if(fimListaCliente < QUANTIDADE_CLIENTES) { fflush(stdin); printf("\n\n\nNOME: "); fgets(listaClientes[fimListaCliente].nome,51,stdin); strupr(listaClientes[fimListaCliente].nome); // Transforma a string em maiscula para facilitar numa função pesquisa fflush(stdin); printf("\nTELEFONE: "); printf("\n DIGITE O CODIGO NACIONAL: [ ]\b\b\b"); fgets(listaClientes[fimListaCliente].residencialTel.codInternacional,3,stdin);// função fgest para não passar de caracteres estupulados da sting fflush(stdin); printf("\n DIGITE O CODIGO AREA: [ ]\b\b\b"); fgets(listaClientes[fimListaCliente].residencialTel.codArea,3,stdin); fflush(stdin); printf("\n DIGITE O TELEFONE RESIDENCIAL: "); fgets(listaClientes[fimListaCliente].residencialTel.numeroTel,10,stdin); fflush(stdin); printf("\nCPF: "); fgets(listaClientes[fimListaCliente].cpf,12,stdin); fflush(stdin); do { printf("\nDATA DE NASCIMENTO: "); printf("DIA: "); scanf("%d",&listaClientes[fimListaCliente].nascimento.dia); fflush(stdin); }while((listaClientes[fimListaCliente].nascimento.dia > 31)|| (listaClientes[fimListaCliente].nascimento.dia<1)); do { printf("MES: "); scanf("%d",&listaClientes[fimListaCliente].nascimento.mes); fflush(stdin); }while((listaClientes[fimListaCliente].nascimento.mes < 1)|| (listaClientes[fimListaCliente].nascimento.mes > 12)); printf("ANO: "); fgets(listaClientes[fimListaCliente].nascimento.ano,5,stdin); fflush(stdin); printf("\nE-MAIL: "); fgets(listaClientes[fimListaCliente].email,100,stdin); strupr(listaClientes[fimListaCliente].email); fflush(stdin); printf("\nLOGRADOURO (rua, avenida, travessa, ...): "); fgets(listaClientes[fimListaCliente].logradouro,60,stdin); strupr(listaClientes[fimListaCliente].logradouro); fflush(stdin); printf("\nCOMPLEMENTO (casa, apto, ...): "); fgets(listaClientes[fimListaCliente].complemento,51,stdin); strupr(listaClientes[fimListaCliente].complemento); fflush(stdin); printf("\nBAIRRO: "); fgets(listaClientes[fimListaCliente].bairro,20,stdin); strupr(listaClientes[fimListaCliente].bairro); fflush(stdin); printf("\nCEP: "); fgets(listaClientes[fimListaCliente].cep,10,stdin); strupr(listaClientes[fimListaCliente].cep); fflush(stdin); printf("\nDATA DO CADASTRO: "); printf("DIA: "); scanf("%d",&listaClientes[fimListaCliente].DtCadastro.dia); fflush(stdin); printf("MES: "); scanf("%d",&listaClientes[fimListaCliente].DtCadastro.mes); fflush(stdin); printf("ANO: "); fgets(listaClientes[fimListaCliente].DtCadastro.ano,5,stdin); fflush(stdin); printf("\n\t\t\t CLIENTE CADASTRADO! \n\n\t PRESSIONE QUALQUER TECLA PARA RETORNAR AO MENU PRINCIPAL"); sprintf(temp,"\n\n ========================= \n\nNOME: %s;CPF: %s;",listaClientes[fimListaCliente].nome,listaClientes[fimListaCliente].cpf); fputs(temp,ptrArq); fclose(ptrArq); fimListaCliente++; } else { printf("\n\n\nQUANTIDADE DE CLIENTES CADASTRADOS CHEGOU AO LIMITE!"); } } getchar();}while ((escolha<1)||(escolha>2));}void ApresentarCliente(){ { system("cls"); printf("\n CLIENTES CADASTRADOS"); printf("\n ==============="); char c; FILE *ptrvisualizar; ptrvisualizar = fopen("CLIENTE.txt", "r"); do { c = fgetc(ptrvisualizar); printf("%c",c); if (c == ';') printf("\n"); } while (c != EOF); getch(); fclose(ptrvisualizar); getchar(); } /*else { printf("\nLista de Clientes vazia!!!"); getchar(); }*/ getchar();}
  15. fdsmello

    Ajuda aqui

    Meu código nas funções inserir eles estão inserindo automaticamente uma posição com sem dados algum.Sem que eu mande. alguém poderia ajudar #include<stdlib.h>#include<stdio.h>#include<string.h>#include<time.h>#include<conio.h>#include<windows.h> // poder incluir o som de beep prolongado#define QUANTIDADE_CLIENTES 5#define QUANTIDADE_PIZZAS 10#define QUANTIDADE_PEDIDOS 100void InserirCliente(void);void ApresentarCliente(void);void PesquisarCPF(void);void ApresentarSabores(void);void IncluirPizza(void);void InserirPedido(void);void AlterarCliente(void);struct telefone{ char codInternacional[3]; char codArea[3]; char numeroTel[10];};struct data{ char dia[3]; char mes[3]; char ano[5];};struct cliente{ char nome[51]; struct telefone residencialTel; char cpf[12]; struct data nascimento; char logradouro[60]; char bairro[20]; char cep[9]; char complemento[51]; char email[100]; //char data_cad[9]; struct data DtCadastro;};struct valores{float pequena;float media;float grande;float familia;};struct pizza{ char codPizza[3]; char nomePizza[21]; struct valores VlPizza;};struct pedidos{ struct data DtPedido; char idCliente[9]; char codPizza[2]; float valorPizza; char tamanho [2];// usar enum char tipoPagamento[9]; char totalPedido[6];};struct cliente listaClientes[QUANTIDADE_CLIENTES];struct pizza listaPizzas[QUANTIDADE_PIZZAS];struct pedidos gerarPedidos[QUANTIDADE_PEDIDOS];int inicioLista = 0;int fimLista = 0;int MenuPrincipal(){ //----------------------MENU PRICIPAL------------------------------------------- char escolha=0; system("color 1f");//função para alterar a cor o 1º representa o fundo e 2º numero representa caracteres printf("\n ======================================\n"); printf(" | __ __ ___ ___ __ |"); printf("\n | |\\ /| | | | | / / | | |"); printf("\n | | \\/ | |-- |-- | / / |--| |"); printf("\n | | | | | | --- --- | | |"); printf("\n | VERSAO 1.0 |"); printf("\n ======================================\n"); printf("\n MENU PRINCIPAL"); printf("\n\n\n\tCLIENTE\t\t\t PIZZA\t\t\tPEDIDOS"); printf("\n\n\n [1] - INCLUIR CLIENTE\t\t[4] - INCLUIR PIZZA\t[7] - INCLUIR PEDIDO"); printf("\n\n [2] - VISUALIZAR CLIENTE\t[5] - VISUALIZAR PIZZA\t[8] - VISUALIZAR PEDIO"); printf("\n\n [3] - ALTERAR DADOS CLIENTE\t[6] - ALTERAR PIZZA\t[9] - GERAR NOTA"); printf("\n\n\n Bem Vindo(a) ao MF PIZZA!\n"); printf("________________________________________________________________________________"); printf("\n[Opcao]: "); return (getche()); //------------------------MENU PRINCIPAL----------------------------------------}void TrataMenu( char op){ switch(op) { case '1':InserirCliente(); break; case '2': ApresentarCliente(); break; case '3':AlterarCliente(); break; case '4':IncluirPizza(); break; case '5':ApresentarSabores(); break; case '7': InserirPedido(); break; case '0': printf("\nSaindo do programa....\n"); break; //default: printf("\nOpcao invalida!!!\n"); }}int main(){ int opcao = 0; do { opcao=MenuPrincipal(); TrataMenu(opcao); } while(opcao != 0); return (0);}void InserirCliente(){ int escolha =0; system("cls"); printf("DESEJA VOLTAR AO MENU PRINCIPAL \n\n[1]Retorna ao menu principal\nAperte qualquer tecla para continuar \n[ ]\b\b"); scanf("%d",&escolha); if(escolha==1) { system("cls"); main(); } else { system("cls"); system("color 0f"); printf("\n INSERIR CLIENTE"); printf("\n ==============="); if(fimLista < QUANTIDADE_CLIENTES) { fflush(stdin); printf("\n\n\nNOME: "); scanf("%[a-z][A-Z][^\n]", listaClientes[fimLista].nome); strupr(listaClientes[fimLista].nome); // Transforma a string em maiscula para facilitar numa função pesquisa fflush(stdin); printf("\nTELEFONE: "); printf("\n DIGITE O CODIGO NACIONAL: [ ]\b\b\b"); scanf("%[0-9][^\n]",listaClientes[fimLista].residencialTel.codInternacional); fflush(stdin); printf("\n DIGITE O CODIGO AREA: [ ]\b\b\b"); scanf("%[0-9][^\n]", listaClientes[fimLista].residencialTel.codArea); fflush(stdin); printf("\n DIGITE O TELEFONE RESIDENCIAL: "); scanf("%[0-9][^\n]",listaClientes[fimLista].residencialTel.numeroTel); fflush(stdin); printf("\nCPF: "); scanf("%[0-9][^\n]", listaClientes[fimLista].cpf); fflush(stdin); printf("\nDATA DE NASCIMENTO: "); printf("DIA: "); scanf("%[0-9][^\n] ", listaClientes[fimLista].nascimento.dia); fflush(stdin); printf("MES: "); scanf("%[0-9][^\n] ", listaClientes[fimLista].nascimento.mes); fflush(stdin); printf("ANO: "); scanf("%[0-9][^\n] ", listaClientes[fimLista].nascimento.ano); fflush(stdin); printf("\nE-MAIL: "); scanf("%[^\n]", listaClientes[fimLista].email); strupr(listaClientes[fimLista].email); fflush(stdin); printf("\nLOGRADOURO (rua, avenida, travessa, ...): "); scanf("%[^\n]", listaClientes[fimLista].logradouro); strupr(listaClientes[fimLista].logradouro); fflush(stdin); printf("\nCOMPLEMENTO (casa, apto, ...): "); scanf("%[^\n]", listaClientes[fimLista].complemento); strupr(listaClientes[fimLista].complemento); fflush(stdin); printf("\nBAIRRO: "); scanf("%[^\n]", listaClientes[fimLista].bairro); strupr(listaClientes[fimLista].bairro); fflush(stdin); printf("\nCEP: "); scanf("%[0-9][^\n]", listaClientes[fimLista].cep); strupr(listaClientes[fimLista].cep); fflush(stdin); printf("\nDATA DO CADASTRO: "); printf("DIA: "); scanf("%[0-9][^\n] ", listaClientes[fimLista].DtCadastro.dia); fflush(stdin); printf("MES: "); scanf("%[0-9][^\n] ", listaClientes[fimLista].DtCadastro.mes); fflush(stdin); printf("ANO: "); scanf("%[0-9][^\n] ", listaClientes[fimLista].DtCadastro.ano); fflush(stdin); // pega a data atual // _strdate(listaClientes[fimLista].data_cad); printf("\n\t\t\t CLIENTE CADASTRADO! \n\n\t PRESSIONE QUALQUER TECLA PARA RETORNAR AO MENU PRINCIPAL"); fimLista++; } else { printf("\n\n\nQUANTIDADE DE CLIENTES CADASTRADOS CHEGOU AO LIMITE!"); getchar(); } } getchar();}void ApresentarCliente(){ system("color 0f"); int indice =0 ; indice= inicioLista; if(fimLista > 0) { system("cls"); printf("\n CLIENTES CADASTRADOS"); printf("\n ==============="); for(indice=0;indice<fimLista;indice++) { printf("\nNOME:%s\n",listaClientes[indice].nome); printf("TELEFONE:[%s][%s]%s\n",listaClientes[indice].residencialTel.codInternacional,listaClientes[indice].residencialTel.codArea,listaClientes[indice].residencialTel.numeroTel); printf("CPF: %s\n",listaClientes[indice].cpf); printf("DATA NASCIMENTO: %s/%s/%s\n",listaClientes[indice].nascimento.dia,listaClientes[indice].nascimento.mes,listaClientes[indice].nascimento.ano); printf("EMAIL: %s\n",listaClientes[indice].email); printf("LOGRADOURO: %s\n",listaClientes[indice].logradouro); printf("BAIRRO: %s\n",listaClientes[indice].complemento); printf("COMPLEMENTO: %s\n",listaClientes[indice].bairro); printf("CEP: %s\n",listaClientes[indice].cep); printf("DATA DO CADASTRO: %s/%s/%\n",listaClientes[fimLista].DtCadastro.dia,listaClientes[fimLista].DtCadastro.mes,listaClientes[fimLista].DtCadastro.ano); printf("\n---------------------------------------------------------\n"); } } else { printf("\nLista de Clientes vazia!!!"); getchar(); } getchar();}void AlterarCliente(){ system("cls"); printf("========================================\n"); printf(" ALTERAR REGISTRO\n"); printf("========================================\n"); system("cls"); int indice; char buscarNome[51]; int achou = 0; printf("\nDigite o nome que deseja alterar :\n"); scanf("%s",buscarNome); strupr(buscarNome); fflush(stdin); if(fimLista > -1) { do { for(indice = inicioLista;indice <= fimLista ;indice++) { if(!strcmp(buscarNome,listaClientes[indice].nome)) { achou = 1; break; } } if(achou== 1) { int escolha; system("cls"); printf("\n\tESCOLHA A ALTERACAO \n\t"); printf("----------------------------------"); printf("\n\tdigite [1] para alterar o Cpf \n\t "); printf("\n\tdigite [2] para alterar o Logradouro\n\t "); printf("\n\tdigite [3] para alterar o Bairro\n\t "); printf("\n\tdigite [4] para alterar o Cep\n\t"); printf("\n\tdigite [5] para alterar o Telefone\n\t"); printf("\n\tdigite [6] para alterar o email\n\t"); printf("\n\tdigite [0] para SAIR\n\t"); printf("\nDigite a sua escolha: [ ]\b\b "); scanf("%d",&escolha); fflush(stdin); switch(escolha) { case 1: { char aux[12]; printf(" \ndigite o novo CPF:\n"); gets(aux); fflush(stdin); strcpy(listaClientes[indice].cpf,aux); break; } case 2: { char aux[60]; printf(" \ndigite o novo Logradouro:\n"); gets(aux); strupr(aux); fflush(stdin); strcpy(listaClientes[indice].logradouro,aux); break; } case 3: { char aux[20]; printf(" \ndigite o novo bairro:\n"); gets(aux); strupr(aux); fflush(stdin); strcpy(listaClientes[indice].bairro,aux); break; } case 4: { char aux[9]; printf(" \ndigite o Cep:\n"); gets(aux); fflush(stdin); strcpy(listaClientes[indice].cep,aux); break; } case 5: { char aux[3]; char aux1[3]; char aux2[10]; printf(" \nDigite o novo Codigo internacional:\n"); gets(aux); fflush(stdin); printf(" \nDigite o novo Codigo Area:\n"); gets(aux1); fflush(stdin); printf(" \nDigite o novo Telefone:\n"); gets(aux2); fflush(stdin); strcpy(listaClientes[indice].residencialTel.codInternacional,aux); strcpy(listaClientes[indice].residencialTel.codArea,aux); strcpy(listaClientes[indice].residencialTel.numeroTel,aux); break; } case 6: { char aux[100]; printf(" \nDigite o novo email\n"); gets(aux); strupr(aux); fflush(stdin); strcpy(listaClientes[indice].email,aux); break; } default: { printf("opcao invalida!!!\n"); } system("pause"); } } if(achou != 1) { int opcao; printf("\nOPCAO NAO ENCONTRADA :\n"); printf("\nDIGITE [1]PARA TENTAR NOVAMENTE\n[2] PARA SAIR :\n [3]VISUALIZAR CADASTRO :\n"); printf("Digite a opcao: [ ]\b\b"); scanf("%d",&opcao); fflush(stdin); if(opcao==1) { return(AlterarCliente()); } if(opcao==2) { break; } if(opcao==3) { return(ApresentarCliente()); } if(opcao!=2) { printf("\nopcao Ivalida !!\n"); } } }while(achou==2);}}void PesquisarCPF(){ char pesquiCpf [12]; int indice =inicioLista ; system("cls"); printf("\n DIGITE O CPF PARA LOCALIZAR O CADASTRO"); printf("\n ====================================\n\n"); scanf("%[0-9][^\n]",pesquiCpf); fflush(stdin); for(indice=0;indice<fimLista;indice++) { if(!strcmp(pesquiCpf,listaClientes[indice].cpf)) { printf("\nCADASTRO ENCONTRADO \n\n"); printf("%s\n",listaClientes[indice].nome); } /* else { Beep(1234,500); // o primeiro numero refere-se a frequencia em Hertz e o segundo numero refere-se ao tempo em 1500 milisegundo de duração printf("CLIENTE NAO ENCONTRADO!!! \n"); }*/ } system("pause");}void IncluirPizza (){ system("cls"); system("color 0e"); printf("\n INSERIR PIZZA"); printf("\n ==============="); if(fimLista < QUANTIDADE_PIZZAS) { printf("\nCODIGO: "); scanf("%[0-9][^\n]",listaPizzas[fimLista].codPizza); fflush(stdin); printf("\nNOME DA PIZZA: "); scanf("%[^\n]",listaPizzas[fimLista].nomePizza); strupr(listaPizzas[fimLista].nomePizza); fflush(stdin); printf("\nVALOR PARA PEQUENA: "); scanf("%f",&listaPizzas[fimLista].VlPizza.pequena); fflush(stdin); printf("\nVALOR PARA MEDIA: "); scanf("%f",&listaPizzas[fimLista].VlPizza.media); fflush(stdin); printf("\nVALOR PARA GRANDE: "); scanf("%f",&listaPizzas[fimLista].VlPizza.grande); fflush(stdin); printf("\nVALOR PARA FAMILIA: "); scanf("%f",&listaPizzas[fimLista].VlPizza.familia); fflush(stdin); fimLista++; getchar(); }}void ApresentarSabores (){ system("color 0e"); int indice =0; indice = inicioLista; if(fimLista > 0) { system("cls"); printf("\n PIZZAS CADASTRADAS"); printf("\n ===============\n"); printf("\tCODIGO|\tNOME DA PIZZA|\tVALOR |P| |M| \t|G|\t|F|\n"); printf("_______________________________________________________________________\n"); for(indice=0;indice<fimLista;indice++) { printf("\t[%s]\t%s| \t|%.2f|\t|%.2f| \t|%.2f| |%.2f|\n",listaPizzas[indice].codPizza,listaPizzas[indice].nomePizza,listaPizzas[indice].VlPizza.pequena,listaPizzas[indice].VlPizza.media,listaPizzas[indice].VlPizza.grande,listaPizzas[indice].VlPizza.familia); printf("________________________________________________________________________\n"); } } else { printf("\nLista de sabores vazia \n"); getchar(); } printf("\n\n"); getchar();}void InserirPedido(){ if (fimLista<QUANTIDADE_PEDIDOS) { system("color 0e"); system("cls"); ApresentarSabores(); printf("DIGITE O CODIGO DA PIZZA: \n"); scanf("%[^\n]",gerarPedidos[fimLista].codPizza); fflush(stdin); printf("DIGITE O VALOR DA PIZZA: \n"); scanf("%f",&gerarPedidos[fimLista].valorPizza); fflush(stdin); // printf("DIGITE O TAMANHO DA PIZZA \n"); // usar enum char pesquiCpf [12]; int indice =inicioLista ; printf("\n DIGITE O CPF PARA LOCALIZAR O CADASTRO: "); scanf("%[0-9][^\n]",pesquiCpf); fflush(stdin); for(indice=0;indice<fimLista;indice++) { if(!strcmp(pesquiCpf,listaClientes[indice].cpf)) { printf("\nCADASTRO ENCONTRADO \n\n"); printf("----------------------------------------------------\n"); printf("%s\n%s\n[%s][%s]%s\n",listaClientes[indice].nome,listaClientes[indice].cpf,listaClientes[indice].residencialTel.codInternacional,listaClientes[indice].residencialTel.codArea,listaClientes[indice].residencialTel.numeroTel); printf("----------------------------------------------------\n"); } else { Beep(1234,500); // o primeiro numero refere-se a frequencia em Hertz e o segundo numero refere-se ao tempo em 1500 milisegundo de duração printf("CLIENTE NAO ENCONTRADO!!! \n"); getchar(); return (InserirPedido()); } printf("FORMA DE PAGAMENTO: \n"); scanf("[a-z][A-Z][^\n]",gerarPedidos[fimLista].tipoPagamento); printf("DIGITE A DATA DO PEDIDO\n"); printf("DATA: \n"); scanf("%[0-9][^\n]",gerarPedidos[fimLista].DtPedido.dia); fflush(stdin); printf("MES: \n"); scanf("%[0-9][^\n]",gerarPedidos[fimLista].DtPedido.mes); fflush(stdin); printf("ANO: \n"); scanf("%[0-9][^\n]",gerarPedidos[fimLista].DtPedido.ano); fflush(stdin); fimLista++; } } else { printf("LISTA CHEIA !!!!!"); } getchar();}
  16. To com problema na para apresentação na hora de apresentar na tela não apresenta nada. struct pizza{ char cod[3]; char nomePizza[21]; char valor[6]; char tamanho[2];};struct pizza listaPizzas[QUANTIDADE_PIZZAS];void IncluirPizza (){ char temp [4096]; FILE * pizArq; system("cls"); printf("\n INSERIR PIZZA"); printf("\n ==============="); pizArq = fopen("PIZZA.txt","a"); if (!pizArq) { printf("\nErro na abertura do arquivo! Finalizando o programa!\n"); getchar(); exit(0); } if (fimLista < QUANTIDADE_PIZZAS) { printf("\nCODIGO: "); scanf("[0-9][^\n]",listaPizzas[fimLista].cod); fflush(stdin); printf("\nNOME DA PIZZA: "); scanf("[a-z][A-Z]",listaPizzas[fimLista].nomePizza); strupr(listaPizzas[fimLista].nomePizza); fflush(stdin); printf("\nTAMANHO DA PIZZA: "); // USAR ENUM scanf("%[^\n]",listaPizzas[fimLista].tamanho); printf("\nVALOR: "); scanf("[0-9][^\n]",listaPizzas[fimLista].valor); fflush(stdin); sprintf(temp,"\n\n ========================= \n\nCODIGO: %s;NOME PIZZA: %s;TAMANHO: %s;VALOR: %s;\n",listaPizzas[fimLista].cod,listaPizzas[fimLista].nomePizza,listaPizzas[fimLista].tamanho,listaPizzas[fimLista].valor); fputs(temp,pizArq); fimLista++; fclose(pizArq); getchar(); }}void ApresentarSabores (){ if(fimLista > 0) { system("cls"); printf("\n PIZZAS CADASTRADAS"); printf("\n ==============="); char c ; FILE *aberturaArq; aberturaArq = fopen("PIZZA.txt","r"); do { c = fgetc(aberturaArq); printf("%c",c); if(c == ';') printf("\n"); } while (c =!EOF); getch(); fclose(aberturaArq); getchar(); } else { printf("Lista de sabores vazia "); getchar(); } getchar();}
  17. Dei um root no meu cel. Ai instalei os ap directory blind, titanium backup.Meu directory blind não fica salvo minhas alteração do app qunado eu abro ele fica com atela preta sem os disquet´s indicando a cor verde de habilitado ou escuro para não habilitado.Só aparece na primeira vez que eu faço o processo.E também tem horas que o seu esquenta a bateria bastante isso ocorreu dps que comecei a usar directoy blind.
  18. Por favor alguem poderia me ajudar nessa sturct aninhada não consigo fazer ela apresentar o numero do tel na hora de apresentar não aparece os valores digitado.Alguem sabe dizer porque? struct telefone {char codInternacional [3];char codArea[3];char numeroTel [10];}; struct cliente{ char nome[51]; struct telefone residencialTel; char cpf[12]; char DN[9]; char logradouro[60]; char bairro[20]; char cep[9]; char complemento[51]; char email[100]; char data_cad[9]; }; struct cliente listaClientes[QUANTIDADE_CLIENTES]; void InserirCliente(){ char temp[4096]; FILE *ptrArq; system("cls"); printf("\n INSERIR CLIENTE"); printf("\n ==============="); ptrArq = fopen("CLIENTE.txt","a"); if(!ptrArq) { printf("\nErro na abertura do arquivo! Finalizando o programa!\n"); getchar(); exit(0); } if(fimLista < QUANTIDADE_CLIENTES) { fflush(stdin); printf("\n\n\nNOME: "); scanf("%[a-z][A-Z][^\n]", listaClientes[fimLista].nome); strupr(listaClientes[fimLista].nome); // Transforma a string em maiscula para facilitar numa função pesquisa fflush(stdin); printf("\nTELEFONE: "); printf("\n DIGITE O CODIGO NACIONAL\n[ ]\b\b\b"); scanf("[0-9][^\n]",listaClientes[fimLista].residencialTel.codInternacional); fflush(stdin); printf("\n DIGITE O CODIGO AREA\n[ ]\b\b\b"); scanf("[0-9][^\n]",listaCliente[fimLista].residencialTel.codArea); fflush(stdin); printf("\n DIGITE O TELEFONE RESIDENCIAL\n"); scanf("[0-9][^\n]",listaClientes[fimLista].residencialTel.numeroTel); fflush(stdin); printf("\nCPF: "); scanf("%[0-9][^\n]", listaClientes[fimLista].cpf); fflush(stdin); printf("\nDATA DE NASCIMENTO: "); scanf("%[0-9][^\n]", listaClientes[fimLista].DN); fflush(stdin); printf("\nE-MAIL: "); scanf("%[^\n]", listaClientes[fimLista].email); strupr(listaClientes[fimLista].email); fflush(stdin); printf("\nLOGRADOURO (rua, avenida, travessa, ...): "); scanf("%[^\n]", listaClientes[fimLista].logradouro); strupr(listaClientes[fimLista].logradouro); fflush(stdin); printf("\nCOMPLEMENTO (casa, apto, ...): "); scanf("%[^\n]", listaClientes[fimLista].complemento); strupr(listaClientes[fimLista].complemento); fflush(stdin); printf("\nBAIRRO: "); scanf("%[^\n]", listaClientes[fimLista].bairro); strupr(listaClientes[fimLista].bairro); fflush(stdin); printf("\nCEP: "); scanf("%[0-9][^\n]", listaClientes[fimLista].cep); strupr(listaClientes[fimLista].cep); fflush(stdin); // pega a data atual _strdate( listaClientes[fimLista].data_cad); sprintf(temp,"\n\n ========================= \n\nNOME: %s;TELEFONE:[%s][%s]%s;CPF: %s;DATA NASC.: %s;LOGRADOURO: %s;COMPLEMENTO: %s;BAIRRO: %s;CEP: %s;E-MAIL: %s;DATA CADASTRO: %s; \n",listaClientes[fimLista].nome,listaClientes[fimLista].residencialTel.codInternacional,listaClientes[fimLista].residencialTel.codArea,listaClientes[fimLista].residencialTel.numeroTel,listaClientes[fimLista].cpf,listaClientes[fimLista].DN,listaClientes[fimLista].logradouro,listaClientes[fimLista].complemento,listaClientes[fimLista].bairro,listaClientes[fimLista].cep,listaClientes[fimLista].email,listaClientes[fimLista].data_cad); fputs(temp,ptrArq); fclose(ptrArq); printf("\n\t\t\t CLIENTE CADASTRADO! \n\n\t PRESSIONE QUALQUER TECLA PARA RETORNAR AO MENU PRINCIPAL"); fimLista++; } else { printf("\n\n\nQUANTIDADE DE CLIENTES CADASTRADOS CHEGOU AO LIMITE!"); getchar(); } getchar();} void ApresentarCliente(){ if(fimLista > 0) { system("cls"); printf("\n CLIENTES CADASTRADOS"); printf("\n ==============="); char c; //int n = 0; FILE *ptrvisualizar; ptrvisualizar = fopen("CLIENTE.txt", "r"); do { c = fgetc (ptrvisualizar); // printf("%c",c); if (c == ';') printf("\n"); } while (c != EOF); getch(); fclose(ptrvisualizar); getchar(); } else { printf("\nLista de Clientes vazia!!!"); getchar(); } getchar();}

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!