Ir para conteúdo

Recommended Posts

Bom a ideia era criar uma lista de encomendas para cada estado. Porem não consigo exibir depois de adicionar com o .push_back(pedido1);    

 

#include <iostream>
#include <list>
using namespace std;
 //criando estrutura de pedidos
struct Pedido{
    	string nomeCliente, mEstado;
        int estadoEntrega;
        float cepEntrega;
	  	
		void insere (string stnomePedido, int stestadoEntrega, int stcepEntrega){
			nomeCliente = stnomePedido;
			estadoEntrega = stestadoEntrega;
			cepEntrega = stcepEntrega;	
	  	}
	  	
		void mostraPedido() {
		if (estadoEntrega == 1) {mEstado = "Acre";}               if (estadoEntrega == 2) {mEstado = "Alagoas";} 
		if (estadoEntrega == 3) {mEstado = "Amapa";}              if (estadoEntrega == 4) {mEstado = "Amazonas";}
		if (estadoEntrega == 5) {mEstado = "Baia";}               if (estadoEntrega == 6) {mEstado = "Ceara";}   
		if (estadoEntrega == 7) {mEstado = "Distrito Federal";}   if (estadoEntrega == 8) {mEstado = "Espirito Santo";}   
		if (estadoEntrega == 9) {mEstado = "Goias";}              if (estadoEntrega == 10) {mEstado = "Marranhao";}
		if (estadoEntrega == 11) {mEstado = "Mato Grosso";}       if (estadoEntrega == 12) {mEstado = "Mato Grosso do Sul";}
		if (estadoEntrega == 13) {mEstado = "Minas Gerais";}      if (estadoEntrega == 14) {mEstado = "Para";}
		if (estadoEntrega == 15) {mEstado = "Paraiba";} 		  if (estadoEntrega == 16) {mEstado = "Parana";}
		if (estadoEntrega == 17) {mEstado = "Pernambuco";} 	      if (estadoEntrega == 18) {mEstado = "Piaui";}
		if (estadoEntrega == 19) {mEstado = "Rio de Janeiro";}    if (estadoEntrega == 20) {mEstado = "Rio Grande do Norte";}
		if (estadoEntrega == 21) {mEstado = "Rio Grande do Sul";} if (estadoEntrega == 22) {mEstado = "Rondonia";}
		if (estadoEntrega == 23) {mEstado = "Roraima";} 		  if (estadoEntrega == 24) {mEstado = "Santa Catarina";}
		if (estadoEntrega == 25) {mEstado = "Sao Paulo";}         if (estadoEntrega == 26) {mEstado = "Sergipe";}
		if (estadoEntrega == 27) {mEstado = "Tocantins";}
		
			cout << "Cliente...............: " << nomeCliente << "\n";  
			cout << "Estado para entrega...: " << mEstado << "\n";
			cout << "Cep para entrega......: " << cepEntrega << " \n \n";
		}
   };
   
void sair()
{
    printf("Ja vai??? Nao! Nao! Espere! Naa...\n");
}

int main() {
list<Pedido> pedidos;
int valor;
  do
  {
  printf ("\n\n1. Criar pedido: \n");
  printf ("2. Listar pedidos: \n");
  printf ("0. Sair \n\n");
  scanf("%d", &valor);

  switch ( valor ) {
	case 1: {
		string valorNomePedido;
		int valorEstado, confirma;
		float valorCep;
		
		printf("\n Informe seu nome: \n");
		cin >> valorNomePedido;
		cout<<endl;
		printf("Digite o numero do estado para entrega: \n");
		printf("1.AC   2.AL   3.AP   4.AM \n");
		printf("5.BA   6.CE   7.DF   8.ES \n");
		printf("9.GO   10.MA   11.MT   12.MS \n");
		printf("13.MG  14.PA   15.PB   16.PR \n");
		printf("17.PE  18.PI   19.RJ   20.RN \n");
		printf("21.RS  22.RO   23.RR   24.SC \n");
		printf("25.SP  26.SE   27.TO \n");
		cin >> valorEstado;
		
		if (valorEstado == 0 or valorEstado > 27){ 
		printf("\n Estado invalido. \n");
		break;
		}

		printf("\n Digite o CEP para entrega: \n");	
		cin >> valorCep;
		
		cout<<endl;	
		
		//estancia e cria um pedido
		Pedido pedido1;
		pedido1.insere(valorNomePedido, valorEstado, valorCep);
			
		//solicita confirmação do pedido aao usuario antes de adicionalo a lista
		cout << "\n Este e seu pedido? \n";
		cout << "1.SIM     2.NAO \n\n";
		pedido1.mostraPedido();		
		cin  >> confirma;
			
			if (confirma == 1){
				cout << "\n Pedido confimado com sucesso! \n";
				//adiciona pedido a lista
				pedidos.push_back(pedido1);	
		    }
		    if (confirma == 2){
		    	cout << "\n Pedido cancelado! \n";
			}
	break;
	}

	case 2: {
		int tamanho;
		tamanho=pedidos.size();
		
		if (tamanho==0){
			cout << "\n Lista vazia. \n";
		}else{ 
			int listar;
			cout << "\n Quantidade de pedidos: " << tamanho << "\n";
			cout <<	"Listar pedidos?\n";
			cout <<	"1.SIM     2.NAO\n";
			cin >> listar;
			cout<<endl;
				if(listar == 1){
					for (int i=0; i<tamanho; i++){
					}		
				}
				if(listar == 2){
					cout << "\n OK! Mas nao esqueca de fazer suas entregas!";
				}			
		}
	break;
	}

	case 0:{
		sair();
		break;
	}
	
	default:{
		printf("\n Digite uma opçao valida\n");
		break;
	}
}
}while(valor!=0);

}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro 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

  • Conteúdo Similar

    • Por ph1
      Eu estou no início do treinamento. Fiz um pequeno algoritmo no qual há uma sequência de números e começa de 36 X 37 / 2 + 35 X 36 /3 + ... 1 X 2 / 37.
      int deno,a,b;
      a = 37;
      b = 38;
      for (deno=1;deno<=38;deno++){
      a = a - 1;
      b = b - 1;
      cout << a << " X " << b << "/" << deno << "\n";
      O problema está no final da impressão, quando chega ao final é impresso -1 X 0 / 38. Quero que termine com 0 X 0 / 38.
    • Por Derex
      Estou precisando usar jsoncpp.lib no codeblocks, porem ao compilar recebo os seguintes erros do compilador:
      D:\Users\User\Documents\CodeBlocks\demo\main.cpp|20|undefined reference to `Json::Value::Value(Json::ValueType)'|
      D:\Users\User\Documents\CodeBlocks\demo\main.cpp|20|undefined reference to `Json::Value::~Value()'|
      ||error: ld returned 1 exit status|

      Caso tenham duvida se eu linkei a lib ao projeto! 
      Sim eu linkei! 
      Link da linkagem da lib ao projeto >> https://uploaddeimagens.com.br/images/001/501/252/full/Capturar.PNG
    • Por Derex
      Galera, não estou conseguindo usar a libcurl!
      alguem poderia me dar uma ajudinha?
      me ensinar como compilar isso de forma correta!
      Pois estou seguindo todos passos que vem em um doc junto com o proprio projeto. >>BUILD.WINDOWS.txt<<, Que se encontra dentro da pasta >>winbuild<<.
      Segue video dos passos que estou seguindo aqui pra compilar!
      Eu consigo compilar normalmente, porem na hora de usar diz que as funções não foram definidas!
      Segue link >> 
       
    • Por Matheus Rocha
      Galera bom dia !
      Me chamo matheus e estou com muita dificuldade na solução de um algorítimo que foi imposto e designado para eu solucionar.
      O que acontece, Eu tenho um arquivo .txt onde ele tem diversas informações.
      Ex Real:
      1201604/08/2017 11:37:31Todas                                   MTTT T06/07/201703/08/2017000000000000000000000000000000                                                  
      2ANGRA DOS REIS                   0000000014
      385178911J39164256000170VIA SAT COMERCIAL ELETRONICA LTDA ME                            NNS07/07/2017 08:28:33 DN          NNNNNNN000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000       000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000S
      5SSSSN000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000
      6                                                                JOSÉ JORGE MARQUES                                              24  33652762SIDNEI COSTA VIEIRA                                             24  33652762
      383067241J29355260000242TRIUNFO LOGISTICA LTDA                                          NNS17/07/2017 16:20:05 DN          NNNNNNN000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000       000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000S
      5NNSNN000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000
      6                        wilson@wleme.com                        JORGE RODRIGUES DA SILVA                                        21  21788800WILSON ROBERTO LEME                                             21  21788800
      378884096J11112293000204VALE DO CAFE AUTO POSTO LTDA                                    NRS17/07/2017 16:22:44 DN          SNSNNNN000000558482002000000000000000000000000000000000000914863662000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000558482002000000914863662000000000000000000000000000000000000000000000000000000000000000000000711192000000000000000000000000000000000000000000000000000355670468       000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000355670468S
      4N00037000000000711192
      5NNNNN000000087369776000000000000000000000000000000000000000000000N000000083505478000000000000000000000000000000000000000000000N000000074110649000000000000000000000000000000000000000000000N000000075302716000000000000000000000000000000000000000000000N000000068143708000000000000000000000000000000000000000000000N000000067633557000000000000000000000000000000000000000000000N000000074329043000000000000000000000000000000000000000000000N000000077872727000000000000000000000000000000000000000000000N000000075293488000000000000000000000000000000000000000000000N000000078980667000000000000000000000000000000000000000000000N000000063227581000000000000000000000000000000000000000000000N000000088383080000000000000000000000000000000000000000000000
      6                                                                HAROLDO DA SILVA MANCEBO                                        24  24534614DANIEL MARIA DINIZ                                              24  24533886
      385454455J00468285000190TRANZIRAN TRANSPORTES LTDA                                      NRS19/07/2017 11:01:58 DN          SNNSNNN000029414831790000000701696111000000000000000000044743461671000001941418951000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030116527901000046684880622000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001040394000000001040394       000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001040394N
      4N00026000000001040394
      379050008J11921635000148GB segurança ELETRONICA DE ANGRA LTDA                           NNS20/07/2017 16:17:50 DN          NNNNNNN000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000       000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000S
      5SSSSN000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000N000000000000000000000000000000000000000000000000000000000000

      o mesmo quer que eu faça um programa para ler esse conteúdo do arquivo txt a cima linha por linha e formate o mesmo gravando em um outro txt mas o formato é linha continua até o 2 que é o primeiro caractere

       
      Resumindo é um programa para eu pegar um arquivo já pronto e transformar ele como demonstrado a cima salvando em outro txt. Só que estou encontrando muitas dificuldades pra isso, eu consigo ler o arquivo e criar o local de salvamento com os dados, só que na formatação não consigo jogar a lógica na qual consiste em: O programa tem que na primeira linha identificar que é 2 sempre que tiver 2 no inicio da linha ele vai dar uma quebra de linha e continuar escrevendo até encontrar novamente o 2 no inicio da linha. 
       
      OBS: o meu programa ta 100% funcional até então, mas eu não consigo jogar uma logica para o citado a cima. ele ler e grava em outro arquivo como já está em linha continua. só tenho que criar uma logica para poder fazer ele ter quebra de linha sempre que o caractere o primeiro caractere da linha for 2.
       
      MEU CÓDIGO: 
       
      #include <iostream>
      #include <fstream>
      #include <locale>
      using namespace std;
      int main() {
          setlocale(LC_ALL, "Portuguese");
          ifstream arquivo;
          ofstream arquivox;
          string linha;
          arquivo.open("Declan.txt"); // abre arquivo p leitura
          arquivox.open("Teste.txt"); // abre arquivo p escrita
          if (arquivo.is_open() && arquivox.is_open()) {
              while (getline(arquivo, linha)) {
                  cout << linha; // lê o arquivo linha a linha
                  arquivox << linha; // escreve no arquivo 
                  system("pause");
              }
              arquivo.close();
              arquivox.close();
          } else {
              cout << "Não foi possivel abrir o arquivo" << endl;
          }
          return 0;
      }

      return 0;
      }
    • Por Bruno Löschenkohl
      Galera, preciso de ajuda em dois problemas que preciso resolver, mas devido a algumas dificuldades estou atrasado com esse tema, são os seguintes:
       
      Escreva um programa que leia 1000 números aleatórios de 0 até 300 e imprima o maior deles e quantas vezes o maior número foi lido, apresentando este e suas respectivas posições.  
      Uma empresa paga R$ 33.00 por hora normal trabalhada e R$ 53.00 por hora extra. O Programa deve ler 05 funcionários, o total de horas normais e o total de horas extras trabalhadas para cada empregado em um ano e calcular o salário anual de cada trabalhador. Assuma que o trabalhador deve pagar 10% de imposto se o seu salário anual for menor ou igual a R$ 12000.00. Caso o salário seja maior que este valor o imposto devido é igual a 10% sobre R$ 12000.00 mais 25% sobre o que passar de R$ 12000.00. Este programa deve também calcular o imposto devido pelo trabalhador. Apresentar no final o nome de cada trabalhador, a quantidade de horas trabalhadas no ano, a quantidade de horas extras feitas no ano, o valor total do salário de um ano, e o valor de imposto devido por cada um deles.  
      elaborei muito pouco dos dois, preciso de uma força.
×

Informação importante

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