Ir para conteúdo
Fórum Script Brasil

vangodp

Membros
  • Total de itens

    883
  • Registro em

  • Última visita

Sobre vangodp

Perfil

  • Gender
    Male
  • Location
    Spain
  • Interests
    ]—[””I””IC++I||I||]>——-

Contatos

  • Skype
    vangodp vamp

Últimos Visitantes

6.188 visualizações

vangodp's Achievements

0

Reputação

  1. tal como você tem da a entender que estão separados por espaço... while (arquivo >> dados) cout << dados << endl; a) o menor dos números: você precisa de uma variável na qual você deve inicializar com o maior valor possivel ao que possa ser armazenado em um int. logo ir guardando cada int lido caso seja menor que a tal variável. #include<iostream> #include<climits> using namespace std; int main(){ int n = INT_MAX; int aux = 3000; cout << "Antes" << n << endl; cout << "Antes" << aux << endl; //n é maior que aux, vai ser atribuido o valor de aux a n if ( aux < n ){ n = aux; } cout << "Depois" << n << endl; cout << "Depois" << aux << endl; aux = 5000; //agora n é menor que aux, n vai acontecer nada if ( aux < n ){ n = aux; } cout << "Agora" << n << endl; cout << "Agora" << aux << endl; aux = 10; //aux é menor que n... sempre que isso acontecer o valor de aux vai ser guardado em n "anotando" o menor numero sempre. if ( aux < n ){ n = aux; } cout << "Fim" << n << endl; cout << "Fim" << aux << endl; return 0; } é dizer... cada vez que ler um numero guarda ele na aux e compara ele com n para ver si aux é menor, caso for assim você copia o aux no n. Por isso precisa inicializar n com o maior valor possivel, isso acontece quando fazemos int n = INT_MAX. O INT_MAX é o maior valor que cabe em um int, se fizer um ++ ao n você verá que passa a ser negativo. também tem INT_MIM etc. você pode ver aqui exemplos: https://www.cplusplus.com/reference/climits/ b) o maior dos números o maior dos números é a mesma coisa... só que desta vez com INT_MIN ou simplesmente atribuindo 0 ao n. Tome cuidado porque si tiver números negativos melhor usar INT_MIN, e em caso de n ter negativos talvez inicializando n com 0 seja suficiente. Dica.. se no arquivo n tiver numeros negativos talvez seja melhor usar unsigned int n em vez de int... fica mais "profissional". tenta ai e me diz como foi. c) a soma de todos os números. A soma é o mais fácil... você precisa de uma variável chamada somatória do tipo int que deve ser inicializado e cada vez que ler um numero do arquivo você deve fazer: n = n+aux;
  2. se contador é uma constante você n pode fazer ++. Tire o const
  3. pode ser que o codeblocks n ache gdb.exe, você tem que indicar para codeblocks. vai em settings/Debuger Settings e en default você precisa buscar o gdb.exe. O gbd.exe costuma estar na pasta do compilador chamada bin. https://prnt.sc/WcjVReXc6Zjd Se tiver dificuldade me avise e pode que seja possivel lhe ajudar. gbd.exe costuma estar junto na pasta do gcc.exe, g++.exe etc(pasta bin) como na foto em executable path você precisa indicar a pasta bin e o nome do arquivo... neste caso gdb.exe
  4. é uma ide muito boa sim.. mas também muito dependente de cmake, para estudo isso adiciona uma nova capa de complexidade.
  5. também vamos ter de adivinhar o que faz o programa...? se você comentar ele ou talvez explicar o que você achar que ele deveria fazer nas partes mais criticas do seu programa. Assim de entrada vejo coisas que podem causar erros como a linha "double maior;" dentro da função maior. quando declarar uma variável tenha em mente que você esta reservando um espaço da memoria, e que esse espaço pode vir com dados de outros programas incluídos("lixo"), se outro programa tiver usado esse espaço anteriormente é bem provável que lá tenha algum valor previo. Dai se você fizer... int i; double maior; for(i=0; i!=tam; i++){ if(vetor[i] > maior){ maior=vetor[i]; pensando que maior vale 0 você pode topar com erros pois na realidade se a função tiver lixo poderia ser algo como isso int i; double maior = (aqui poderia ter qualquer valor); for(i=0; i!=tam; i++){ if(vetor[i] > maior){ maior=vetor[i]; isso pode causar erros imprevisíveis, porque poderia funcionar seu programa, ou funcionar as vezes, ou até mesmo sair dragão na tela. Quando você precisar fazer cálculos com uma variável o melhor é dar um valor inicial int i; double maior = 0; // aqui temos controle porque sabemos que valor inicial vai ter for(i=0; i!=tam; i++){ if(vetor[i] > maior){ maior=vetor[i]; Fora isso você deveria comentar as formulas e cada parte critica etc. Somos todos pessoas ocupadas e realmente eu não sou estudante de pscologia XDDD. E ainda sou bem ruim em matematicas kkk. Se você me facilitar o que você espera que o programa faça, talvez, ou certamente seja possivel lhe ajudar. A linguagem C faz muitas coisas implícitas, que muitas vezes o programador desconhece, por isso você pode estar tendo problemas.
  6. coisas a dominar antes de tocar aí seriam entender o processo de compilação, linkado, e logo a geração de makefiles básicos, para logo ir escalando. não imagino que erro esta acontecendo. você sabe usar makefiles?
  7. mas por que você ta mexendo ai...? Isso é um arquivo makefile gerado pelo dev c++ automaticamente cada vez que você compila acredito. você sabe usar makefiles? o que você quer fazer exatamente..?
  8. vangodp

    Erro

    No c e c++ se você errar uma coisinha da "tropecentos" mil erros. o truco é ir arrumar o primeiro que provavelmente o resto volte a vuncionar. Para isso preste atenção nesta linha: \Users\magsm\OneDrive\┴rea de Trabalho\desafios\passagem de aviÒo\passagens.cpp: In function 'int main()': No arquivo passagens.cpp: dentro da função main na linha 20 acontece o seguinte erro: error: expected primary-expression before ')' token esta esperando uma expressão antes do parêntesis de fechamento ) 20 | switch (){ | ^ talvez você n saiba... ou pode que sim. tanto switch, como if, como while , etc, quer que você ponha algo dentro de ( e ) para ser avaliado. Dependendo do resultado da expressão dentro dos parêntesis for verdadeiro o falso se entra no corpo {} ou não. se os parêntesis estão vazios, o switch n serve para nada, e esse é o erro pois n se avalia nada. só com isso deve se arrumar os outros 200 mil erros kkk
×
×
  • Criar Novo...