Ir ao conteúdo
  • Cadastre-se

vitor de jesus

Membro Pleno
  • Posts

    49
  • Cadastrado em

  • Última visita

Reputação

32
  1. @Math.Pi Já reinstalei mas continua a mesmo coisa....
  2. Quando vou executar qualquer programa apresenta esse erro: This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. parte do programa e executado ate da esse erro, os programas não tem nenhum erro de sintaxe... ate testei alguns nesse site: https://repl.it/ e la funciona normal. esse erro começou acontecer depois que tive que baixar a biblioteca > Visual C++ Redistributable for Visual Studio 2012 para usar o wapserver... alguem sabe como posso resolver isso?
  3. Deixa eu ver se entendi: O espaço que foi "reservado" na memoria para o ponteiro (Parray) já foi desalocado "Liberado", e na verdade não esta sendo exibido os valores para que (Parray) "aponta", pois não tenho mais acesso a ele? Apesar da memoria alocada já ter sido liberada, a "estrutura" do (Parray) ainda não foi modificada sendo possível exibir parte de seus valores originais? pois aquele espaço ainda não foi utilizado? @Simon Viegas --> após "deletar" você não poderia mais tentar imprimir (usar aquela variável de qualquer forma), pois ele foi "desalocado" @Simon Viegas suponho eu, é que aquela região ("lixo") de memória... mas aí que surgiu outra duvida... ao tentar acessar (Parray) não deveria dar algum tipo de error no programa, pois se o espaço reservado a (Parray) já foi liberado, não deveria conseguir acessa-la e nem os endereços de memoria para que ela apontava? ou essa região "lixo" continua sendo a mesma reservada a (Parray) e ela foi apenas "classificada" como disponivel para uso... por isso estou conseguindo acessar o "lixo" através do (Parray) que no caso já foi desalocado? e como você disse: está com a mesma estrutura de quando foi alocada (não deu tempo de ser utilizada por outro recurso do programa ou Sistema Operacional) Enfim.. então quer dizer que não tem nenhum "error" do modo que estou alocando e desalocando a memoria, só não deu tempo do "Lixo" ser utilizado? adicionado 5 minutos depois Mas ai não estaria liberando memoria né?, só fazendo com que o ponteiro não "aponte para nada", o espaço reservado a (Parray) não seria "liberado" ou seria?
  4. #include <iostream> using namespace std; int main(void){ int * Parray = new int[10]; for(int i = 0; i < 10; i++){ Parray[i] = i; cout << "Posicao: " << i << " = " << *(Parray + i) << endl; } cout << endl << endl; delete[] Parray; for(int i = 0; i < 10; i++){ cout << "Posicao: " << i << " = " << *(Parray + i) << endl; } return 0; } Porque só os dois primeiros valores estão sendo deletados? Como Deletar Todos?
  5. #include <iostream> #include <string.h> #include <stdlib.h> #include <vector> using namespace std; struct ProdutoInfo1 { string Produto_Tipo; // Ex : Creme Dental string MarcaProduto; // Ex : Colgate **** string CodigoBarras; // Ex : 01010100101101010 string Fornecedores; // Ex : Contato string DataFabricou; // Ex : 20/11/2017 string DataValidade; // Ex : 20/11/2020 float ValorPorLote; // Ex : 40,50 float VendaPorLote; // Ex : 50,50 float ValorPorUnid; // Ex : 5 ,00 float VendaPorUnid; // Ex : 5 ,50 int ProdutosLote; // 13 Produtos int EstoqueAtual; // 99 Caixas int EstoqueMinim; // 30 Caixas }; class ProdutoInfo2 { private: vector <ProdutoInfo1> Produto; string temp; public : void AddProduto(){ Produto.push_back(ProdutoInfo1()); int tam = Produto.size(); cout << " Tipo do Produto: "; getline(cin,temp); Produto[tam-1].Produto_Tipo = temp; system("cls"); cout << " Marca do Produto: "; getline(cin,temp); Produto[tam-1].MarcaProduto = temp; system("cls"); cout << " Codigo de Barras: "; getline(cin,temp); Produto[tam-1].CodigoBarras = temp; system("cls"); cout << " Contato do Fornecedor: "; getline(cin,temp); Produto[tam-1].Fornecedores = temp; system("cls"); cout << " Data de fabricação: "; getline(cin,temp); Produto[tam-1].DataFabricou = temp; system("cls"); cout << " Data de Validade: "; getline(cin,temp); Produto[tam-1].DataValidade = temp; system("cls"); cout << " Produtos por Lote: "; cin >> Produto[tam-1].ProdutosLote; system("cls"); cout << " Valor de Compra por Lote: "; cin >> Produto[tam-1].ValorPorLote; Produto[tam-1].ValorPorUnid = Produto[tam-1].ValorPorLote / Produto[tam-1].ProdutosLote; system("cls"); cout << " Valor de Venda por Lote: "; cin >> Produto[tam-1].VendaPorLote; system("cls"); cout << " Valor de Venda por Und: "; cin >> Produto[tam-1].VendaPorUnid; ++Produto[tam-1].EstoqueAtual; system("cls"); cout << " Estoque Minimo de Lotes: "; cin >> Produto[tam-1].EstoqueMinim; system("cls"); cout << " voce Cadastrou o Seguinte Produto : " << endl << endl; UltimoProdutoCadastrado(); cout << endl; cout << " Verifique Todas informações do Produto, Caso Haja Alguma"; cout << " Informacao Incorreta Siga Este Processo: " << endl << endl; cout << " -> Menu Principal/Produtos/Alterar " << endl << endl; } void AllInfoProduto(int * posicao = NULL ){ int tam = Produto.size(); int Controle = 0; do{ cout << "Codigo de Barras:"; getline(cin,temp); for(int i = 0; i < tam; i++){ if(Produto[i].CodigoBarras==temp){ Controle++; if(posicao != NULL){ *posicao = i; } cout << endl; cout << " Tipo: " << Produto[tam-1].Produto_Tipo << endl; cout << " Marca: " << Produto[tam-1].MarcaProduto << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Codigo de Barras: " << Produto[tam-1].CodigoBarras << endl; cout << " Contato Fornecedor: " << Produto[tam-1].Fornecedores << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Data de fabricação " << Produto[tam-1].DataFabricou << endl; cout << " Data de Validade " << Produto[tam-1].DataValidade << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Compra Por Lote: " << Produto[tam-1].ValorPorLote << endl; cout << " Compra Por Unid: " << Produto[tam-1].ValorPorUnid << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Venda Por Lote: " << Produto[tam-1].VendaPorLote << endl; cout << " Venda Por Unid: " << Produto[tam-1].VendaPorUnid << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Produtos Por Lote: " << Produto[tam-1].ProdutosLote << endl; cout << " Estoque Atual: " << Produto[tam-1].EstoqueAtual << endl; cout << " Estoque Minim: " << Produto[tam-1].EstoqueMinim << endl; cout << "____________________________________________________" << endl; } } }while(Controle==0); } void UltimoProdutoCadastrado(){ int tam = Produto.size(); cout << "____________________________________________________" << endl; cout << endl; cout << " Tipo: " << Produto[tam-1].Produto_Tipo << endl; cout << " Marca: " << Produto[tam-1].MarcaProduto << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Codigo de Barras: " << Produto[tam-1].CodigoBarras << endl; cout << " Contato Fornecedor: " << Produto[tam-1].Fornecedores << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Data de fabricação " << Produto[tam-1].DataFabricou << endl; cout << " Data de Validade " << Produto[tam-1].DataValidade << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Compra Por Lote: " << Produto[tam-1].ValorPorLote << endl; cout << " Compra Por Unid: " << Produto[tam-1].ValorPorUnid << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Venda Por Lote: " << Produto[tam-1].VendaPorLote << endl; cout << " Venda Por Unid: " << Produto[tam-1].VendaPorUnid << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Produtos Por Lote: " << Produto[tam-1].ProdutosLote << endl; cout << "____________________________________________________" << endl; cout << endl; cout << " Estoque Atual: " << Produto[tam-1].EstoqueAtual << endl; cout << " Estoque Minim: " << Produto[tam-1].EstoqueMinim << endl; cout << "____________________________________________________" << endl; cout << endl; } }; int main(){ ProdutoInfo2 Produtos; Produtos.AddProduto(); system("pause"); system("cls"); Produtos.AllInfoProduto(); } Então E o seguinte.. quando Entra Na Função : Produtos.AllIfoProdutos(); e passa pro do wile o primeiro cout e impresso 2 vezes... Como Posso corrigir isso?
  6. Boa Noite, Então e o seguinte.. do modo como esta o IF você esta comparando a variável opção com a variável "A", e não com o caractere "A", ou seja como a variável "a" não foi iniciada ela não contem o caractere "A" , então a condição do if não e verdadeira, por isso não "entra" nele. para verificar se a variavel opção contem a letra "A" você deve fazer: if ( opcao == 'a' ) o ' ' vai ira indicar que você esta comparando opção com o caractere "A" e não com a variavel "a". Codigo: #include <stdio.h> #include <stdlib.h> #include <math.h> #include <conio.h> #include <locale.h> main () { setlocale(LC_ALL, "Portuguese"); printf("\n\t\t Cálculo da Área do Triângulo \n"); printf("\nOBS: Os valores fornecidos deveram estar em centimetros. \n"); printf("\n Escolha uma das opções abaixo:\n\n"); printf(" Digite ( a ) para Calcular o trinagulo normal"); printf("\n Digite ( b ) para Calcular o trinagulo equilatero\n"); int S, H, B; char a, b, opcao; float S2, l; printf("\n \t => "); scanf("%c", &opcao); system("cls"); if ( opcao == 'a' ) { printf("\n\t Digite o valor de ( b ) Base: "); scanf("%d", &B); printf("\n\t Digite o valor de ( h ) Altura: "); scanf("%d", &H); S = ( B * H ) / 2; printf("\n\t O Valor da área é : %d cm² \n\n", S); } else { printf("\n Digite o valor do lado do triângulo: "); scanf("%f", &l); S2 = ( pow(l,2) /4 ) * sqrt ( 3 ); printf("\n\n A área deste triângulo equilátero é de aproximadamente : %.2f cm²\n\n\n",S2); } } Bom Espero que não tenha ficado confuso com tanto "a" mas posso estar errado, pois programo em c++...
  7. Bom... Já estudei o básico de c++ Listas,Classes, Structs,Arquivos e etc. mas agora to precisando criar um programa que inicie junto com o windows.. ou seja, preciso criar um novo valor na sub chave HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\run, correto? A Minha duvida é, o que preciso começar a estudar pra conseguir fazer isso? já procurei apostilas sobre o assunto, videos no youtube e nada... se alguém tiver um programa que possa me dar uma ideia de como fazer isso,ou alguma apostila sobre o assunto agradeço.
  8. Então.... Estou estudando arvores binarias em c++, já entendi como funciona a implementação de valores nela, mas não estou entendendo como e feito para a função imprimir ela em ordem... Código: #include <iostream> using namespace std; class Obj{ private: Obj * Esq; Obj * Dir; int Num; public: Obj (int Num){ this->Num = Num; Esq = NULL; Dir = NULL; } int GetNum(){ return Num; } Obj * GetEsq(){ return Esq; } Obj * GetDir(){ return Dir; } void SetEsq(Obj * no){ Esq = no; } void SetDir(Obj * no){ Dir = no; } }; class Arvore{ private: Obj * raiz; public: Arvore(){ raiz = NULL; } void Push(int Valor){ if(raiz == NULL){ raiz = new Obj(Valor); }else{ inserirAux(raiz,Valor); } } void inserirAux(Obj * No, int Valor){ if(Valor < No->GetNum()){ if(No->GetEsq() == NULL){ Obj * Novo_No = new Obj(Valor); No->SetEsq(Novo_No); }else{ inserirAux(No = No->GetEsq(), Valor); } }else if(Valor > No->GetNum()){ if(No->GetDir() == NULL){ Obj * Novo_No = new Obj(Valor); No->SetDir(Novo_No); }else{ inserirAux(No = No->GetDir(), Valor); } } } Obj * GetRaiz(){ return raiz; } void CoutArvore( Obj * No){ if(No != NULL){ CoutArvore(No->GetEsq()); cout << No->GetNum() << " "; CoutArvore(No->GetDir()); } } }; int main(){ Arvore a; a.Push(20); a.Push(22); a.Push(48); a.Push(16); a.Push(15); a.Push(19); a.Push(32); a.Push(26); a.Push(12); a.CoutArvore(a.GetRaiz()); return 0; } Não estou entendendo e a função "CoutArvore", o que entendi foi: ela pega o ultimo elemento a esquerda "12" e imprimi ai ele aponta pra NULL E agora como ela continua ? se alguém puder me explicar como funciona essa função para imprimir uma arvore binaria em ordem agradeço...
  9. Nossa mas que anta... @vangodp Valeu agora Funcionou!
  10. @1freakday Obrigado por disponibilizar o código, baixei o code blocks para dar uma olhada no código mas não compilou esta apresentando os seguintes warnings e erros:
  11. @1freakday Entendi. Dei uma olhada aqui é não achei muito material em português sobre estes assuntos "na verdade quase nenhum", mas acho melhor adiar esta parte do programa um pouco, pois parece se trata de um assunto mais avançado, e como comecei a programar a pouco tempo vou deixar para estudar sobre isso mais a frente... mesmo assim Obrigado! por Tirar minha duvida.
  12. @1freakday Escrevi Errado seria utilizando o "CEP" mesmo... Mas como faria isto? adicionado 8 minutos depois @Math.Pi... @devair1010... @zopek... @isrnick... @Gustavo Andretto... Alguém tem ideia de como fazer isso?

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