-
Posts
25 -
Cadastrado em
Reputação
1-
Comprei um water cooler da XPG nessa black, um water cooler xpg levante 360mm, mas encontrei pouquíssimos reviews na internet, principalmente brasileiros. Gostaria de saber se alguém aqui já teve ou tem algum water da XPG, se vale a pena e se tem problema de vazamentos. Outro problema, alguém aqui já precisou acionar o RMA da XPG ? se sim, poderia dar um feedback? ouvi algumas pessoas falando que a XPG não tem suporte no Brasil.
-
Boa tarde, Gostaria de saber o que são exatamente esses comandos a baixo, e se são de alguma forma maliciosos para o PC, em teoria servem para ativar o Windows. cscript slmgr.vbs /ipk "cole o serial de acordo com o produto que você está usando" cscript slmgr.vbs /skms <link> cscript slmgr.vbs /ato
-
@Paulo Brandão Joga algum jogo pesado e vê se os 2 fans funcionam. Se funcionar então esta normal ue. kk
-
Upgrade Custo Beneficio p/ Jogos. Cyberpunk2077...Placa de Video
MarkZ029 respondeu ao tópico de Guilherme D.P em Placas de vídeo
@Guilherme D.P Olha amigo, com esse setup ai você n roda cyberpunk de uma forma legal não, vai rodar com tudo no mínimo a 30/40fps... Tem q colocar mais 1 pente de 8, pegar uma 1660(Se possível, mesmo que seminova ou usada, se estiver bem conservada)... e se der colocar um SSD, já que isso virou requisito mínimo para qualquer PC atual. -
@L. Ribeiro A onde você viu esse preço? Porque a mais barata que eu achei foi na Kabum por 2k https://www.kabum.com.br/produto/106897/placa-de-video-galax-nvidia-geforce-gtx-1660-super-1-click-oc-6gb-gddr6-60srl7dsy91s?gclid=Cj0KCQiAh4j-BRCsARIsAGeV12ARMB6WoDG2iIh5-Fad0LxfRKs_l2eoISlClkVo_kmfgUrxxntNA2waAsPJEALw_wcB
-
@L. Ribeiro Cara, mais uma coisa, não sei se você vai conseguir me falar, se não souber não tem problema. Mas acha que conseguiria vender a GTX 1660 por 1.7k + ou - ?
-
@L. Ribeiro e porque essa fonte eu comprei com o pc ano passado, para diminuir o custo dele peguei uma fonte um pouco mais fraca do que uma corsair por exemplo kk. Outra coisa, acha que consigo vender essa GTX 1660 por mais de 1.7k? vi que o preço dela subiu muito nesses últimos meses.
-
@L. Ribeiro beleza, mas a fonte aguenta suave essa placa? ou será q vai ser necessário fazer upgrade? Porque apesar da minha fonte não ser uma fonte muito conhecida, acredito que ela seja boa, por ser 500 e possuir selo 80 plus bronze.
-
Estou com uma duvida, vale a pena trocar a 1660 6GB que eu tenho por uma 2070 super? O modelo no caso que eu vou pegar é esse: https://www.kabum.com.br/produto/125429/placa-de-video-galax-nvidia-geforce-rtx-2070-super-1-click-oc-8gb-gddr6-27isl6md441c , consegui pegar na promoção por 3k, vale a pena a troca? Porque as RTX 3080 o desempenho é realmente muito maior, porém o preço vai vir a cima de 5k provavelmente, isso em todas as versões da serie 30, e eu gostaria de pegar uma RTX pra jogar com o RAY TRACING. Config do meu PC: Ryzen 5 3600 16GB RAM M2VE 250 HD 1 TB Fonte GM500 placa-mãe b450m(Se não me engano) Placa de vídeo 1660 6GB.
-
Outro Questão de Memoria virtual paginada
MarkZ029 respondeu ao tópico de MarkZ029 em Programação - outros
@Vinimota Muito Obrigado pela resposta ViniMota do 3S. - Vamos que uma hora da certo -
Boa noite pessoal, alguém conseguira resolver essa questão, ou me ajudar a resolver ela? Desde já agradeço a colaboração. O sistema operacional utilizado no ROBO suporta uma memória virtual paginada que consiste em três molduras (frames ou espaço de endereçamento real) de página (MP0, MP1 e MP2), sendo que cada página nessas molduras possui um de tamanho 100 bytes (10x10). Imagine que, neste sistema, a paginação executa um processo que manipula um certo vetor bidimensional do tipo NPR chamado A: byte A[][] = new byte[100][100]. Este vetor contém todas as diretrizes básicas de operação do robô (leis, modos de operação etc.). Quando este vetor é carregado na memória, o valor A[0][0] é armazenado no endereço relativo 0, o valor A[0][1] é armazenado no endereço relativo 1 e assim sucessivamente. Assumindo-se que o processo que manipula este vetor bidimensional já esteja carregado na moldura (page frame) de página MP0 e que as outras duas molduras de página estejam vazias, utilizando-se a política de busca de páginas sob demanda, quantas faltas de página irão ocorrer para execução das seguintes formas de iniciação deste vetor bidimensional (justifique a resposta): for (int i = 0; i < 100; i++) for (int j = 0; j < 100; j++) A[i][j] = 0;
-
Oracle Como chamar a função para consultar o CPF valido ou não em pl/sql
MarkZ029 postou um tópico em Web e banco de dados
pessoal, eu tenho esse código aqui, precisaria de ajuda para chamar a função e validar se o cpf do cliente é valido ou não. create or replace function valida_cpf_cnpj(v_cpf_cnpj varchar2) return boolean is /* função para validar cpf/cnpj */ type array_dv is varray(2) of pls_integer; v_array_dv array_dv := array_dv(0, 0); cpf_digit constant pls_integer := 11; cnpj_digit constant pls_integer := 14; is_cpf boolean; is_cnpj boolean; v_cpf_number varchar2(20); total number := 0; coeficiente number := 0; dv1 number := 0; dv2 number := 0; digito number := 0; j integer; i integer; begin if v_cpf_cnpj is null then return false; end if; /* retira os caracteres não numéricos do cpf/cnpj caso seja enviado para validação um valor com a máscara. */ v_cpf_number := regexp_replace(v_cpf_cnpj, '[^0-9]'); /* verifica se o valor passado é um cpf através do número de dígitos informados. cpf = 11 */ is_cpf := (length(v_cpf_number) = cpf_digit); /* verifica se o valor passado é um cnpj através do número de dígitos informados. cnpj = 14 */ is_cnpj := (length(v_cpf_number) = cnpj_digit); if (is_cpf or is_cnpj) then total := 0; else return false; end if; /* armazena os valores de dígitos informados para posterior comparação com os dígitos verificadores calculados. */ dv1 := to_number(substr(v_cpf_number, length(v_cpf_number) - 1, 1)); dv2 := to_number(substr(v_cpf_number, length(v_cpf_number), 1)); v_array_dv(1) := 0; v_array_dv(2) := 0; /* laço para cálculo dos dígitos verificadores. é utilizado módulo 11 conforme norma da receita federal. */ for j in 1 .. 2 loop total := 0; coeficiente := 2; for i in reverse 1 .. ((length(v_cpf_number) - 3) + j) loop digito := to_number(substr(v_cpf_number, i, 1)); total := total + (digito * coeficiente); coeficiente := coeficiente + 1; if (coeficiente > 9) and is_cnpj then coeficiente := 2; end if; end loop; --for i v_array_dv(j) := 11 - mod(total, 11); if (v_array_dv(j) >= 10) then v_array_dv(j) := 0; end if; end loop; --for j in 1..2 /* compara os dígitos calculados com os informados para informar resultado. */ return(dv1 = v_array_dv(1)) and(dv2 = v_array_dv(2)); end valida_cpf_cnpj; lembrando que esse código está sendo desenvolvido em pl/sql oracle. -
Oracle Desenvolvimento de validador de CPF,RG e Titulo de eleitor
MarkZ029 respondeu ao tópico de MarkZ029 em Web e banco de dados
@joseph_dev Acredito que não precisaria de interface... Não é um projeto escolar, eu que estou interessado em descobrir como funciona, caso consiga me demonstrar seria mais pratico. O de CPF eu acredito que tenha conseguido fazer, mas de titulo de eleitor e RG não. E sobre validação e para verificar se o CPF,RG e Titulo de eleitor estão corretos, se o o numero realmente existe ou se é falso, ele não precisa identificar se o numero é valido ou não, porque a pessoa sempre vai colocar os 11 números, o importante e validar se é falso ou não. -
Oracle Desenvolvimento de validador de CPF,RG e Titulo de eleitor
MarkZ029 postou um tópico em Web e banco de dados
Boa noite pessoal do fórum, preciso de auxilio para desenvolver um validador de CPF,RG e Titulo de eleitor em Oracle banco de dados. Alguém consegue me auxiliar ou mandar um tutorial disso ou algo similar? (Seria basicamente criar um bloco nomeado PL/SQL Oracle que irá solicitar para o usuário o número do CPF, RG e TITULO DE ELEITOR e informar se é valido ou não.) -
Javascript Colisão em html usando canvas
MarkZ029 respondeu ao tópico de MarkZ029 em Web e banco de dados
Então, mas eu não sei aonde eu coloco isso, porque coloquei o código da parte do script inteiro ai dentro e deu erro e o jogo nem funcionou... Eu coloquei marcações no código pra ficar mais fácil de entender ele, se puder dar uma olhada.. (Meu problema e na parte aonde esta escrito "aqui era para ser feito a colisão", eu escrevi aquele bloco.x... etc, mas n sei se esta certo e é ai que esta o problema... o restante eu não marquei com anotação porque não e relevante, e so para o jogo funcionar. <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title>JOGO</title> <style> canvas { position: absolute; top: 0px; bottom: 0px; left: 0px; right: 0px; margin: auto; } </style> </head> <body> <script> var canvas, ctx, ALTURA, LARGURA, frames = 0, maxTiros = 5, _obsimg = new Image(), velocidade = 6, estadoAtual, pontos = 0, //estados do jogo estados = { jogar: 0, jogando: 1, perdeu: 2, }, //quadrado que o jogador controla bloco = { x: 275, y: 500, altura: 50, largura: 50, cor: "#ff4e4e", gravidade: 0.25, velocidade: 0, qntTiros: 0, //desenha o quadrado desenha: function() { ctx.fillStyle = this.cor; ctx.fillRect(this.x, this.y, this.largura, this.altura); }, //quadrado atira(ainda nao funciona) atira: function() { if(this.qntTiros < maxTiros){ this.qntTiros++; }; } }; //obstaculos gerados aleatoriamente obstaculos = { _obs: [], tempo: 0, largura: 43, altura: 35, //adiciona um objeto com x aleatorio no vetor insere: function(){ this._obs.push({ y: 0, x: Math.floor(Math.random() * 550), }); this.tempo = 30 + Math.floor(10 * Math.random()); }, //controla o tempo de spawn do objeto atualiza: function(){ if(this.tempo == 0){ this.insere(); }else this.tempo--; //controle do vetor para controlar os objetos for(var i = 0, tam = this._obs.length; i < tam; i++){ var obs = this._obs[i]; obs.y += velocidade; //aqui era para ser feita a detecção da colisao if(bloco.x < obs.x - obs.largura){ //quando o jogador colidir com o objeto era para somar +1 ate o total de 6, //quando fosse 6 ele mudaram o estado atual para perdeu e assim iria terminar o jogo, //porém não sei como faço para o jogador colidir com o objeto estados.jogando++; pontos++; alert('bateu'); estados.jogando(); if(estados.jogando == 6){ estadoAtual = estados.perdeu; } //aqui e feita a remoção do objeto do vetor quando passa da area maxima do canvas }else if(obs.y >= 600 ){ this._obs.splice(i, 1); tam--; i--; } } }, limpa: function(){ this._obs = []; }, desenha: function(){ for(var i = 0, tam = this._obs.length; i < tam; i++){ var obs = this._obs[i]; _obsimg.src = "obstaculo.png"; ctx.drawImage(_obsimg, obs.x, obs.y); } }, }; function clique(event) { if(estadoAtual == estados.jogando){ } else if(estadoAtual == estados.jogar){ estadoAtual = estados.jogando; } else if(estadoAtual == estados.perdeu){ estadoAtual = estados.jogar; } } function main() { ALTURA = window.innerHeight; LARGURA = window.innerWidth; if (LARGURA >= 500) { LARGURA = 600; ALTURA = 600; } canvas = document.createElement("canvas"); canvas.width = LARGURA; canvas.height = ALTURA; canvas.style.border = "1px solid #000"; ctx = canvas.getContext("2d"); document.body.appendChild(canvas); document.addEventListener("mousedown", clique); estadoAtual = estados.jogar; roda(); } function roda() { atualiza(); desenha(); window.requestAnimationFrame(roda); } function atualiza() { frames++; if(estadoAtual == estados.jogando){ obstaculos.atualiza(); }else if(estadoAtual == estados.perdeu){ obstaculos.limpa(); } } function desenha() { ctx.fillStyle = "#50beff"; ctx.fillRect(0, 0, LARGURA, ALTURA); if(estadoAtual == estados.jogar){ ctx.fillStyle = "green"; ctx.fillRect(LARGURA / 2 - 50, ALTURA / 2 - 50, 100, 100); } else if(estadoAtual == estados.perdeu){ ctx.fillStyle = "red"; ctx.fillRect(LARGURA / 2 - 50, ALTURA / 2 - 50, 100, 100); } else if(estadoAtual == estados.jogando){ obstaculos.desenha(); } if(bloco.x >= -5 && bloco.x <= 555 && bloco.y >= 0 && bloco.y <= 550){ bloco.desenha(); }else alert('aqui'); } window.onkeydown = pressionaTecla; function pressionaTecla(tecla){ if(tecla.keyCode == 39 ) { bloco.x = bloco.x + 10; } if(tecla.keyCode == 37 ) { bloco.x = bloco.x - 10; } if(tecla.keyCode == 40 ) { bloco.y = bloco.y + 10; } if(tecla.keyCode == 38 ) { bloco.y = bloco.y - 10; } if(tecla.keyCode == 32 ) { bloco.atira(); } } main(); </script> </body> </html>
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