A maior rede de estudos do Brasil

Não sei como fazer esse programa por favor me ajudem

A empresa ELETROCARO resolveu informatizar o cadastro de seus clientes. Para
que isto aconteça, á empresa solicitou aos alunos da Uninove que desenvolvessem um
programa em C.
Para desenvolver esse programa, a empresa exigiu certos critérios, como:

O programa deve ter uma opção para armazenar os seguintes dados: o código do
cliente, nome, endereço, telefone, data de nascimento, código do produto e
quantidade de cada produto que o cliente costuma comprar. É importante destacar
que não pode haver dois ou mais clientes com o mesmo código e/ou dois ou mais
produtos com o mesmo código. Também é relevante lembrar que não pode
armazenar clientes/produtos caso tenha ultrapassado um limite determinado (ler
abaixo);

O programa deve ter uma opção para remover um cliente ou remover algum produto
do cliente. É importante destacar que não é possível remover um dado inválido ou se
não há nada cadastrado. Para toda remoção também deve haver uma reorganização
da estrutura (Não deve haver posições vazias no vetor entre duas posições que tenha
dados cadastrados.) Exemplo:

Quantidade de elementos armazenados: 3
Posição 0 1 2 ... N
Conteúdo Ana Paulo Pedro Vazio Vazio
Removendo o Paulo, o arquivo deve ficar assim: Quantidade de elementos
armazenados: 2
Posição 0 1 2 ... N
Conteúdo Ana Pedro vazio vazio Vazio
E não assim:Quantidade de elementos armazenados: 2
Posição 0 1 2 ... N
Conteúdo Ana Vazio Pedro vazio Vazio

O programa deve ter opções de busca pelo nome e pelo código do cliente; Caso não
seja encontrado o dado, o usuário deve ser informado;

O programa deve ter uma opção que mostre todos os dados dos clientes na tela;

O programa deve ter uma opção que busque todos os dados de todos os clientes que
compram um determinado produto, ou seja, buscar todos os clientes pelo código do
produto;

Devem ser usados:
 Deve haver uma constante MaxCliente e uma MaxProduto definidas no começo do
programa para limitar a quantidade máxima de clientes e de produtos,
respectivamente. Isto não quer dizer que os usuários serão obrigados a usar esta
quantidade máxima. Esta quantidade deve ser controlada pelo desenvolvedor á
medida em que o usuário cadastrar e/ou remover algum dado. A entrada de dados,
por exemplo, deve ser aleatória, ou seja, o usuário não pode ser obrigado a digitar a
quantidade máxima permitida;
 O usuário deverá ter a liberdade de escolher as opções do menu quantas vezes ele
quiser, ou seja, o programa só será finalizado quando o usuário escolher a opção de
saída:
Exemplo do menu:
1 - Cadastrar Clientes
2 – Remover Cliente
3 – Remover produto do Cliente
4 – Busca pelo nome do Cliente
5 – Busca pelo código do Cliente
6 – Busca dos Clientes pelo código do produto
7 – Saída.
Opção:


5 resposta(s) - Contém resposta de Especialista

User badge image

RD Resoluções Verified user icon

Há mais de um mês

Sempre que uma aplicação deseja algum serviço, é realizada uma solicitação ao processo responsável. Neste caso, a aplicação que solicita o serviço é chamada de cliente, enquanto o processo que responde à solicitação é chamado de servidor. Um cliente, que pode ser uma aplicação de um usuário ou um outro componente do sistema operacional, solicita um serviço enviando uma mensagem para o servidor. O servidor responde ao cliente através de uma outra mensagem. A utilização deste modelo permite que os servidores executem em modo usuário, ou seja, não tenham acesso direto a certos componentes do sistema. Apenas o núcleo do sistema, responsável pela comunicação entre clientes e servidores, executa no modo kernel. Como conseqüência, se ocorrer um erro em um servidor, este poderá parar, mas o sistema não ficará inteiramente comprometido, aumentando assim a sua disponibilidade. Outra vantagem é que a arquitetura microkernel permite isolar as funções do sistema operacional por diversos processos servidores pequenos e dedicados a serviços específicos, tornado o núcleo menor, mais fácil de depurar e, conseqüentemente, aumentando sua confiabilidade. Na arquitetura microkernel, o sistema operacional passa a ser de mais fácil manutenção, flexível e de maior portabilidade. Apesar de todas as vantagens deste modelo, sua implementação, na prática, é muito difícil. Primeiro existe o problema de desempenho, devido a necessidade de mudança de modo de acesso a cada comunicação entre clientes e servidores. Outro problema é que certas funções do sistema operacional exigem acesso direto ao hardware, como operações de E/S.

Sempre que uma aplicação deseja algum serviço, é realizada uma solicitação ao processo responsável. Neste caso, a aplicação que solicita o serviço é chamada de cliente, enquanto o processo que responde à solicitação é chamado de servidor. Um cliente, que pode ser uma aplicação de um usuário ou um outro componente do sistema operacional, solicita um serviço enviando uma mensagem para o servidor. O servidor responde ao cliente através de uma outra mensagem. A utilização deste modelo permite que os servidores executem em modo usuário, ou seja, não tenham acesso direto a certos componentes do sistema. Apenas o núcleo do sistema, responsável pela comunicação entre clientes e servidores, executa no modo kernel. Como conseqüência, se ocorrer um erro em um servidor, este poderá parar, mas o sistema não ficará inteiramente comprometido, aumentando assim a sua disponibilidade. Outra vantagem é que a arquitetura microkernel permite isolar as funções do sistema operacional por diversos processos servidores pequenos e dedicados a serviços específicos, tornado o núcleo menor, mais fácil de depurar e, conseqüentemente, aumentando sua confiabilidade. Na arquitetura microkernel, o sistema operacional passa a ser de mais fácil manutenção, flexível e de maior portabilidade. Apesar de todas as vantagens deste modelo, sua implementação, na prática, é muito difícil. Primeiro existe o problema de desempenho, devido a necessidade de mudança de modo de acesso a cada comunicação entre clientes e servidores. Outro problema é que certas funções do sistema operacional exigem acesso direto ao hardware, como operações de E/S.

User badge image

Steve Loard

Há mais de um mês

bom dia!!! utilizar a função struct para compactar os dados
User badge image

Bertholdo e Pamela

Há mais de um mês

Vlw pela ajuda, me ajudou muito

 

User badge image

william jose

Há mais de um mês

Tinha duvidas assim como voçe pessoas maravilhosas me ajudaram da uma olhada no link abaixo:

Sera de grande ajuda

 

https://www.passeidireto.com/pergunta/4672974/estou-com-muita-dificuldade-em-aprender-c

 

Essa pergunta já foi respondida por um dos nossos especialistas