Ir ao conteúdo
  • Cadastre-se

Dificuldades para criar programa de gerenciamento de empresa.


Posts recomendados

Olá, galera. Bem, eu preciso criar um programa para gerenciamento de uma empresa de construção civil e suas obras. Cada obra contém as seguintes informações:

 

Nome > Nome da Obra > char [40]

Início > Data de Início da Obra > char[10]

Fim > Data de finalização da Obra > char[10]

Orçamento > Orçamento da Obra > Material[30]

 

Cada material utilizado contém as seguintes informações:

 

ID > Identificador da Obra > int

Nome > Nome do Material > char[40]

Quantidade > Quantidade necessária > float

Preço > Preço unitário do material > float

 

De acordo com estas especificações, o programa deverá utilizar um vetor de obras de 10
posições. O programa deverá fornecer um conjunto de 11 opções (números de 1 a 11). Além
das 10 opções apresentadas a seguir, a opção 11 significa que o usuário deseja sair do
programa.


Cada opção do programa deve oferecer as seguintes funcionalidades:


OPÇÃO 1 - CADASTRAR UMA OBRA
Esta é uma operação onde o usuário fornece as informações de ID, Nome, Início e Final de uma
obra e esta obra é cadastrada em uma posição vazia no vetor. Todas as informações (ID,
Nome, Início e Final) são obrigatórias.


OPÇÃO 2 - CADASTRAR UM MATERIAL EM UMA OBRA
Para esta operação, o usuário deve especificar o ID da obra desejada para cadastrar o material
e informar as informações do material, que são Nome, Quantidade e Preço. Caso o ID digitado
não seja encontrado no programa, uma mensagem de erro deve ser mostrada ao usuário.


OPÇÃO 3 - CONSULTAR OS DADOS DE UMA OBRA
Nesta operação, o usuário deve especificar o ID da obra desejada e mostrar todos os detalhes
desta obra, ou seja, seu Nome, data de início, data prevista para finalização e as informações
de cada material cadastrado (Nome, Preço e Quantidade). Caso o ID digitado não seja
encontrado no programa, uma mensagem de erro deve ser mostrada ao usuário.


OPÇÃO 4 - CALCULAR O VALOR TOTAL DAS OBRAS
Para esta operação, o programa deve mostrar, para cada obra, o valor total dela. Para calcular
o valor total de uma obra, o programa deve percorrer os materiais cadastrados nela,
multiplicar a quantidade pelo preço unitário e somar. Se não houver obras cadastradas, uma
mensagem de erro deve ser mostrada ao usuário.


OPÇÃO 5 - EXCLUIR UMA OBRA
Para excluir uma obra, o usuário deve digitar o ID da obra a ser excluída e, caso exista uma
obra com este ID, o programa deve excluir a obra e os seus materiais. Caso o ID digitado não
seja encontrado no programa, uma mensagem de erro deve ser mostrada ao usuário.


OPÇÃO 6 - IMPRIMIR A OBRA DE MAIOR VALOR
Nesta opção, o programa deve calcular os valores das obras cadastradas e imprimir somente a
obra de maior valor (imprimir Nome, Data de início, Data Final e Valor total da obra). Se não
houver obras cadastradas, uma mensagem de erro deve ser mostrada ao usuário.

OPÇÃO 7 - IMPRIMIR O VALOR MÉDIO DAS OBRAS
Para imprimir o valor médio das obras, o programa deve calcular a média do valor total das
obras cadastradas e imprimir na tela. Se não houver obras cadastradas, uma mensagem de
erro deve ser mostrada ao usuário.


OPÇÃO 8 - IMPRIMIR OBRAS COM VALORES ACIMA DA MÉDIA
Basicamente, o programa deve imprimir apenas as obras (com seu Nome, Data de Inicio, Data
Final e Valor Total) cujo valor total está acima da média das obras cadastradas. Se não houver
obras cadastradas, uma mensagem de erro deve ser mostrada ao usuário.


OPÇÃO 9 - IMPRIMIR APENAS OBRAS ACIMA DE UM VALOR ESPECIFICADO PELO USUÁRIO
Dado um valor em que o usuário deve digitar, o programa deve imprimir apenas as obras (com
seu Nome, Data de Inicio, Data Final e Valor Total) cujo valor total está acima do valor
especificado pelo usuário. Se não houver obras cadastradas, uma mensagem de erro deve ser
mostrada ao usuário.


OPÇÃO 10 - ORDENAR AS OBRAS POR ORDEM ALFABÉTICA
Nesta opção, o programa deve ordenar as obras em ordem alfabética do nome da obra
(usando strcmp para comparar os nomes) e imprimir na tela as obras ordenadas. Se não
houver obras cadastradas, uma mensagem de erro deve ser mostrada ao usuário.


OBS:
• Cada uma das operações do programa deve ser realizada por funções (ou
procedimentos). Em outras palavras, não deve-se fazer todas estas funções
“apenas” dentro do programa principal (main).
• Procurem usar comentários para explicar como cada função foi realizada
• Possivelmente pode-se precisar de outras funções além das 10 que
representam as funções do programa.

 

É isso aí, galera. Como vocês já devem estar pensando, o programa é realmente gigantesco. No entanto, eu ainda estou completamente "emperrado" e não consigo sequer iniciar. 

 

Por favor apenas gostaria de dicas e conselhos de como conseguir montar isso tudo. À medida que vocês forem me enviando recomendações, eu vou postando aqui o progresso e lendo os comentários de vocês. Qualquer ajuda é bem-vinda e agradeço desde já pela atenção. 

 

Bem, começando pelo começo... como eu poderia iniciar esse programa, pessoal? 

Link para o comentário
Compartilhar em outros sites

Amigo, em primeiro lugar não me leve a mal; não é minha intenção ser arrogante. Eu programo há anos e já vi de quase tudo na Internet e, ainda assim, confesso que não entendi seu tópico. Minha sugestão é que você aprenda programação, seja fazendo um curso ou mesmo assistindo vídeos no youtube e lendo tutoriais na Internet. Um programa como esse é bem básico e simples de se fazer. No entanto, "cru" do jeito que você está, sem mesmo saber por onde começar, fica complicado te ajudar. Mesmo que alguém mais experiente te mande alguns trecho de código, o máximo que você vai fazer é copiar, muitas vezes sem compreender como o código funciona. Para evitar ficar ainda mais perdido, você deve estudar o básico de programação de computadores: lógica, operadores, constantes e variáveis, estruturas condicionais, estruturas de repetição, funções, estruturas de dados, algoritmos, biblioteca padrão e assim por diante. Depois que você pegar o básico, você terá a base para começar a fazer esse programa que você descreveu. É nesse momento que surgirão suas primeiras dúvidas, então você poderá vir e perguntar à vontade sobre cada uma delas especificamente.

 

Como eu disse, não é para levar o meu comentário como "crítica destrutiva". Considere apenas como uma sugestão de um programador experiente.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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!