Informática, perguntado por 2splaygcanal, 1 ano atrás

Imagine que você é um freelancer desenvolvedor de sistemas e que possui uma ampla carteira de clientes. Como você não gosta dos sistemas de agenda eletrônica existentes, você decide que irá criar sua própria aplicação de registro e manutenção de clientes. Inicialmente, você deverá programar uma agenda em versão beta (versão de teste), que permite armazenar o cadastro de, no máximo, 5 (cinco) clientes por vez.

A aplicação deverá armazenar, para cada cliente:
A) Um código único, gerado automaticamente pelo sistema;
B) Seu nome;
C) Seu telefone;
D) Seu endereço (rua, número, complemento);

O programa deverá apresentar um menu de opções ao usuário:

1 – Inserir um novo cadastro: ao selecionar essa opção, o usuário deverá ser capaz de informar todos os dados de um cliente. A saber, seu nome, telefone e endereço. Caso o programa já tenha armazenado o número máximo de clientes (cinco), deverá ser exibida a mensagem “Agenda lotada!”. O código de um cadastro deve ser preenchido automaticamente pelo sistema e o usuário não deve ter a opção de alterar esse código;

2 – Mostrar todos os cadastros: ao selecionar essa opção, o programa deverá imprimir, na tela, para cada cliente, seu código, seu nome, seu telefone e seu endereço. Essa opção deverá mostrar na tela apenas os dados dos clientes que foram cadastrados. Caso seja impressa alguma informação sobressalente, ou faltem informações, será considerado um erro de programação. Caso nenhum cliente tenha sido cadastrado antes de selecionar essa opção, o programa deverá exibir a mensagem “Agenda vazia!”.;

0 – Encerrar: ao selecionar essa opção, o programa se encerra.

Caso o usuário escolha uma opção que não conste no menu, o programa deverá exibir uma mensagem de erro como, por exemplo, “Erro: opção inválida!”. Caso contrário, o programa não deverá imprimir essa mensagem de erro.

Algumas funções que serão úteis durante o desenvolvimento do programa:

system(“pause”) – chamada de sistema que “pausa” o programa e o faz aguardar pelo usuário;

system(“cls”) – chamada de sistema que limpa os caracteres que foram impressos na tela anteriormente;

fflush(stdin) – limpar o buffer do teclado. Essa função deve sempre ser utilizada após ter utilizado alguma função de entrada de dados como o scanf, gets, etc. Isso se dá pois em algumas situações o buffer do teclado mantém “lixo de memória”, prejudicando a próxima operação de entrada do programa.

Soluções para a tarefa

Respondido por 949049204214o210
0

Resposta:

Explicação: Eu não conseguir fazer ainda, não sei fazer essa atividade, estou com dificuldade nessa materia...  

Respondido por yancarvalho3
0

Acerca da problemática sobre o cadastro de clientes apresentado acima, a solução na linguagem de programação C é:

#include <string.h>

#include <conio.h>

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

#include <ctype.h>

typedef struct carteira

{

  int cod;

  char nome[20];

  char telefone[20];

  char rua[30];

  char numero[10];

  char complemento[10];

}carteira;

carteira car[5];

int main(int argc, char** argv) {

   setlocale(LC_ALL,"portuguese");

   int i=0;

   int option;

   int ano=0;

   int z=0;

   char nome[20];

   car[i].cod = 0;

   strcpy(car[i].nome,"NULL");

   strcpy(car[i].telefone,"NULL");

   strcpy(car[i].rua,"NULL");

   strcpy(car[i].numero,"NULL");

   strcpy(car[i].complemento,"NULL");

 

       do{

           printf("\n\nCadastro de carteira");

           printf("\n1 - Cadastrar novo cliente");

           printf("\n2 - Listar clientes cadastrados");

           printf("\n5 - Sair");

           printf("\n\nDigite qual opção deseja: "); scanf("%d",&option);

         

           switch(option){

           case 1:

               if (car[i].cod<=4){

                   car[i].cod=i;

                   printf("\n\nDigite o nome:"); scanf("%s",car[i].nome);

                   printf("Digite o telefone:"); scanf("%s",car[i].telefone);

                   printf("Digite a rua:"); scanf("%s",car[i].rua);

                   printf("Digite o número:"); scanf("%s",car[i].numero);

                   printf("Digite o complemento:"); scanf("%s",car[i].complemento);

                       i=i+1;

               }else{

                   printf("Limite de cadastro é 5!");

               }break;                                              

           case 2:

               printf("\n-------- Lista de Clientes --------");

               for(int x=0; x<i; x++){

                   printf("\nNome: %s",car[x].nome);

                   printf("Telefone: %s",car[x].telefone);

                   printf("Rua: %s",car[x].rua);

                   printf("Numero: %s",car[x].numero);

                   printf("Complemento: %s",car[x].complemento);

                   printf("\n");

               }break;

           case 3:break;

           default:

               printf("\nOpção iválida!");

               break;

           }

       }

   while (option!=5 && i<=4);

       if (i==4){

           printf("\nLimite de cadastro alcançado!");

       }

       for (int y=0; y<i; y++){

           printf("\nNome: %s",car[y].nome);

           printf("\nTelefone: %s",car[y].telefone);

           printf("\nRua: %s",car[y].rua);

           printf("\nNúmero: %s",car[y].numero);

           printf("\nComplemento: %s",car[y].complemento);

           printf("\n");

       }

   return 0;

}

Mas o que exatamente esse programa em C faz?

Recebe os valores digitados pelo usuário e salva eles em um vetor, depois pode mostrar ou sair do programa.

Saiba mais sobre programação aqui: https://brainly.com.br/tarefa/2133644

#SPJ2

Anexos:
Perguntas interessantes