Ir ao conteúdo
  • Cadastre-se

TRMM

Membro Júnior
  • Posts

    5
  • Cadastrado em

  • Última visita

Reputação

1
  1. Acabei de baixar!!! Obrigado pela dica.
  2. Referência: https://www.ime.usp.br/~pf/algoritmos/index.html Além de videos aulas no youtube
  3. Sim estou implementando todo em C!
  4. #include <stdio.h> #include <stdlib.h> typedef struct no celula; struct no { int info; struct no *prox; }; void imprimir(celula *lista) { celula *p; for(p=lista; p!=NULL; p = p->prox) printf(" %d ", p->info); } /************* FUNÇÃO BUSCA *********/ celula *busca(celula *lista, int x) { celula *p; p = lista; while(p != NULL && p->info != x) p = p->prox; return p; } /*********** INSERIR ************/ void inserir(celula **L, int x) { celula *novo; if(busca(*L, x) == NULL) { novo = (celula *)malloc(sizeof(celula)); if(novo != NULL) { novo->info = x; novo->prox = *L; *L = novo; } else printf("Não há memória disponível!!!\n\n"); } else printf("Valor já se encontra na lista!!\n\n"); } /******** BUSCA REMOVE **************/ void buscaRemove(celula *L, celula **apt, celula **ant, int x) { *ant = NULL; *apt = L; while(*apt != NULL && (*apt)->info != x) { *ant = *apt; *apt = (*apt)->prox; } } /************ REMOÇÃO **************/ void removeLista(celula **L, int x) { celula *apt, *ant; buscaRemove(*L, &apt, &ant, x); if(apt != NULL) { if(ant != NULL) ant->prox = apt->prox; else *L = apt->prox; free(apt); } else printf("Valor não encontrado!!!\n\n"); } /****** FUNÇÃO MENU ***************/ int menu() { int opcao; printf("Munu de Opções: \n"); printf("[1] Cadastrar Funcionario\n"); printf("[2] Cadastrar Produto\n"); printf("[3] Verificar Funcionario ou Produto\n"); printf("[4] Remover Funcionario ou Produto\n"); printf("[5] Imprimir Funcionario ou Produto\n"); printf("[6] Vendas\n"); printf("[7] Gerar Relatorios\n"); printf("[0] Sair\n"); printf("Informe a Opcao do Menu Desejada: "); scanf("%d", &opcao); return opcao; } /************* FUNÇÃO PRINCIPAL **********/ int main() { int op, x; celula *lista; lista = NULL; op = menu(); while(op != 0) { switch (op) { case 1: printf("Informe o Codigo do Funcionario: "); scanf("%d", &x); inserir(&lista, x); break; case 2: printf("Informe o Codigo do Produto: "); scanf("%d", &x); if(busca(lista, x) == NULL) printf("Valor não encontrado!!!\n\n"); else printf("O valor %d já esta na lista!!\n\n", x); break; case 3: imprimir(lista); break; case 4: printf("Informe o valor a ser removido: "); scanf("%d", &x); removeLista(&lista, x); break; case 5: //fazer break; case 6: //fazer break; case 7: //fazer break; default: printf("Opcao invalida!!!\n\n"); } op = menu(); } return 0; } Boa noite! Alguém pra ajudar? Iniciei mas falta muita coisa. Segue o que é pedido abaixo: Implementação código em C. MENU 1 - Cadastrar Funcionário 2 – Cadastrar Produto 3 - Verificar Funcionários/Produtos 4 – Remover Funcionários/Produtos 5 – Imprimir Funcionários/Produtos 6 – Vendas 7 – Gerar Relatórios 0 - Sair Informe a opção do menu desejada:__ Para cada opção do MENU temos a seguinte descrição 1 - Cadastrar Funcionário: Esta opção deve ser capaz de cadastrar um número ÚNICO valor inteiro (int) que representa o código do funcionário, um número real (float) que representa o saldo inicial dos valores de vendas realizada pelo funcionário e também a inteiro que representa a quantidade de vendas realizada pelo funcionário. 2 - Cadastrar Produto: Esta opção deve ser capaz de cadastrar um número ÚNICO inteiro que representa o código do produto, outro valor inteiro que representa a quantidade disponível do produto, ou seja, quantidade em estoque e por fim um valor real que corresponde ao valor unitário do produto. 3 - Verificar Funcionários/Produtos: Esta opção deve ser capaz de verificar se um funcionário ou se um produto já esta cadastrado. Aqui uma mensagem deve ser perguntada para saber se a verificação será sobre os funcionários ou sobre os produtos. Faça a verificação pelo código. 4 – Remover Funcionários/Produtos: Esta opção deve ser capaz de remover um funcionário ou um produto. Aqui uma mensagem deve ser perguntada para saber se a remoção será sobre os funcionários ou sobre os produtos. Faça a remoção pelo código. 5 – Imprimir Funcionários/Produtos: Esta opção deve ser capaz de imprimir (mostrar na tela) todos os funcionários ou todos os produtos. Aqui uma mensagem deve ser perguntada para saber se a impressão será sobre os funcionários ou sobre os produtos. 6 – Vendas: Esta opção deve ser capaz de realizar uma venda. Aqui deve ser informado o código do funcionário que ira realizar a venda, caso o funcionário não esteja cadastrado a venda deve ser interrompida e finalizada. O segundo passo é informar o código do produto e a quantidade que será vendido. Caso o produtor não esteja cadastrado ou a quantidade do produto a ser vendido seja maior que existe no estoque então a venda não devera ser completada. Caso a venda seja concluída, o produto devera ser atualizado no estoque e o valor e quantidade da venda também deve ser atualizado para o funcionário. 7 – Gerar Relatórios: Esta opção deve ser capaz de gerar relatórios. Aqui um novo menu deve ser apresentado da seguinte forma: MENU DE RELATÓRIOS: 1 - Mostrar ordenado (crescente) os funcionários pelo código 2 - Mostrar ordenado (crescente) os produtos pelo código 3 - Mostrar os cinco funcionário que mais vende 4 - Mostrar os cinco funcionários que menos vende 5 - Mostrar ordenado (decrescente) os produtos no estoque 6 - Mostrar ordenado (decrescente) os produtos pelo valor 7 – Mostrar ordenado (decrescente) os funcionários pelo valor 0 – Sair (Voltar ao Menu Principal) Para as opções do menu de impressão temos: 1 - Mostrar ordenado (crescente) os funcionários pelo código: Mostrar todos os funcionários de forma ordenada crescentemente pelo código. Você pode utilizar um dos três algoritmos de ordenação visto em sala, bubble-sort, insertionsort ou quick-sort 2 - Mostrar ordenado (crescente) os produtos pelo código: Mostrar todos os produtos de forma ordenada crescentemente pelo código. Você pode utilizar um dos três algoritmos de ordenação visto em sala, bubble-sort, insertion-sort ou quicksort. 3 - Mostrar cincos funcionário que mais vende: Mostrar os cincos funcionários que tem a MAIOR quantidade de vendas. 4 - Mostrar os cincos funcionários que menos vende: Mostrar os cincos funcionários que tem a MENOR quantidade de vendas. 5 - Mostrar ordenado (decrescente) os produtos no estoque: Mostrar em ordem decrescente os produtos pela sua quantidade disponível em estoque. 6 - Mostrar ordenado (decrescente) os produtos pelo valor: Mostrar em ordem decrescente os produtos pelo seu valor unitário. 7 – Mostrar ordenado (decrescente) os funcionários pelo valor: Mostrar todos os funcionários em ordem decrescente pelo valor total de vendas realizadas. 0 – Sair (Voltar ao Menu Principal): Sair do menu de relatórios e retornar com menu principal. 0 – Sair (Limpar tudo - Finalizar o programa): Esta opção deve finalizar o programa. Aqui suas listas, funcionários e produtos, devem ser limpos na memória.
  5. BOA NOITE! NÃO CONSIGO IMPRIMIR OS VALORES DIGITADOS. A OPÇÃO 2 DO MENU SERIA PARA IMPRIMIR OS VALORES INSERIDOS NA OPÇÃO 1. SEGUE MEU CÓDIGO: #include<stdio.h> #include<stdlib.h> int cadastro_vetor (int num){ //fução para usuario inserir os valores int vet[10]; for(num=0; num<10; num++){ // laço para vetor de 10 posições printf("\nDigite um numero: "); scanf("%d", &vet[num]); } printf("\n\n!!! Os valores acima foram armazenados !!!"); return (0); // função será encerrada e prosseguira para menu de opções. } void imprime_vetor (){ // função para imprimir os valores digitados int num; int vet [10]; for(num = 0; num < 10; num++){ ........... NÃO ESTÁ IMPRIMINDO OS VALORES INSERIDOS ........ printf("\n Posicao [%d] = [%d]", num, vet[num]); } } int menu (){ //função destinado ao menu de opções int opcao; printf("\n\n_____________MENU______________"); printf("\n [1] Cadastrar os valores do vetor"); printf("\n [2] Imprimir o vetor"); printf("\n [3] Sair"); printf("\n\nInforme a opcao desejada: "); scanf("%d", &opcao); return (opcao); // função com retorno } int main(){ int num, entrar; entrar = menu(); // variavel para iniciar e percorrer a função menu while (entrar!=3){ //condição para opção do menu. switch (entrar){ case 1: cadastro_vetor(num); break; case 2: imprime_vetor(); break; case 3: printf("\n\nSaindo"); break; default: printf("\n>>>>>>>Valor invalido<<<<<<<<"); break; } entrar = menu(); } }

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