Flávio Pedroza
Membro Pleno-
Posts
2.068 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
Tudo que Flávio Pedroza postou
-
Nesse caso, tente essa solução: #include<stdio.h> #include<stdlib.h> // biblioteca para usar as funções rand e srand. #include<time.h> // biblioteca para usar a função time. #include<locale.h> // biblioteca para linguagem #include<memory.h> main(void) { srand(time(NULL)); setlocale(LC_ALL, "Portuguese"); // comando para aceitar palavras em português. int i, contador=0, n=75, t = 0, j; int vetor[n]; memset(vetor, 0, n*sizeof(int)); //zera vetor for( i=1; i<76; i++) { printf("[ X]"); if(i%15==0) { printf("\n"); } } do { t=rand()%75+1; printf("Numero soterado:%i\n", t); getchar(); vetor[contador]=t; system("cls"); for( i=1; i<76; i++) { if (vetor[i-1] != 0) printf("[%2i]", vetor[i-1]); else printf("[ X]"); if(i%15==0) { printf("\n"); } } contador++; } while (contador <=75); }
-
#include<stdio.h> #include<stdlib.h> // biblioteca para usar as funções rand e srand. #include<time.h> // biblioteca para usar a função time. #include<locale.h> // biblioteca para linguagem main(void) { srand(time(NULL)); setlocale(LC_ALL, "Portuguese"); // comando para aceitar palavras em português. int i, contador=1, n=75, t = 0, j; int vetor[n]; for( i=0; i<75; i++) vetor[i]=rand()%75+1; do { contador++; system("cls"); for( i=1; i<76; i++) { if (vetor[i-1] == t) printf("[ X]"); else printf("[%2i]", vetor[i-1]); if(i%15==0) { printf("\n"); } } getchar(); t=rand()%75+1; printf("Numero soterado:%i\n", t); getchar(); } while (contador <=75); Essa solução é próxima do que quer. O problema é que o X não permanece. Deixo isso pra você consertar.
-
int iniciarVotacao(){ struct candidatos presidente; struct candidatos deputado; int votoPresidente = 0; int votoDeputado = 0; int i = 0; //presidente.nomeCandidado = 0; //nomeCanditato é do tipo string, nao pode atribuir inteiro presidente.nomeCandidado[0]='\0'; //isso faz com que a string fique em branco (nula); deputado.numCandidato = 0; // erro printf("Número do candidato para a Presidência => "); scanf("%d", &votoPresidente); printf("\nNúmero do candidato para Deputado => "); scanf("%d", &votoDeputado); for(i = 0 ; i < 11 ; i++){ if(listar[i].numCandidato == votoPresidente && listar[i].numCandidato < 50){ //faltou o [i] presidente = listar[i]; }// 2° erro acontece if(listar[i].numCandidato == votoPresidente && listar[i].numCandidato > 1000){//faltou o [i] deputado = listar[i]; } }
-
C Problema com ponteiro de char
Flávio Pedroza respondeu ao tópico de Fábio Henrique Borecki em C/C#/C++
if (seletor == 'X'){ jog2 = "Computador"; Essa sintaxe está incorreta, não é assim que se compara/atribui strings em c. Pesquise as funções strcmp e strcpy -
C Desenvolver Programa com Vetores aleatórios
Flávio Pedroza respondeu ao tópico de Ana Clara Alves Nunes em C/C#/C++
int y[150] = {0};//declare esse novo vetor; você pode fazer um laço variando de 0 até 300 e calcular y da seguinte maneira: y[i/2]+=x[i]; Cada elemento do vetor y será a soma de dois elementos seguidos de x. Não sei se é isso que procurava. Não entendi parte do [1,-1]? -
C++ Reescrever uma única linha de um .txt
Flávio Pedroza respondeu ao tópico de Vinicius Antony em C/C#/C++
A única maneiro que conheço e ler linha por linha do arquivo e ir gravando as linhas igualmente, exceto aquela linha que quer alterar, em outro arquivo .txt. Este outro arquivo terá o mesmo conteúdo do anterior, excetuando a alteração. Apague o arquivo original e renomeie o arquivo novo para o mesmo nome do antigo. Também é possível ler totalmente o arquivo na memória, alterar a linha e depois reescrever o arquivo original, eliminando a necessidade de outro arquivo temporário. O ideal, para o seu caso, seria um banco de dados. -
Seguinte, eu tinha uma GTX 660 2gb é ela funcionava normalmente no meu monitor
Flávio Pedroza respondeu ao tópico de Kwashy em Placas de vídeo
Tem certeza que seu monitor suporta? HD a resolução máxima e 1280 x 720 -
#include <stdio.h> int main(){ int n, cont, soma, aux, i; scanf("%d", &n); aux = 0; for(i=1; i<n; i++) { if (n%i==0) { aux += i; } } if (aux == n) { printf("NUMERO PERFEITO"); } }
-
C Retornar ao scanf e nao precisar comecar do inicio
Flávio Pedroza respondeu ao tópico de Mayrinck Bernardo em C/C#/C++
#include <stdio.h> int main(){ int valor1,valor2,valor3,valor4,valor5,valor6,valor7; printf ("digite o valor1\n"); scanf("%d",&valor1); scanf2: printf ("digite o valor2\n"); scanf("%d",&valor2); if (valor2==valor1){ printf("valor repetido insira novamente\n"); goto scanf2; } scanf3: printf ("digite o valor3\n"); scanf("%d",&valor3); if (valor3==valor2){ printf("valor repetido insira novamente\n"); goto scanf3; } ou #include <stdio.h> int main(){ int valor1,valor2,valor3,valor4,valor5,valor6,valor7; printf ("digite o valor1\n"); scanf("%d",&valor1); do { printf ("digite o valor2\n"); scanf("%d",&valor2); if (valor2==valor1) printf("valor repetido insira novamente\n"); } while (valor2==valor1); do { printf ("digite o valor3\n"); scanf("%d",&valor3); if (valor3==valor2) printf("valor repetido insira novamente\n"); }while (valor2 == valor3); } -
C# como rodar o codigo e fazer o programa
Flávio Pedroza respondeu ao tópico de Mayrinck Bernardo em C/C#/C++
Em um desses arquivos vai ter um método com o nome de Main. Algo assim: using System; class HelloWorld { static void Main() { Console.WriteLine("Hello World"); } } Este é o arquivo que deve ser executado. Os demais, coloque na mesma pasta. Adicione os arquivos ao projeto (no visual studio é [Add] - > [Existing Item...], ou algo assim. Não sei como é nessa IDE em particular): Edit: você pode abrir o .cs no notepad ou na própria IDE. -
Corrigi algumas coisas no seu código. Não está 100%, mas é uma base para você continuar: #include <stdio.h> #include <stdlib.h> #include <string.h> main(){ char palavra [21]; char lacuna [21]="--------------------"; char letra; char erros [21]; char tam; int vidas = 5; int retorna; int pontos = 0; int cont; int cont2 = 0; printf("Digite uma palavra para o joguinho: "); scanf("%s", palavra); system("cls"); getchar(); tam = strlen(palavra); while (vidas > 0){ retorna = 0; printf("\n%s\n", lacuna); printf("Digite uma letra: \n"); letra = getchar(); getchar(); erros[cont2]=letra; erros[cont2+1]='\0'; printf("Letra digitada %s\n", erros); cont2++; for(cont = 0; cont<tam; cont++) { if( letra == palavra[cont]){ lacuna[cont] = palavra[cont]; retorna++; pontos++; } } if(pontos == tam){ printf("\nVoce acertou a palavra, muito bem!!!!!!!"); break; } if(vidas == 0){ printf("voce perdeu a palavra era %s", palavra); break; } if(retorna == 0){ printf("\nvoce errou uma letra restam %d vidas", vidas); vidas--; } else{ printf("\nVoce acertou uma letra, continue assim!!!!"); } } return 0; } Falta algumas coisas, como impedir que o usuário digite a mesma letra mais de uma vez e deixar as lacunas com o mesmo tamanho da palavra. Seria bom também você sortear a palavra de um conjunto, para que quem estiver jogando não saiba a palavra.
-
C++ Por que ocorre este erro ao compilar?
Flávio Pedroza respondeu ao tópico de Bleszerd em C/C#/C++
"letra" é um array (de um só elemento, mas ainda assim uma matriz). while(true) { cout << "\nDigite uma letra: "; cin >> letra[0]; for(int i = 0; i < letras; i++) { if(letra[0] == palavraSecreta[i]) //O ERRO ESTÁ(VA) NESSA LINHA! { tabuleiro[i] = letra[0]; } } } Alternativamente você pode alterar a declaração da variável "letra", já que não há muito sentido em declarar um array com um só elemento: char palavraSecreta[30], tabuleiro[30], letra; (...) while(true) { cout << "\nDigite uma letra: "; cin >> letra; for(int i = 0; i < letras; i++) { if(letra == palavraSecreta[i]) //O ERRO ESTÁ(VA) NESSA LINHA! { tabuleiro[i] = letra; } } } -
C Arduino usando C, problemas no SETUP()
Flávio Pedroza respondeu ao tópico de Pablo Terra em C/C#/C++
Poste o código que já fez. -
Primeiramente, escreva os passos, como você imagina que seria o processo. Quebre em passos sequenciais. Exemplo Passo 1: Cliente escolhe filme e horário Passo 2: Caixa informar se há lugares vagos e quais posições; Passo 3: Cliente escolhe os assentos. Passo 4:...
-
Nesse seu código, o tamanho do arquivo e do nome devem ter no máximo 9 caracteres. você está respeitando esse limite?
-
C Alguém pode me explicas lista encadeada simples ?
Flávio Pedroza respondeu ao tópico de Guilgb em C/C#/C++
você primeiramente cria o nó de início da lista. Seguindo o exemplo que dei, chamarei o nó de início de terreo. você também pode armazenar o nó final - o último elemento da lista, que chamarei de cobertura. struct andar { int no_andar; andar *escada;//aponta para o proximo andar - ligacao entre um andar e outro }; andar* terreo = (andar *)malloc(sizeof(andar)); andar* cobertura = terreo; //no início a lista só terah um andar, deste modo o fim e inicio (terreo e cobertura) serao iguais. terreo->no_andar = 0; terreo->escada = NULL; //o predio nao tem escadas inicialmente E então vá adicionando os elementos. Por exemplo, para adicionar 05 elementos novos: //adiciona 05 andares for (int i =1; i <= 5; i++) { andar *novo = (andar *)malloc(sizeof(andar)); //cria um novo andar novo->no_andar = i; novo->escada = NULL; //como este sera o ultio andar, a escada nao aponta para lugar nenhum cobertura->escada = novo; //liga o novo ultimo ao anterior antraves da escada cobertura = novo; //o ultimo andar passa a ser este novo andar criado } Para varrer a lista e imprimir todos os andares, começo do terreo: andar* atual = terreo; //andar atual: terreo while (atual != NULL) //enquanto houver andares no prédio { printf("Andar no: %d\n", atual->no_andar); atual = atual->escada; //"sobe" a escada e vai para o proximo andar } Veja se entende esses conceitos mais básicos. -
C Alguém pode me explicas lista encadeada simples ?
Flávio Pedroza respondeu ao tópico de Guilgb em C/C#/C++
você pode imaginar uma lista encadeada simples como uma corrente. Cada nó/elemento da lista (ou elo da corrente) está ligado ao próximo e apenas a ele. Essa ligação é realizada através de um campo que aponta para o próximo elemento da lista. você pode percorrer a lista apenas em um sentido, do começo para o fim. Se quiser, por exemplo, acessar o último elemento, terá que percorrer toda lista. Eu exemplo seria um edifício, em que não fosse possível descer, apenas subir. Os andares seriam elementos e as escadas os campos que apontam para o próximo elemento, ou, no caso, o próximo andar. Para ir para o quinto andar, começo do térreo (primeiro elemento da lista) e percorro o primeiro, segundo, etc. andares até chegar o quinto. Não existe escadas ligando o primeiro e quinto diretamente. Cada lance escada liga um andar apenas ao próximo. Em c seria assim: struct andar { int no_andar; andar *escada;//aponta para o proximo andar - ligacao entre um andar e outro }; Espero ter ajudado. -
C Lista de Exercicio da faculdade - Dificuldade
Flávio Pedroza respondeu ao tópico de Fabrizzio Farias Montanes em C/C#/C++
Faça um laço, com "i" variando de 2 a 50. A cada interação, você adiciona a uma variável "soma" o valor 1/i. Depois é só dividir a "soma" por 49 e terá a média. -
Tente usar apenas c++, verá que será mais simples: #include <iostream> #include <fstream> using namespace std; typedef struct { int matri,idade; string nome,sexo; float media; }ficha; ficha aluno[50]; int i=0; float mediaS; float av1,av2,av3; int idade; void Add(){ char a; int matricula; system ("cls"); cout<< "UNICARIOCA - BANCO DE DADOS"<<endl; if (i<50){ cout<<"ADICIONAR USUARIO"<<endl; cout<<"Matricula (APENAS NUMEROS): "; cin>>aluno[i].matri; cout<<"Nome: "; getline(cin, aluno[i].nome); cout<<"Idade: ";cin>>aluno[i].idade; cout<<"Sexo: "; cin>>aluno[i].sexo; i++; } } void Salvar(){ string arquivo; system ("cls"); cout<<"Matricula: "<<aluno[i].matri<<endl; cout<<"UNICARIOCA - BANCO DE DADOS"<<endl; cout<<"SALVAR/CARREGAR ARQUIVO"<<endl; cout<<endl<<"Nome do Arquivo Externo: "; cin>>arquivo; ofstream arq(arquivo+".txt"); if (arq.is_open()) for (int j=0;j<i;j++){ arq << "Matricula = " << aluno[i].matri << endl; arq << "Nome = " << aluno[i].nome << endl; arq << "Idade = " << aluno[i].idade << endl; arq << "Media = " << aluno[i].media << endl; arq << "--------------------\n"; } arq.close(); }
-
C ponteiro com funcao concatena vetor
Flávio Pedroza respondeu ao tópico de João Victor Souza Carli em C/C#/C++
void concatena(int *p, int *q, int n) { int r[2*n]; int i; int *t; // sendo n o tamanho do vetor for(i=0; i<n; i++) { r[2*i] = p[i]; // r[2*i+1] = q[i]; } t = r; printf("\n O vetor concatenado: [ "); for(i=0; i<2*n; i++) { printf("%d", t[i]); } printf("]"); } void concatena(int p[], int q[], int n) { int *r = (int *)malloc(sizeof(int)*2*n); int i; int *t; // sendo n o tamanho do vetor for(i=0; i<n; i++) { r[2*i] = p[i]; // r[2*i+1] = q[i]; } t = r; printf("\n O vetor concatenado: [ "); for(i=0; i<2*n; i++) { printf("%d", t[i]); } printf("]"); free(r); } main() { int u[5] = {1, -2, 3, 5, 6}; int v[5] = {0, -8, 4, 7, 9}; int *p = u; int *q = v; concatena(p, q, sizeof(u)/sizeof(u[0]));//calcula o tamanho do array } -
C Encontre os pares de números amigos de 1 a 1.000
Flávio Pedroza respondeu ao tópico de JadielHenrique em C/C#/C++
Não entendi a sua lógica, mas reescrevi seu código e acho que está funcionando: #include <stdio.h> int main () { int n, divisor, r, soma1, soma2; for (n = 2; n <= 1000; n++) { soma1 = 1; for (divisor = 2; divisor <= n/2; divisor++) { if (n % divisor == 0) soma1+=divisor; //calcula a soma dos divisores } soma2 = 1; if (soma1 != n) for (divisor = 2; divisor <= soma1/2; divisor++) { if (soma1 % divisor == 0) soma2+=divisor; //calcula a soma dos divisores } if (soma2 == n) //verificar se a soma dos divisores eh igual ao numero { printf("\%d e %d sao amigos\n",n, soma1); } } return 0; } O único problema é que a solução é impressa duas vezes, mas deixo isso pra você consentar... -
C++ Pegar certo valor de um loop que repete numeros
Flávio Pedroza respondeu ao tópico de cgm2k7 em C/C#/C++
Use uma "flag" int flag = 0; //declarar no escopo adequado if (currentFrame == 9){ currentFrame = 0; flag = 0; // Qaundo o 'currentFrame == 1', execute uma ação somente uma vez // Neste loop o 1 é repetido 4 vezes, preciso que execute a ação somente no primeiro 1 }else{ if ((!flag) && (currentFrame ==1)) { //faça o que tem de fazer flag = 1; //vai impedir de executar novamente } if (slow == 4){ currentFrame++; slow = 0; } slow++ } -
qual controle escolher para PC?
Flávio Pedroza respondeu ao tópico de maraujo em Teclados, mouses e controles para jogos
Sei que está acima do seu orçamento, mas recomendo fortemente um controle do xbox one s (o que tem Bluetooth). Funciona com TODOS os jogos plug and play. Se tiver adaptador Bluetooth, funciona sem fio. Tem que ter windows 10. -
Recomendação de nobreak com autonomia de 1h para pequeno servidor P4
Flávio Pedroza respondeu ao tópico de Joao.C.Jr em Fontes e energia
Só o PC ou vai alimentar mais algo? Monitor? -
R9 270X rodar numa placa-mãe H110M-HG4
Flávio Pedroza respondeu ao tópico de MatheusGomes22 em Placas-mãe
Não sei dizer...talvez uma de 500W seja suficiente. Provavelmente não, a fonte não tem conectores suficientes para alimentar a placa de vídeo. Tem somente 1 conector PCI-E de 4 pinos, sendo que são necessários 2 de 6 pinos. Se fosse usar os adaptadores, teriam que ter 4 conectores molex, e a fonte só tem 2. Enfim, a fonte não foi projetada para alimentar esse tipo de GPU.
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