Ir ao conteúdo

Michael Douglas_787885

Membro Júnior
  • Posts

    14
  • Cadastrado em

  • Última visita

Tudo que Michael Douglas_787885 postou

  1. Você disse que o problema era que o magica[1] tava dando um numero estranho O motivo do numero estranho é que você criou um vetor de 0 posições e quer acessar a posição de indice 1, que no caso essa posição é inexistente, e ae da esse numero defina o tamanho do vetor como por exemplo: int tamanho = 1; int magica[tamanho]; while(magica[tamanho] != 0) { printf("Digite um numero: "); scanf("%d", &magica[tamanho]); tamanho++; }
  2. Eu nem testei o seu código, mas pelo que eu vi aqui, você esta querendo acessar magica[1] sem ao menos ter criado um vetor que possa acessa-lo na declaração de variavel, muda o int magica[0] para int magica[2] ou então muda os magica[1] para magica[0] além do mais você não precisava criar um vetor
  3. Boa tarde. Galera estou querendo iniciar programação com interface gráfica, ja procurei na net mas não tive uma resposta clara, então qual a melhor biblioteca para iniciantes? Poderia também deixar um link para estudos? Obrigado desde ja.
  4. O que você quer deve ser isso aqui O erro era porque vc fez um else if antes de ter um if dentro do if por exemplo if { else if { } else if { } else if { } } sendo que era para ser assim: if { if { } else if { } else if { } } #include <stdio.h> main() { double valor; scanf("%lf",&valor); if (valor>=0|| valor<=25) { printf("Intervalo [0,25]"); if (valor>25 && valor <=50) { printf("Intervalo [25,50]"); } else if (valor>50 && valor <=75) { printf("Intervalo [50,75]"); } else if (valor >75 && valor <=100) { printf("Intervalo [75,100]"); } }else printf("Fora de intervalo"); }
  5. só completando... a comparação de strings não funciona do mesmo jeito com numeros com numero é assim: if(num1 == num2) {...} com string é assim: if(strcmp(planeta, "mercurio") ==0 ) {...} o strcmp significa string compare o primeiro parametro que é a variavel planeta, esta sendo comparado com a string mercurio, se elas forem iguais retorna 0 ou seja, a função strcmp retorna valores -1,ou 0 ou 1, ela retornara -1 se o conteudo(valor) da variavel planeta for menor que "mercurio", retornará 0 se o conteudo(valor) da variavel planeta for igual a string palavra ou retornará 1 se o conteudo da variavel planeta for maior que mercurio pode se comparar duas variaveis também, é só substituir a string mercurio por um nome de uma variavel para utilizar strcmp você terá que adicionar uma biblioteca é só escrever #include <string.h> depois do #include <stdio.h> ou antes pois não faz diferença acesse o canal DE ALUNO PARA ALUNO no youtube para mais informações sobre C, é um canal bem completo tem o canal G-TECH que também é muito bom
  6. Boa tarde. Como faço para imprimir caracter usando numeros inteiros em C++? em C ficaria assim printf ("%c", 16); Mas como fica em C++? eu sei fazer criando uma variavel: char ch = 16; e sem criar uma variavel? EDIT: Haha, ja descobri como, pelo menos esse topico vai servir de ajuda a alguem Aos curiosos, é só utilizar o type-casting que significa converter um tipo para outro como por exemplo: cout << (char)16; na linha de cima eu converti o numero 16 para char, acessando o codigo de valor 16 da tabela ascii
  7. @vangodp Opa valeu cara! Qual IDE você usa?
  8. Ola! Estou tentando abrir um arquivo passando como parametro o nome de uma variavel, porém não estou conseguindo, como devo procedir? Eu estou utilizando o Code blocks #include <iostream> #include <fstream> #include <string> using namespace std; int main() { int escolhaOpcao; string nomeArquivo; cout << "Hello world!" << endl << endl; cout << "Escolha uma opcao:" << endl; cout << "1)Criar um arquivo" << endl; cout << "2)Ler um arquivo" << endl; cin >> escolhaOpcao; switch(escolhaOpcao) { case 1: cout << "Digite o nome do arquivo: " << endl; cin.get(); getline(cin, nomeArquivo); ofstream arquivoWrite; arquivoWrite.open(nomeArquivo, ios::binary); arquivoWrite.close(); } return 0; }
  9. Tem um canal no youtube que ensinou a fazer o Pacman em C utilizando a biblioteca allegro
  10. CiroboyBR muito obrigado, era isso mesmo hehe, eu copiei o mesmo codigo duas vezes , eu nem tinha percebido
  11. Bom dia! Então, eu to querendo gerar um numero aleatorio para o numero da conta do banco, até ai tudo bem, digamos que ele gera o numero 123456, quando vou visualizar o numero, ele muda... //arquivo ContaBancaria.cpp #include "ContaBancaria.h" #include <iostream> ContaBancaria::ContaBancaria() { } void ContaBancaria::setNumeroConta(int numeroConta) { this->numeroConta = numeroConta; } int ContaBancaria::getNumeroConta() { this->numeroConta = numeroConta; } void ContaBancaria::setNome(string nome) { this->nome = nome; } string ContaBancaria::getNome() { return this->nome; } void ContaBancaria::setNascimento(string nascimento) { this->nascimento = nascimento; } string ContaBancaria::getNascimento() { return this->nascimento; } void ContaBancaria::setCpf(string cpf) { this->cpf = cpf; } string ContaBancaria::getCpf() { return this->cpf; } void ContaBancaria::setSenha(char senha[]) { strcpy(this->senha, senha); } char *ContaBancaria::getSenha() { return this->senha; } void ContaBancaria::setValor(double valor) { this->valor = this->valor + valor; } double ContaBancaria::getValor() { return this->valor; } void ContaBancaria::criarConta() { char ch; int aleatorio; ContaBancaria *contabancaria = new ContaBancaria(); int entradaUsuarioInt; string entradaUsuarioString; cout << endl << "Para criar uma conta digite as informações abaixo" << endl << endl; cout << "Cpf: "; cin.get(); getline(cin, entradaUsuarioString); contabancaria->setCpf(entradaUsuarioString); cout << "Nome: "; getline(cin, entradaUsuarioString); contabancaria->setNome(entradaUsuarioString); cout << "Nascimento: "; getline(cin, entradaUsuarioString); contabancaria->setNascimento(entradaUsuarioString); /*cout << "Senha de até 16 caracteres: "; for(int i = 0; i < 16 || senha[i] == 13; i++) { senha[i] = getch(); cout << "*"; } cout << endl;*/ aleatorio = 10000+(rand()%89999); contabancaria->setNumeroConta(aleatorio); cout << "Numero da conta: " << contabancaria->getNumeroConta(); cout << endl << endl << "Conta criada com sucesso!" << endl << endl; vecContaBancaria.insert(vecContaBancaria.end(), *contabancaria); } void ContaBancaria::showInfo() { ContaBancaria *contabancaria = new ContaBancaria(); for(int i = 0; i < vecContaBancaria.size(); i++) { contabancaria = &vecContaBancaria.at(i); cout << endl << "Numero da conta: " << contabancaria->getNumeroConta() << endl; cout << "Nome: " << contabancaria->getNome() << endl; cout << "Nascimento: " << contabancaria->getNascimento() << endl; cout << "CPF: " << contabancaria->getCpf() << endl; //cout << "Senha" << cout << "Valor R$ " << contabancaria->getValor() << endl; system("pause"); } } #include "ContaBancaria.h" #include <iostream> //arquivo ContaBancaria.h #include <iostream> #include <cstdlib> #include <ctime> #include <string> #include <vector> #include <string.h> #include <conio.h> using namespace std; class ContaBancaria { public: ContaBancaria(); void criarConta(); void setNumeroConta(int numeroConta); int getNumeroConta(); void setNome(string nome); string getNome(); void setNascimento(string nasicmento); string getNascimento(); void setCpf(string cpf); string getCpf(); void setSenha(char senha[]); char *getSenha(); void setValor(double valor); double getValor(); void showInfo(); private: int numeroConta; string nome; string nascimento; string cpf; char senha[17]; double valor; vector <ContaBancaria> vecContaBancaria; }; //arquivo main.cpp #include "ContaBancaria.h" int main() { int escolhaOpcao; setlocale(LC_ALL,"Portuguese"); ContaBancaria *cb = new ContaBancaria(); do { cout << "Hello world!" << endl << endl; cout << "Escolha uma opção:" << endl; cout << "1)Criar conta" << endl; cout << "2)Ver conta" << endl; cout << "3)Saque" << endl; cout << "4)Depósito" << endl; cout << "5)Transferir" << endl; cout << "6)Sair" << endl; cin >> escolhaOpcao; switch(escolhaOpcao) { case 1: cb->criarConta(); break; case 2: cb->showInfo(); break; case 3: break; case 4: break; case 5: break; case 6: break; default: cout << endl << "Opção inválida" << endl; } }while(escolhaOpcao!=6); return 0; }
  12. eu não conhecia esse comando cin.sync() ele fez a mesma coisa que o cin.get() ou cin.ignore(), no fim não resolveu o problema dos 10 digitos, mas eu sei porque, eu andei pesquisando e uma variavel do tipo int tem um valor maximo que pode receber que é esse abaixo INT_MAX Valor máximo para uma variável do tipo int. 2147483647 um cpf tem 11 digitos, então o cpf ficava com valor superior a 2147483647(que possui 10 digitos) e por isso dava o erro galerinha, quem for um programa que peça cpf, utilize o tipo char ou até mesmo o tipo string que irá evitar esse erro
  13. E ae galera beleza? Eu postei uma duvida minha aqui a umas 2 horas atras, só que eu mesmo acabei resolvendo depois, porém agora surgiu uma outra duvida Eu digito o valor do cpf só que ai depois ele pulava uma parte do codigo, ok... Ai usei cin.clear() e resolveu isso, só que quando fui ver o valor do cpf, o valor estava diferente do que eu tinha colocado, ok.. Então tirei o cin.clear() e usei cin.get() em cima do meu getline, o programa funciona perfeitamente se o meu cpf tiver tamanho inferior a 10, quando o tamanho é superior a 9, entra num loop infinito do meu comando "DO" pulando todos os cin e getline. //arquivo ContaBancaria.cpp #include "ContaBancaria.h" ContaBancaria::ContaBancaria() { } void ContaBancaria::setNumeroConta(int numeroConta) { this->numeroConta = numeroConta; } void ContaBancaria::setNome(string nome) { this->nome = nome; } string ContaBancaria::getNome() { return this->nome; } void ContaBancaria::setNascimento(string nascimento) { this->nascimento = nascimento; } string ContaBancaria::getNascimento() { return this->nascimento; } void ContaBancaria::setCpf(int cpf) { this->cpf = cpf; } int ContaBancaria::getCpf() { return this->cpf; } void ContaBancaria::setValor(double valor) { this->valor = this->valor + valor; } void ContaBancaria::criarConta() { int entradaUsuarioInt; string entradaUsuarioString; cout << endl << "Para criar uma conta, digite as informações abaixo" << endl; cout << "Cpf: "; cin >> entradaUsuarioInt; this->setCpf(entradaUsuarioInt); cout << "Nome: "; cin.get(); getline(cin, entradaUsuarioString); this->setNome(entradaUsuarioString); cout << "Nascimento: "; getline(cin, entradaUsuarioString); this->setNascimento(entradaUsuarioString); cout << endl << "Conta criada com sucesso!" << endl; } void ContaBancaria::showInfo() { cout << "Nome: " << this->getNome() << endl; cout << "Nascimento: " << this->getNascimento() << endl; cout << "CPF: " << this->getCpf() << endl; system("pause"); } //Arquivo ContaBancaria.h #include <iostream> #include <cstdlib> #include <string> using namespace std; class ContaBancaria { public: ContaBancaria(); void criarConta(); void setNumeroConta(int numeroConta); int getNumeroConta(); void setNome(string nome); string getNome(); void setNascimento(string nasicmento); string getNascimento(); void setCpf(int cpf); int getCpf(); void setValor(double valor); double getValor(); void showInfo(); private: int numeroConta; string nome; string nascimento; int cpf; double valor; }; //arquivo main.cpp #include "ContaBancaria.h" int main() { int escolhaOpcao; setlocale(LC_ALL,"Portuguese"); ContaBancaria *cb = new ContaBancaria(); do { cout << "Hello world!" << endl << endl; cout << "Escolha uma opção:" << endl; cout << "1)Criar conta" << endl; cout << "2)Ver conta" << endl; cout << "3)Saque" << endl; cout << "4)Depósito" << endl; cout << "5)Transferir" << endl; cout << "6)Sair" << endl; cin >> escolhaOpcao; switch(escolhaOpcao) { case 1: cb->criarConta(); break; case 2: cb->showInfo(); break; case 3: break; case 4: break; case 5: break; case 6: break; default: cout << endl << "Opção inválida" << endl; } }while(escolhaOpcao!=6); return 0; }
  14. E ae galera, ve se tem como me ajudarem aqui. sempre que alguem digita uma letra, o programa trava pois é uma variavel do tipo int, gostaria que proibisse os caracteres que não sao digitos, algum jeito? int main(){ int num; printf("Digite um numero: "); scanf("%d", &num);}

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!