Ir para conteúdo
Fórum Script Brasil

PedroCunha

Membros
  • Total de itens

    282
  • Registro em

  • Última visita

Tudo que PedroCunha postou

  1. Nunca me deparei com isso, mas para adicionar o "bound-checking" você deve ter que 'setar' alguma flag ( -fbounds-checking ) nas opções do compilador. Att., Pedro
  2. Amigo, só mude sua declaração de main(void) para int main (void) pois main é uma função integer e deve retornar algum valor. Att., Pedro
  3. PedroCunha

    Exercício em C

    Nos mostre alguma tentativa pelo menos, :D. Para nos temos certeza que você tentou.
  4. Bom, duas coisas amigo: Primeiro -> Mude a declaração do objeto ofstream e sua abertura para fora do do-while loop. Caso contrário você estará abrindo o arquivo e criando um objeto toda vez que passa no loop; Segund -> Para abrir um arquivo de forma a não sobrepor o conteúdo já existente nele, temos que usar uma flag na sua abertura. Da seguinte maneira: ofstream makefile; makefile.open("C://Test.txt", ios::app); ios::app -> append, do inglês, adicionar, juntar. Ou seja, não deletar, :D. Aqui vai um link de um tópico do Fórum sobre esse assunto: IOS:APP Att., Pedro
  5. PedroCunha

    java

    Amigo, esse post deveria estar na área sobre programação em Java e não aqui, na área sobre programação em C++.
  6. Certo. Mas mesmo assim eu não posso fazer o seguinte certo? .... void Testando(int Teste) { Teste = 0; } int main() { ..... Testando(Teste); return 0; } Certo?
  7. Irei postar um código que, ao receber uma palavra ou frase, mostra se essa é um palíndromo (Palavra que pode ser lida de trás para frente com o mesmo resultado) ou não. Qualquer dúvida basta perguntar. #include <iostream> #include <cstring> #include <stdio.h> using namespace std; string Palavra = ""; string Palavra_Teste = ""; string TempPalavra = ""; bool Se_Palindromo = false; char Usar_denovo; void Perguntar_a_Palavra(string&); void Checar_por_simbolos(string&, string&); bool Checar_se_Palindromo(string&, string); void Mostrar_se_e_Palindromo(); void Perguntar_se_quer_usar_denovo(char); void Funcoes(); void Perguntar_a_Palavra(string& Palavra) { Palavra == ""; cin.sync(); cout << "\nDigite uma palavra (Não use acentos por favor)" << endl; getline(cin, Palavra); } void Checar_por_simbolos(string& Palavra, string& TempPalavra) { TempPalavra = Palavra; for (unsigned int h = 0; h < Palavra.length(); h++) { for (unsigned int i = 0; i < Palavra.length(); i++) { if (Palavra[i] >= 48 || Palavra[i] == 49 || Palavra[i] == 50 || Palavra[i] == 51 || Palavra[i] == 52 || Palavra[i] == 53 || Palavra[i] == 54 || Palavra[i] == 55 || Palavra[i] == 56 || Palavra[i] == 57 || (Palavra[i] > 64 && Palavra[i] < 91) || (Palavra[i] > 96 && Palavra[i] < 123) || (Palavra[i] > 127 && Palavra[i] < 155) || (Palavra[i] > 159 && Palavra[i] < 166)) { } else { Palavra.erase(i,1); } } } for (unsigned int j = 0; j < Palavra.length(); j++) { Palavra[j] = toupper(Palavra[j]); } } bool Checar_se_Palindromo(string& Palavra, string Palavra_Teste) { int i, j; int Palavra_Size = Palavra.length(); if (Palavra != "") { for (i = Palavra_Size - 1, j = 0; i >= 0;i-- , j++) { Palavra_Teste[j] = Palavra[i]; } Palavra_Teste[Palavra_Size] = ''; if (strcmp(Palavra_Teste.c_str(), Palavra.c_str()) == 0) { Se_Palindromo = true; } else Se_Palindromo = false; Palavra = TempPalavra; } else Se_Palindromo = false; return Se_Palindromo; } void Mostrar_se_e_Palindromo() { cout << "\n"; cout << "Frase: " << Palavra << endl; cout << "Palíndromo:"; if (Se_Palindromo == false) { cout << " Não" << endl << endl; } else { cout << " Sim" << endl << endl; } } void Funcoes() { Perguntar_a_Palavra(Palavra); Checar_por_simbolos(Palavra, TempPalavra); Checar_se_Palindromo(Palavra, Palavra_Teste); Mostrar_se_e_Palindromo(); Perguntar_se_quer_usar_denovo(Usar_denovo); } void Perguntar_se_quer_usar_denovo(char Usar_denovo) { cout << "\nDeseja usar o programa denovo? (S / N)" << endl; if (! (cin >> Usar_denovo)) { cin.clear(); cin.sync(); cout << "Opção inválida." << endl << endl; Perguntar_se_quer_usar_denovo(Usar_denovo); } switch (Usar_denovo) { case 'S': {Funcoes(); break;} case 's': {Funcoes(); break;} case 'N': {cout << "\nAdeus" << endl; break;} case 'n': {cout << "\nAdeus" << endl; break;} default:{ cout << "Opção inválida. Tente novamente." << endl; cin.sync(); Perguntar_se_quer_usar_denovo(Usar_denovo); break; } } } int main() { setlocale(LC_ALL, "Portuguese"); Funcoes(); cin.get(); return 0; } Att., Pedro
  8. Você está tentando usar o fstream , uma função da linguagem C++, com comandos da linguagem C. Para que seu código funcione, faça dessa forma: #include <iostream> #include <fstream> #include <stdio.h> #include <stdlib.h> using namespace std; int a; int main(){ printf("Digite um numero: "); scanf("%d", &a); system("cls"); ofstream makefile; makefile.open("C://teste.txt"); makefile << "Numero digitado: " << a; makefile.close(); } E não se esqueça que main é uma função que retorna uma integer, ou seja, tem que ser declarada com int main() Att., Pedro
  9. PedroCunha

    Linguagem C

    O que não funcionou? Qual foi o error? No meu computador funcionou perfeitamente. Att., Pedro
  10. Muito obrigado os dois. Imagina que seria com ponteiros, mas não tinha visto nenhum explicação. Att., Pedro ² E quanto a segunda questão, alguém sabe?
  11. Aqui está o programa, totalmente funcional, checando se o que foi digitado está certo e com um loop no final. Qualquer dúvida é só perguntar. /* ****************************************** * Software: (Calculadora Básica) * * Data: 29/12/2012 * * Autor: Pedro Vinicius Siqueira * * E-mail: pedro.v.siqueira@gmail.com * * Versão: 0.1 * ****************************************** */ #include <iostream> using namespace std; double soma(double x,double y){ cout<<"\nVamos fazer a soma" << endl; cout<<"\nO valor da soma = "; return (x+y); } double sub(double x,double y){ cout<<"\nVamos fazer a subtracao"<< endl; cout<<"\nO valor da subtracao = "; return (x-y); } double mult(double x,double y){ cout<<"\nVamos fazer a multiplicacao"<< endl; cout<<"\nO valor da multiplicacao = "; return (x*y); } double div(double x,double y){ cout<<"\nVamos fazer a divisao"<< endl; cout<<"\nO valor da divisao = "; return (x/y); } int main(){ setlocale(LC_ALL, "Portuguese"); int operacao = 0; double a,b = 0; bool done=false; char Variavel_Controle = ''; while (done==false){ cout<<"\nCalculadora basica em c++. Digite dois numeros e pressione enter."<< endl; if (! (cin >> a >> b)) { cin.clear(); cin.sync(); cout << "Invalido. Digite um numero." << endl; cin >> a >> b; } cout<<"\nDigite o tipo de operacao. \n 1. Soma\n 2. Subtracao\n 3. Multiplicacao\n 4. Divisao" <<endl; if (! (cin >> operacao)) { cin.clear(); cin.sync(); cout << "\nInvalido. Digite um numero." << endl; cin >> operacao; } switch(operacao){ case 1: cout<<soma(a,b); break; case 2: cout<<sub(a,b); break; case 3: cout<<mult(a,b); break; case 4: cout<<div(a,b); break; default: cout<<"\nNumero invalido!"; cin >> operacao; break; } cout << "\nVocê deseja usar o programa denovo? (S/N)" << endl; cin >> Variavel_Controle; if (Variavel_Controle == 'S' || Variavel_Controle == 's') { } else { cout << "\nAdeus!" << endl; done = true; cin.get(); } } return 0; } Att., Pedro
  12. Olá gente. Tenho uma dúvida quanto a esse código aqui: #include <stdio.h> #include <stdlib.h> #include <conio.h> float Numero,Maior_Numero; int i; void Determinar_Maior_Numero(float, float, int); void Determinar_Maior_Numero(float Numero, float Maior_Numero, int i) { Maior_Numero = 0; for (i = 0; i < 10; i++) { printf("Digite um numero\n"); scanf("%f", &Numero); if (Numero > Maior_Numero) Maior_Numero = Numero; } } int main() { Determinar_Maior_Numero(Numero,Maior_Numero,i); printf("\n\nO maior numero digitado foi: %.5f\n\n", Maior_Numero); printf("Pressione qualquer tecla para sair"); getch(); return 0; } Se eu tentar usar o printf com Maior_Numero na função main, ou seja, fora de onde ele foi alterado, ele não "carrega" nenhum valor, mostrando zero na tela. Em C++, para que eu conseguisse mostrar o valor da variável Maior_Numero eu passaria ele como referência nos parâmetros da função, no entanto, em C, passar por referência não é possível. Gostaria de saber se existe alguma alternativa. Att., Pedro ²Também gostaria de saber se é possível 'chamar' uma função em main sem declarar as variáveis que compõem os seus parâmetros de forma global.
  13. Basta adicionar (RESOLVIDO) ao título do tópico, :D. Att., Pedro
  14. Uau. Pode me recomendar o livro que te ensinou a usar ponteiros?
  15. PedroCunha

    AJUDA

    Exatamente Dan, :D. Acho que com o advento das IDE's as pessoas se esqueceram do modo antigo, hehe. Att., Pedro
  16. PedroCunha

    Linguagem C

    Claro. Aqui vai: #include <stdio.h> #include <stdlib.h> #include <conio.h> float Numero,Maior_Numero; int i; void Determinar_Maior_Numero(float, float, int); void Determinar_Maior_Numero(float Numero, float Maior_Numero, int i) { Maior_Numero = 0; for (i = 0; i < 10; i++) { printf("Digite um numero\n"); scanf("%f", &Numero); if (Numero > Maior_Numero) Maior_Numero = Numero; } printf("\n\nO maior numero digitado foi: %.5f\n\n", Maior_Numero); } int main() { Determinar_Maior_Numero(Numero,Maior_Numero,i); printf("Pressione qualquer tecla para sair"); getch(); return 0; } Estude bem o código e aproveite, pois não é sempre que fazemos o código para você. Qualquer dúvida é só perguntar. Att., Pedro
  17. PedroCunha

    AJUDA

    Isso que é eu disse e também disse para trocar pelo cin.get() porque além deste não ser dependente de sistema operacional, ele faz a mesma coisa que o system("PAUSE") sem os gastos excessivos de memória e os problemas de segurança, :D. Att., Pedro
  18. Muito inteligente cara! Você trabalha com programação?
  19. Ahhhh...tipo...quando você passa 'B' como valor o que acontece é o seguinte: GROUPS['B' - 65][i] -> GROUPS[66-65][i] Certo?
  20. PedroCunha

    AJUDA

    Basta trocar o system("PAUSE") por cin.get() e não dependerá do sistema operacional, :D. Att., Pedro
  21. Ele só faz o primeiro grupo e depois trava. Mas porque 'A' e não 'B' ou 'C'?
  22. Mas para que usar isso? O que esta fazendo? Está fazendo tipo GROUPS[group - 'A'][i] = club; ?
×
×
  • Criar Novo...