Ir ao conteúdo
  • Cadastre-se

PereiraTiago

Membro Júnior
  • Posts

    3
  • Cadastrado em

  • Última visita

Reputação

1
  1. Eu tenho uma biblioteca que ordena por char, porém preciso alterar ela para ordenar por nome e ID Alguém pode me ajudar, comecei alterar só que não identifico o erro #include <string.h> #include <conio.h> #include <iostream> using namespace std; struct Cliente { char nomeCliente[30]; int ordemChegada; }; struct NoLO { Cliente cliente; }; void criarLO (NoLO *&LO) { LO = NULL; } int loVazia(NoLO *LO) { return (LO == NULL); } //INSERIR void inserirNaLO (NoLO *&LO, Cliente c) { NoLO *aux = new (NoLO); strcpy(aux->nomeCliente,c.nomeCliente); aux->IDCliente=c.IDCliente; NoLO *vizE = NULL; NoLO *vizD = LO; while ((vizD != NULL) && (c > vizD->aux->nomeCliente)) { vizE = vizD; vizD = vizD->prox; } if (vizE == NULL) { LO = aux; } else { vizE->prox = aux; } aux->prox = vizD; } //REMOVER void removerDaLO (NoLO *&LO, Cliente c) { NoLO *vizE = NULL; NoLO *vizD = LO; while ((vizD != NULL) && (c > vizD->info)) { vizE = vizD; vizD = vizD->prox; } if (vizD != NULL && vizE == NULL) { LO = LO->prox; delete(vizD); printf("%c removido!", c); return; } else if (vizD != NULL) { NoLO *aux = vizD; vizD = vizD->prox; delete(aux); if (vizD != NULL) vizE->prox = vizD; else { if (vizE == NULL) LO = vizD; else vizE->prox = vizD; } printf("%s removido!", c); return; } printf("%c nao localizado na lista!", c); } //IMPRIMIR void imprimirLO (NoLO *LO) { system("cls"); if (!loVazia(LO)) { NoLO *aux = new (NoLO); aux = LO; while (aux != NULL) { printf(" %s, %i -> ", aux->cliente.nomeCliente, aux->cliente.ordemChegada); aux = aux->prox; } } else printf("Lista vazia!"); printf("\n\n"); system("pause"); }
  2. <> Olá, quando eu cadastro os dois vendedores, faço a a exibição dos vendedores cadastrados porém, não esta retornando o id e nome que passei. *** Cadastrar Vendedor *** Digite o ID do vendedor: 1 Digite o nome do vendedor: s Digite o ID do vendedor: 2 Digite o nome do vendedor: b *** Vendedor Cadastrado *** ID Vendedor: Nome Vendedor: ID Vendedor: Nome Vendedor: O que pode ser? ______________________________________________ #include <iostream> #include <stdio.h> #include <string.h> #include "lo.h" struct Vendedor { int IDVendedor; char nomeVendedor[30]; }; struct Produto { int IDProduto; char descricao[30]; float preco; }; struct Cliente { int IDCliente; char nomeCliente[30]; }; struct Vendas { Vendedor vendedores[2]; Produto produtos[2]; Cliente clientes[2]; }; struct Vendas v; void CadastroVendedor(){ printf("\n*** Cadastrar Vendedor ***\n"); for(int i=0;i<2;i++){ printf("Digite o ID do vendedor: "); fflush(stdin); scanf("%i", &v.vendedores.IDVendedor); printf("Digite o nome do vendedor: "); fflush(stdin); scanf("%c", &v.vendedores.nomeVendedor); } printf("\n*** Vendedor Cadastrado ***\n"); for(int i=0;i<2;i++){ printf("\nID Vendedor: ", &v.vendedores.IDVendedor); printf("\nNome Vendedor: ", &v.vendedores.nomeVendedor); } } int main(void) { int op; char opc; do{ printf("\n ***** Lanchonete ***** \n\n"); printf(" O que voce deseja fazer? \n"); printf(" (1) Cadastrar Vendedor \n"); printf(" (2) Cadastrar Produto \n"); printf(" (3) Cadastrar Cliente \n"); printf(" (4) Realizar uma Venda \n"); printf(" (5) Exibir os Relatorios \n"); printf("\nDigite o numero da opicao desejada: \n"); scanf(" %i", &op); switch(op){ case 1:{ CadastroVendedor(); break; } case 2:{ printf("\n*** Cadastrar Produto ***\n"); break; } case 3:{ printf("*** Cadastrar Cliente ***"); break; } case 4:{ printf("*** Realizar uma Venda ***"); break; } case 5:{ printf("*** Realizar uma Venda ***"); break; } } printf("\nDeseja Retornar ao menu? S/N:"); fflush(stdin); scanf("%c",&opc); } while (toupper(op)!='N'); return 0; }
  3. Alguém pode me ajudar a gravar os produtos em um arquivo e exibir a lista dos produtos cadastrados? #include <iostream> #include <iostream> using namespace std; struct Produto { char descricao[50]; float valor; int unidade; int id; }; struct Fornecedor { char nome[50]; char ramo[50]; long cnpj; Produto produtos; }; int main() { char op; char ope; Fornecedor f; FILE *file; char caminho[100]; do{ printf(" ***** MANIPULACAO DE PRODUTOS ***** \n\n"); printf(" O que voce deseja fazer? \n"); printf(" (1) Criar Arquivo \n"); printf(" (2) Cadastrar Produtos \n"); printf(" (3) Listar Produtos \n"); printf(" (4) Exibir produtos menor que 10 \n"); printf(" (5) Sair \n"); printf("Digite o numero da opicao desejada \n"); scanf("%d",&op); switch(op){ case 1:{ printf("Criar Arquivo\n\n"); printf("Onde esta o arquivo?"); scanf("%s", &caminho); file = fopen(caminho, "w+b"); if (file == NULL){ printf("Erro ao abrir o arquivo."); }else{ printf("Arquivo Criado!"); } break; } case 2:{ printf("Cadastrar Fornecedor\n\n"); printf("Empresa: "); scanf("%s",&f.nome); printf("Ramo: "); scanf("%s",&f.ramo); printf("CNPJ: "); scanf(" %ld ", &f.cnpj); do{ printf("Cadastrar Produtos\n\n ") printf("ID: "); fflush(stdin); scanf(" %i", &f.produtos.id); printf("Descricao: "); fflush(stdin); scanf(" %s", &f.produtos.descricao); printf("Unidades: "); fflush(stdin); scanf(" %f", &f.produtos.unidade); printf("Valor: "); fflush(stdin); scanf(" %f", &f.produtos.valor); fwrite(&f , sizeof(f) , 1 , file); printf("Deseja cadastrar outro produto? S/N:"); scanf(" %c ",&ope); }while(toupper(op)!='N' ); rewind(file); break; } case 3:{ printf("Lista de Produtos\n\n"); break; } case 4:{ printf("Exibir produtos que a unidade e menor que 10\n\n"); break; } default: printf("Saindo!\n"); } printf("Deseja continuar? S/N:"); scanf(" %c ",&op); }while(toupper(op)!='N' ); system("PAUSE"); return 0; }

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...