Ir ao conteúdo
  • Cadastre-se

Flávio Pedroza

Membro Pleno
  • Posts

    2.031
  • Cadastrado em

  • Última visita

Tudo que Flávio Pedroza postou

  1. Não está certo. Para calcular a média você soma os elementos e divide pela quantidade de elementos: case 2: media = 0 for(it = numeros.begin(); it != numeros.end(), it++) { media += *it; } media = media / numeros.size(); cout << "A media é: " << media << enl; cout << "Pressione enter para continuar" << endl; cin.get(); break;
  2. Acredito que a forma abaixo esteja mais próxima do pedido no exercício. #include <vector> #include <iostream> using namespace std; int main(){ int x; string continuar; vector<int> numeros; numeros.size(); do{ cout << "Digite um numero: "; cin >> x; numeros.push_back(x); cout << "Deseja continuar? (s/n)"; cin >> continuar; }while(continuar == "s"); cout << "Saiu" << endl; int opcao; int soma; vector<int>::iterator it; do { cout << "Escolha a opção" << endl; cout <<"1: Imprimir o somatório de seus elementos" << endl; cout <<"2: Imprimir a média de seus elementos" << endl; cout <<"3: Imprimir a média e o somatório" << endl; cout <<"4: Substituir por zero todos os valores negativos e imprimir a média" << endl; cout <<"5: Substituir por zero todos os valores repetidos e imprimir a média e o somatório" << endl; cout<<"6: mostrar o vetor ordenado" << endl; cout <<"0: Sair da aplicação" << endl; cin >> opcao; cin.ignore(); switch (opcao) { case 1: // SOMA soma = 0; for (it = numeros.begin(); it != numeros.end(); it++) { soma += *it; } cout << "A soma é: " << soma << endl; cout << "Pressione enter para continuar" << endl; cin.get(); break; case 2: break; case 3: break; case 4: break; case 5: break; case 6: break; case 0: break; } } while (opcao != 0); cout << "Tchau!"; return 0; } Veja se consegue fazer o resto (média, ordenar, etc.).
  3. Não, são coisas completamente diferentes. switch/case é equivalente a condicionais if/else.
  4. sizeof retornar variável do tipo unsigned long, ou std::size_t em c++. São tipos de variáveis positivas que vão de zero até um valor máximo, nunca negativas. Quando você compara com números negativos, dá erro, pois o compilador vai transformar o número negativo no tipo sem sinal, ficando um número positivo com valor alto. Rode o exemplo abaixo para entender melhor. #include <iostream> using namespace std; int main() { int a = -1; //variável com sinal unsigned long b = 0;// variável sem sinal int c= 0;//variável com sinal if (a < b) cout << "a eh menor que b" << endl; //comparando signed com unsigned - erro! else cout << "erro???" << endl; if (a < c) cout << "a eh menor que c" << endl; //comparando signed com signed - ok! else cout << "erro???" << endl; //o que acontece quando transformo um tipo negativo em unsigned? cout << (unsigned long)a; return 0; } Em resumo, não compare números negativos com varáveis unsigned.
  5. Recursividade tem execução mais lenta é ocupa mais memória - não tem como evitar. Se isso é um problema, use laços então.
  6. tem que fazer o case switch para cada opção, tipo: int opcao; cin >> opcao; switch (opcao) { case 1: break; case 2: break; case 3: break; case 4: break; case 5: break; case 6: break; case 7: break; case 8: break; case 9: break; case 0: break; }
  7. do { cout<<"\t\tMENU\n\n\t1 AUTORES\n\t2 JOGAR\n\t3 SAIR\n\t>"; cin>>escolha; cin.ignore();//acrescentar para ele ignorar o ENTER; system("cls"); if(escolha==1) { system("cls"); cout<<"\tAUTORES:\n\tFelipe Hoffmeister\n\tRicardo Carvalho\n\tGuilherme"<<endl; } if(escolha==2) { do{ cout<<"\tDigite o nome do jogador da cartela 1:"; //gets(nome1); depreciado cin.getline (nome1,256); cout<<"\tDigite o nome do jogador da cartela 2:"; cin.getline (nome2,256);
  8. Na verdade, não acho que o programa vá funcionar do jeito que quer. Vai chegar um ponto em que o fatorial será tão grande que irá gerar erro de underflow. Tem que alterar o algortimo como sugeriu @isrnick
  9. Não precisa, o erro era o nome da função, você escreveu errado no .h.
  10. você está calculando o fatorial de forma errada. Além disso, acredito que esteja havendo estouro da variável. A convergência da séria é muito lenta, o que leva a muito passos e incremento muito rápido da variável fat. Tenta assim: #include<stdio.h> #include<conio.h> #include<math.h> int main(void) { int n = 0, i; double fat = 1; double serie = 0; while(serie <= 0.818731) { n = n + 1; fat=fat*n; serie = serie + (pow(-1,n)*pow(0.2,n))/fat; printf("\n%f %u", serie, fat); getch(); } return(0); }
  11. Tem um erro nessa linha case 3: //printf("\t\t\MAPA\n"); printf("\t\tMAPA\n"); e aqui #pragma once #include <stdio.h> #include <math.h> extern int assentoC[23]; extern int assentoJ[23]; extern float valort; //void limpavetor(int *v1,int*v2); void limparvetor(int *v1,int*v2);
  12. Por que será hein? Será que essa é uma sintaxe aceita pela linguagem? int SomaSerie(int i, int j, int k){ int soma = 0; if(i<j){ soma = soma + SomaSerie(i + k, j, k); }else{ soma = soma + j; } return soma; }
  13. Dê uma olhada na sugestão de @KXSY você tem que criar um estrutura para armazenas as informações de cada peça: typedef struct { unsigned short x,y; unsigned char usada,dama; }TPeca; TPeca jogadores[2][16];
  14. 1º. Os métodos vão possuir Get e Set? Para cada atributo você cria um método set/get. Por ex., na classe musica você cria: String get_nome() { return nome; } void set_nome(String nome) { this.nome = nome; } Faz o mesmo pros outros atributos (id, artista, etc.) 2º. Como esses métodos irão agir sobre os atributos? Fiquei confuso a respeito de como fazer a interação de um método com o atributo. você quem vai definir isso. Exemplo: void adicionarMusica(Musica musica) { musicas[musica.get_id()] = musica; } 3º. O vetor músicas[100] tem que ser declarado como um vetor de 100 posições na classe também, ou somente no principal? você declara na classe PlayList apenas.
  15. aqui um exemplo: #include <iostream> using namespace std; void gotoxy(int x, int y) { cout << "\033[" << y << ";" << x <<"H"; } int main() { int matriz[4][4] = {{1, 2, 3, 4}, {4, 3, 2, 1}, {1, 2, 3, 4}, {4, 3, 2, 1}}; for (int x = 0; x < 4; x++) for (int y = 0; y < 4; y++) { gotoxy (x+1, y+1); cout << matriz[x][y]; } return 0; }
  16. for(i=n-1; i>=0; i--) { printf("%d\n",*(vet+i)); } O verto vai de 0 até N-1, e não N, ok?
  17. /****************************************************************************** Online C++ Compiler. Code, Compile, Run and Debug C++ program online. Write your code in this editor and press "Run" button to compile and execute it. *******************************************************************************/ #include <stdio.h> #include <stdlib.h> #include <locale.h> #define TAB 8 #define casa_vazia 0 #define A 1 #define B 2 #define AD 3 #define BD 4 #define casa_branca -1 int matriz[TAB][TAB];/* = {{-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}};*/ char pecas[3] = {'#', 'A', 'B'}; //o primeiro é espaço vazio, o segundo represente as brancas e o terceiro as pretas void campo() { system("cls"); int i = 0, j = 0, lin = 0, col = 0, l = 0, c = 0; printf("\033[36;1m\t0\t1\t2\t3\t4\t5\t6\t7\t\n\n"); //\033[36;1m mudar a cor da fonte e deixa bold for (i = 0; i < TAB; i++) //peças brancas { printf("\033[36;1m%d\t", i); //\033[36;1m mudar a cor da fonte e deixa bold for (j = 0; j < TAB; j++) { if (((i % 2 == 0) && (j % 2 == 0)) || ((i % 2 == 1) && (j % 2 == 1))) { if (i<3) matriz[i][j]= 1; //brancas else if (i>4) matriz[i][j] = 2; //pretas else matriz[i][j] = 0;//vazio } printf("\033[37;0m%c\t", pecas[matriz[i][j]]); } printf("\n"); } printf("\n\n\t\t\tLINHA => "); scanf("\n%d", &l); } int main() { setlocale(LC_ALL, "portuguese"); int lin = 0, col = 0, i = 0, j = 0, opcao=0, menu = 0; do { printf("\n\t Bem vindo ao jogo de Damas!"); printf("\n\t 1 - Iniciar jogo."); printf("\n\t 2 - Informações do jogo."); printf("\n\t 3 - Sair do jogo."); printf("\n\n\t Selecione uma opção => "); scanf("%d", &menu); switch (menu) { case 1: //COMEÇAR O JOGO (FUNÇÃO JOGO) campo(); break; case 2: // INFORMAÇÕES DO JOGO break; case 3: //SAIR DO JOGO system("cls"); printf("\n\tVOCÊ SAIU DO JOGO!"); break; default: system("cls"); printf("\n\tOPÇÃO INVÁLIDA, TENTE NOVAMENTE!"); //return 0 } } while (menu != 3); return 0; } Veja se entende o que fiz. Coloquei um pouco de cor tb. Se interessar, posso falar mais sobre isso. adicionado 40 minutos depois Esta versão fica bem legal visualmente: /****************************************************************************** Online C++ Compiler. Code, Compile, Run and Debug C++ program online. Write your code in this editor and press "Run" button to compile and execute it. *******************************************************************************/ #include <stdio.h> #include <stdlib.h> #include <locale.h> #define TAB 8 #define casa_vazia 0 #define A 1 #define B 2 #define AD 3 #define BD 4 #define casa_branca -1 int matriz[TAB][TAB];/* = {{-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}, {-1, -1, -1, -1, -1, -1, -1, -1}};*/ char pecas[3] = {' ', 'A', 'B'}; void campo() { system("cls"); int i = 0, j = 0, lin = 0, col = 0, l = 0, c = 0; printf("\033[36;40;1m 0 1 2 3 4 5 6 7 \n"); for (i = 0; i < TAB; i++) //peças brancas { printf("\033[36;40;1m%d ", i); for (j = 0; j < TAB; j++) { if (((i % 2 == 0) && (j % 2 == 0)) || ((i % 2 == 1) && (j % 2 == 1))) { if (i<3) matriz[i][j]= 1; //brancas else if (i>4) matriz[i][j] = 2; //pretas else matriz[i][j] = 0;//vazio } //if (matriz[i][j] == 0) { if (i % 2 == 0) if (j % 2 == 0) printf("\033[41m %c ", pecas[matriz[i][j]]); else printf("\033[45m %c ", pecas[matriz[i][j]]); else if (j % 2 == 0) printf("\033[45m %c ", pecas[matriz[i][j]]); else printf("\033[41m %c ", pecas[matriz[i][j]]); } //else printf("\033[0m%c\t", pecas[matriz[i][j]]); } printf("\n"); } printf("\n\n\t\t\tLINHA => "); scanf("\n%d", &l); } int main() { setlocale(LC_ALL, "portuguese"); int lin = 0, col = 0, i = 0, j = 0, opcao=0, menu = 0; do { printf("\n\t Bem vindo ao jogo de Damas!"); printf("\n\t 1 - Iniciar jogo."); printf("\n\t 2 - Informações do jogo."); printf("\n\t 3 - Sair do jogo."); printf("\n\n\t Selecione uma opção => "); scanf("%d", &menu); switch (menu) { case 1: //COMEÇAR O JOGO (FUNÇÃO JOGO) campo(); break; case 2: // INFORMAÇÕES DO JOGO break; case 3: //SAIR DO JOGO system("cls"); printf("\n\tVOCÊ SAIU DO JOGO!"); break; default: system("cls"); printf("\n\tOPÇÃO INVÁLIDA, TENTE NOVAMENTE!"); //return 0 } } while (menu != 3); return 0; }
  18. Eu sugiro você formatar o sistema e reinstalar tudo novamente. Mas desta vez, use o site oficial para obter a iso https://www.microsoft.com/pt-br/software-download/windows10startfresh ou https://www.microsoft.com/pt-br/software-download/windows10 Não instale mais nada e observe se o problema persiste. Vá aos poucos instalando os programas que quer e sempre verificando se o problema aparece.
  19. Já escaneou o computador para vírus? Verifique a pasta em que esses svchost.exe estão localizados. O correto é estar na pasta SYSTEM32 (você pode verificar isso clicando com o botão direito em cima do processo e escolher "abrir local do arquivo").
  20. int paresdecres(int n){ if (n == 0) return 0; else if (n %2 == 0){ printf("%d\n", n); } return paresdecres(n - 1); } int main(void){ int n; printf("Digite um número\n"); scanf("%d", &n); paresdecres(n); return 0; }
  21. Micro JST PH 1.25? https://pt.aliexpress.com/item/32863237558.html
  22. Testando a GPU em outro PC ou colocando outra GPU, que saiba estar funcionando, no seu.

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