Ir ao conteúdo
  • Cadastre-se

Programa simples em c, entregado de pizza


rangelxadrez
Ir à solução Resolvido por Leotanis Leite Moraes,

Posts recomendados

Alguem consegue fazer um programa em c que implemente as tarefas de um entregador de pizza. Vamos considerar que:

* As pizzas são empilhadas em uma sacola;

*Sempre vamos entregar a pizza que se encontra no topo;

* Uma pizza (para fins de entrega) deve conter: sabor, nome do cliente, endereço, tamanho, valor.

 

O programa deve conter as seguintes funções: Inserir uma nova pizza na sacola, entregar a pizza, e verificar se a sacola está cheia.

Link para o comentário
Compartilhar em outros sites

  • Solução

Este exercicio é o basico da parte de pilha estatica com uma struct. Tenho pronto aqui um exemplo das funções que eu costumo usar para pilha estatica, que fica facim para você adaptar para seu exercicio. So que ao inserir algo na pilha, voce utilisa uma struct em vez de um vetor simples igual no exemplo.

 

#include <stdio.h>
#include <stdlib.h>
 
int pilha [1000];
int topo,valor,opcao,i,aux;
bool programa = true;
 
void pilha_contruir (){
    topo = -1;
}
 
bool pilha_vazia (){
    if (topo==-1){
        return true;
    }
    else {
        return false;
    }
}
 
bool pilha_cheia (){
    if (topo==999){
        return true;
    }
    else {
        return false;
    }
}
 
void inserirpilha (int valor){
 
    if (pilha_cheia()==true){
        printf("PILHA ESTA CHEIA");
    }
    else{
        topo=topo+1;
        pilha[topo]=valor;
        printf("\nVALOR %d INSERIDO COM SUCESSO!",valor);
    }
}
 
void retirarpilha (int &valor){
    if (pilha_vazia()==true){
        printf("\n\nPILHA ESTA VAZIA");
    }
    else {
        valor = pilha[topo];
        topo=topo-1;
        printf("\n\nO VALOR %d FOI RETIRADO DA PILHA",valor);
    }
}
 
 
int main()
{   printf("\033[44m");
    printf("PROGRAMA PARA GERIR PILHA ESTATICA");
    pilha_contruir();
    while (programa=true){
    printf("\n\n\n");
    printf("\nESCOLHA:");
    printf("\nDIGITE 1 PARA INSERIR DADOS NA PILHA");
    printf("\nDIGITE 2 PARA RETIRAR VALOR DA PILHA");
    printf("\nDIGITE 3 PARA MOSTRAR TAMANHO DA PILHA");
    printf("\nDIGITE 4 PARA IMPRIMIR OS VALORES DA PILHA");
    printf("\nINFORME A OPCAO DESEJADA: ");
    setbuf(stdin,NULL);
    scanf("%d",&opcao);
    switch (opcao) {
    case 1:
        printf("\n\n\nINFORME O VALOR QUE DESEJA INSERIR: ");
        scanf("%d",&valor);
        inserirpilha(valor);
        break;
    case 2:
        retirarpilha(valor);
        break;
    case 3:
        printf("\nA PILHA TEM %d ITENS\n",topo+1);
        break;
    case 4:
        aux=topo;
        while (aux>-1){
            printf("\n%d",pilha[aux]);
            aux=aux-1;
        }
        break;
    }
    printf("\n\n");
system("pause");
system("cls");
    }
    return 0;
}
  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • 5 anos depois...

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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