Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Felipeb2a

Sistema de padaria vetor e switch case

Recommended Posts

Boa noite!

 

Sou iniciante em programação, estou desenvolvendo um trabalho, nesse sistema tenho que registrar numero de pedidos, enquanto o usuário digitar um numero diferente de 0.

 

Eu teria que fazer essa verificação com while ou no for mesmo consigo?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
}
class Program
{
    static void Registro(string[] n)
    {
        int x;
        int[] p = new int[8];

        //carregar valores
        double[] v = new double[8];
        v[0] = 1.50;
        v[1] = 2.20;
        v[2] = 3.00;
        v[3] = 2.00;
        v[4] = 0.80;
        v[5] = 1.50;
        v[6] = 2.00;
        v[7] = 2.50;

        //carregar nomes
        n = new string[8];
        n[0] = "Pão de queijo";
        n[1] = "Salgados diversos";
        n[2] = "Misto quente";
        n[3] = "Bolo de chocolate";
        n[4] = "Café simples";
        n[5] = "Café com leite";
        n[6] = "Refrigerante";
        n[7] = "Suco natural";

        //Contador de produtos enquanto for diferente de 0

        for (x = 0; x < 2; x++)
        {
            //tela registro
            Console.WriteLine("ATP Lanches Ltda.");
            Console.WriteLine("Registro de Pedido");
            Console.WriteLine("________________________________________");
            Console.WriteLine();
            Console.WriteLine("Digite o código do produto:");
            Console.WriteLine("1 - " + n[0]);
            Console.WriteLine("2 - " + n[1]);
            Console.WriteLine("3 - " + n[2]);
            Console.WriteLine("4 - " + n[3]);
            Console.WriteLine("5 - " + n[4]);
            Console.WriteLine("6 - " + n[5]);
            Console.WriteLine("7 - " + n[6]);
            Console.WriteLine("8 - " + n[7]);
            Console.WriteLine();
            Console.WriteLine("0 - Finalizar pedido");
            Console.WriteLine();
            Console.WriteLine("________________________________________");

            p[x] = int.Parse(Console.ReadLine());
            Console.Clear();

        }

        //verificar n° produtos e valor de cada prod.
        for (x = 0; x < 2; x++)
        {
            switch (p[x])
            {
                case 1:
                    p[0]++;
                    v[0] *= p[0];
                    break;
                case 2:
                    p[1]++;
                    v[1] *= p[1];
                    break;
                case 3:
                    p[2]++;
                    v[2] *= p[2];
                    break;
                case 4:
                    p[3]++;
                    v[3] *= p[3];
                    break;
                case 5:
                    p[4]++;
                    v[4] *= p[4];
                    break;
                case 6:
                    p[5]++;
                    v[5] *= p[5];
                    break;
                case 7:
                    p[6]++;
                    v[6] *= p[6];
                    break;
                case 8:
                    p[7]++;
                    v[7] *= p[7];
                    break;
                case 0:
                    Console.WriteLine("ATP Lanches Ltda.");
                    Console.WriteLine("Nota do pedido.");
                    Console.WriteLine("________________________________________");
                    Console.WriteLine();
                    if (p[0] != 0)
                        Console.WriteLine("Pao de queijo         " + p[0] + "    " + "R$" + v[0]);
                    if (p[1] != 0)
                        Console.WriteLine("Salgados diversos     " + p[1] + "    " + "R$" + v[1]);
                    if (p[2] != 0)
                        Console.WriteLine("Misto quente          " + p[2] + "    " + "R$" + v[2]);
                    if (p[3] != 0)
                        Console.WriteLine("Bolo de chocolate     " + p[3] + "    " + "R$" + v[3]);
                    if (p[4] != 0)
                        Console.WriteLine("Café simples          " + p[4] + "    " + "R$" + v[4]);
                    if (p[5] != 0)
                        Console.WriteLine("Café com leite        " + p[5] + "    " + "R$" + v[5]);
                    if (p[6] != 0)
                        Console.WriteLine("Refrigerante          " + p[6] + "    " + "R$" + v[6]);
                    if (p[7] != 0)
                        Console.WriteLine("Suco natural          " + p[7] + "    " + "R$" + v[7]);

                    Console.WriteLine("________________________________________");
                    Console.WriteLine();
                    break;
                default:
                    Console.WriteLine("Código informado inválido");
                    break;

            }
        }
    }
    static void Main(string[] args)
    {
        int opcao;
        string[] nome = new string[8];
        //Tela Inicial
        Console.WriteLine("ATP Lanches Ltda.");
        Console.WriteLine("Bom dia!!");
        Console.WriteLine("________________________________________");
        Console.WriteLine();
        Console.WriteLine("Digite sua opção");
        Console.WriteLine("1 - Registrar novo pedido");
        Console.WriteLine("2 - Mostrar relatório do dia");
        Console.WriteLine("3 - Finalizar sistema");
        opcao = int.Parse(Console.ReadLine());
        Console.Clear();

        //Opcao de tela inicial
        switch (opcao)
        {
            case 1:
                Registro(nome);
                break;
            case 2:
                Console.WriteLine("Relatório do dia");
                break;
            case 3:
                Console.WriteLine("Sistema Finalizado com sucesso!!");
                break;
            default:
                Console.WriteLine("Opção inválida!!");
                Console.WriteLine("________________________________________");
                Console.WriteLine();
                break;
        }
    }
}

Compartilhar este post


Link para o post
Compartilhar em outros sites
//Contador de produtos enquanto for diferente de 0
for (x = 0; x < 2; x++)
{

}

Isto aqui não está verificando se o contador de produtos é diferente de 0. Mesmo que o usuário queira digitar mais que 2 produtos (sem digitar 0) o programa vai sair do loop.

 

Mas respondendo: É possível fazer com o 'for' mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia!

 

Sim nao está verificando se e diferente de 0, tem como me mostrar um exemplo de como seria com for.

 

Eu teria que criar uma outra variavel para recebe o valor de p[x] e persistir o for ate ela ser = a zero para sair do loop?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.