Jump to content

Menu em linguagem c - ajuda


fogono4556

Recommended Posts

Posted

Preciso criar um programa em que o usuário vai ter um menu de restaurante e precisa escolher opções e quantidades. O programa acumula o número de cada item e o total de cada item. Para sair do loop, deve-se escolher entre s e n. Quando o usuário digitar n, deve-se calcular a conta imprimindo o total de cada item e o total da conta.

eu criei o menu e a parte onde o usuario escolhe uma das opções e quantidades, mas não sei como colocar em loop e acumular para somar o valor total

 

Posted
Em 21/11/2020 em 23:49, fogono4556 disse:

Preciso criar um programa em que o usuário vai ter um menu de restaurante e precisa escolher opções e quantidades. O programa acumula o número de cada item e o total de cada item. Para sair do loop, deve-se escolher entre s e n. Quando o usuário digitar n, deve-se calcular a conta imprimindo o total de cada item e o total da conta.

eu criei o menu e a parte onde o usuario escolhe uma das opções e quantidades, mas não sei como colocar em loop e acumular para somar o valor total

 

Olá,

Você pode utilizar recursão para fazer esse loop e três arrays, um com os nomes dos itens (char) , um com os preços dos itens (float ou double) e outro com as quantidades de cada item (int).

No final, quando o usuário digitar "n", você faz um for(), imprimindo os elementos dos arrays. Caso a quantidade de alguma opção seja 0 você não imprime aquele item, só imprime os que forem maiores que 0 e multiplicando a quantidade pelo valor do item no array de preço. Abaixo está um pseudo-código, complete e teste.

 

void conta (char opcoes[][], double preco[], int quantidade[])
{
if(escolha == n)
{
  int total = 0;
  for()
  { 
    imprime (opcao[i] , preco[i] * quantidade[i] , total + = preco[i] * quantidade[i]) 
    }
  imprime(total);
  return;
}
	/*códido para escolha de opcao e quantidade*/
	conta(opcoes, preco, quantidade) //chamada recursiva
}

 

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...