Como faço esse programa?
Uma pizzaria tem em seu cardápio 27 sabores de pizzas e aceita pedidos para entrega via mensagens de texto para usuários já cadastrados. Uma mensagem com um pedido deve informar o número de pizzas desejado e, para cada pizza, um inteiro de 1 a 27 indicando o respectivo sabor. Faça um programa que: a) Leia e armazene o preço de cada pizza do cardápio; b) leia o pedido de cada cliente e imprima quanto cada um deverá pagar (este passo deve se repetir até que haja um pedido com nenhuma pizza); c) imprima a quantia total obtida com as vendas do dia; d) imprima quantas pizzas de cada sabor foram vendidas no dia.
#Programação#pseudocódigo#logica-e-algoritmos#linguajem-c
a)
Inicialmente devemos declaras as variáveis que serão utilizadas, no caso será um vetor de 27 posições.
#include <stdio.h>
int main()
{ int precos[27];
Com isso, devemos finalmente realizar um laço para preencher o vetor com 27 preços das pizzas.
for(int i=1;i<=27;i++){
printf("Digite o valor da pizza %i",i);
scanf("%i",&precos[i]);
}
b)
Inicialmente devemos definir as variáveis a serem utilizadas, assim, teremos que:
#include <stdio.h>
int main()
{ int precos[27];
int pizzas;
int tipo_pizza;
int j=0,i=0;
int valor_pagar;
Com isso, devemos realizar um laço para preencher o vetor com 27 preços das pizzas.
for(int i=1;i<=27;i++){
printf("Digite o valor da pizza %i",i);
scanf("%i",&precos[i]);
}
Agora consideraremos j como uma flag, se a mesma for igual a 1, significa que foi pedido a quantidade zero de pizzas, assim o programa deve ser finalizado, caso contrário o loop continua, dessa forma receberemos a quantidade de pizzas que o usuário deseja:
while(j!=1){
printf("\nDigite quantas pizzas deseja comprar:");
scanf("%i",&pizzas);
Caso a quantidade seja diferente de zero, podemos receber os tipos das pizzas e calcular o valor total da compra, zerando posteriormente a variável valor_pagar para o próximo cliente:
if(pizzas!=0){
for(i=1;i<=pizzas;i++){
printf("\nTipo de pizza:");
scanf("%i",&tipo_pizza);
valor_pagar=valor_pagar+precos[tipo_pizza];
valor_pagar=0;
}
printf("\nTotal a pagar %i",valor_pagar);
}
Caso a quantidade de pizzas for igual a zero, igualaremos a j a 1 e assim encerraremos o programa:
else{
j=1;
}}
return 0;
}
c)
Inicialmente devemos definir as variáveis a serem utilizadas, assim, teremos que:
#include <stdio.h>
int main()
{ int precos[27];
int pizzas;
int tipo_pizza;
int j=0,i=0;
int valor_pagar;
int valor_total;
Com isso, devemos realizar um laço para preencher o vetor com 27 preços das pizzas.
for(int i=1;i<=27;i++){
printf("Digite o valor da pizza %i",i);
scanf("%i",&precos[i]);
}
Agora consideraremos j como uma flag, se a mesma for igual a 1, significa que foi pedido a quantidade zero de pizzas, assim o programa deve ser finalizado, caso contrário o loop continua, dessa forma receberemos a quantidade de pizzas que o usuário deseja:
while(j!=1){
printf("\nDigite quantas pizzas deseja comprar:");
scanf("%i",&pizzas);
Caso a quantidade seja diferente de zero, podemos receber os tipos das pizzas e calcular o valor total da compra, somando ao valor_total que representa ao lucro da pizzaria e posteriormente zerando a variável valor_pagar para o próximo cliente:
if(pizzas!=0){
for(i=1;i<=pizzas;i++){
printf("\nTipo de pizza:");
scanf("%i",&tipo_pizza);
valor_pagar=valor_pagar+precos[tipo_pizza];
valor_total=valor_total+valor_pagar;
valor_pagar=0;
}
printf("\nTotal a pagar %i",valor_pagar);
}
Caso a quantidade de pizzas for igual a zero, igualaremos a j a 1 e apresentaremos o valor total obtido com as vendas e assim encerraremos o programa:
else{
j=1;
}}
printf("\nTotal de vendas %i",valor_total);
return 0;
}
d)
Inicialmente devemos definir as variáveis a serem utilizadas, assim, teremos que:
#include <stdio.h>
int main()
{ int precos[27];
int pizzas;
int tipo_pizza;
int j=0,i=0;
int valor_pagar;
int valor_total;
Com isso, devemos realizar um laço para preencher o vetor com 27 preços das pizzas.
for(int i=1;i<=27;i++){
printf("Digite o valor da pizza %i",i);
scanf("%i",&precos[i]);
}
Agora consideraremos j como uma flag, se a mesma for igual a 1, significa que foi pedido a quantidade zero de pizzas, assim o programa deve ser finalizado, caso contrário o loop continua, dessa forma receberemos a quantidade de pizzas que o usuário deseja:
while(j!=1){
printf("\nDigite quantas pizzas deseja comprar:");
scanf("%i",&pizzas);
Caso a quantidade seja diferente de zero, podemos receber os tipos das pizzas e calcular o valor total da compra, somando ao valor_total que representa ao lucro da pizzaria e salvando todos os tipos de pizzas pedidos em todas_pizzas e posteriormente zerando a variável valor_pagar para o próximo cliente:
if(pizzas!=0){
for(i=1;i<=pizzas;i++){
printf("\nTipo de pizza:");
scanf("%i",&tipo_pizza);
todas_pizzas[h]=tipo_pizza;
h++;
valor_pagar=valor_pagar+precos[tipo_pizza];
valor_total=valor_total+valor_pagar;
valor_pagar=0;
}
printf("\nTotal a pagar %i",valor_pagar);
}
Caso a quantidade de pizzas for igual a zero, igualaremos a j a 1 e apresentaremos o valor total obtido com as vendas e assim encerraremos o programa:
}else{
j=1;
}
}
Assim, deveremos dizer a quantidade de cada pizza que foi vendida, com isso percorreremos o vetor todas_pizzas verificando seus valores e salvando a quantidade no vetor quantida_pizza, assim:
printf("\nTotal de vendas %i",valor_total);
int quantidade_pizza[27];
for(i=1;i<=h;i++){
for(j=1;j<=27;j++){
if(todas_pizzas[i]==j){
quantidade_pizza[j]= quantidade_pizza[j]+1;
}
}
Por fim, basta apresentar a quantidade de cada tipo de pizza que foi comprada:
for(i=1;i<=27;i++){
printf("Quantidade da pizza %i : %i",i,quantidade_pizza[i]);
}
return 0;
}
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar