![](https://www.clubedohardware.com.br/uploads/themes/set_resources_52/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
Lchinu
-
Posts
19 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por Lchinu
-
-
Alguém pode me explicar como esse código funciona?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct funcionario{
char nome[100];
float salario;
int data[3];
char departamento[100];
};
struct funcionario funcionarios[1000];
int quantFunc;
char linha[100];
void printaFunc(struct funcionario func){
printf("%s\n",func.nome);
printf("%.2f\n",func.salario);
if(func.data[0] < 10){
printf("0%d/",func.data[0]);
}else{
printf("%d/",func.data[0]);
}
if(func.data[1] < 10){
printf("0%d/",func.data[1]);
}else{
printf("%d/",func.data[1]);
}
printf("%d\n",func.data[2]);
printf("%s\n",func.departamento);
}
void coletaDados(char in[100]){
FILE *arquivo;
arquivo = fopen(in, "r");
fscanf(arquivo,"%d",&quantFunc);
for(int i = 0; i < quantFunc; i++){
fseek(arquivo, 1, SEEK_CUR); //mudar o offset pra 2
fscanf(arquivo,"%[^\n]%*c",funcionarios[i].nome);
fscanf(arquivo,"%f",&funcionarios[i].salario);
fscanf(arquivo,"%d/%d/%d",&funcionarios[i].data[0],&funcionarios[i].data[1],&funcionarios[i].data[2]);
fscanf(arquivo,"%s",funcionarios[i].departamento);
}
fclose(arquivo);
}
void ordenaNome(){
struct funcionario x; struct funcionario aux;
int j;
for(int i = 1; i < quantFunc; i++){
x = funcionarios[i]; j = i-1;
while(strcmp(x.nome, funcionarios[j].nome) < 0){
aux = funcionarios[j];
funcionarios[j] = x;
funcionarios[j+1] = aux;
j--;
}
}
}
void exporta(char out[100]){
FILE *arquivo;
arquivo = fopen(out, "w");
for(int i = 0; i < quantFunc; i++){
fprintf(arquivo, "%s\n",funcionarios[i].nome);
fprintf(arquivo, "%.2f\n",funcionarios[i].salario);
if(funcionarios[i].data[0] < 10){fprintf(arquivo,"0%d/",funcionarios[i].data[0]);}
else{fprintf(arquivo,"%d/",funcionarios[i].data[0]);}
if(funcionarios[i].data[1] < 10){fprintf(arquivo,"0%d/",funcionarios[i].data[1]);}
else{fprintf(arquivo,"%d/",funcionarios[i].data[1]);}
fprintf(arquivo,"%d\n",funcionarios[i].data[2]);
fprintf(arquivo, "%s\n",funcionarios[i].departamento);
}
fclose(arquivo);
}
void listarD(char dep[50]){
for(int i = 0; i < quantFunc; i++){
if(strcmp(funcionarios[i].departamento,dep) == 0){
printaFunc(funcionarios[i]);
}
}
}
int antigoData(int d1[3], int d2[3]){
if(d1[2] < d2[2]){return 1;}
else if(d1[2] > d2[2]){return 0;}
if(d1[1] < d2[1]){return 1;}
else if(d1[1] > d2[1]){return 0;}
if(d1[0] < d2[0]){return 1;}
return 0;
}
void maisAntigo(){
struct funcionario antigo;
antigo = funcionarios[0];
for(int i = 1; i < quantFunc; i++){
if(antigoData(funcionarios[i].data, antigo.data)){
antigo = funcionarios[i];
}
}
printaFunc(antigo);
}
void maisAntigoD(char dep[100]){
struct funcionario antigo;
antigo.data[0] = 99; antigo.data[1] = 99; antigo.data[2] = 9999;
for(int i = 0; i < quantFunc; i++){
if(antigoData(funcionarios[i].data, antigo.data) && (strcmp(funcionarios[i].departamento,dep) == 0)){
antigo = funcionarios[i];
}
}
printaFunc(antigo);
}
void media(){
double media = 0;
for(int i = 0; i < quantFunc; i++){
media += funcionarios[i].salario;
}
printf("%.2lf",media/quantFunc);
}
void mediaD(char dep[100]){
double media = 0;
int cont = 0;
for(int i = 0; i < quantFunc; i++){
if(strcmp(funcionarios[i].departamento, dep) == 0){
media += funcionarios[i].salario; cont++;
}
}
printf("%.2lf",media/cont);
}
void main(int argc, char *argv[]){
coletaDados(argv[1]);
ordenaNome();
if (strcmp(argv[2],"1") == 0){exporta(argv[3]);}
else if (strcmp(argv[2],"2") == 0){listarD(argv[3]);}
else if (strcmp(argv[2],"3") == 0){maisAntigo();}
else if (strcmp(argv[2],"4") == 0){maisAntigoD(argv[3]);}
else if (strcmp(argv[2],"5") == 0){media();}
else if (strcmp(argv[2],"6") == 0){mediaD(argv[3]);}
}
-
1
-
-
Em 29/06/2021 às 19:00, devair1010 disse:
@Lchinu creio que voce saiba que para preencher uma matriz com as letras b e x , voce vai precisar que essa matriz seja uma variavel do tipo char , e que pode ser criada e preenchida ao mesmo tempo , bastando que voce coloque esse caracteres entre chaves .
e voce vai precisar usar muitas funcoes , entao va fazendo aos poucos e pode ir postando qualquer duvida , e ajudaremos a corrigir .
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
int l, c, linha, coluna;
scanf("%d", &l);
char mat[l][l];
for(linha = 0; linha < l; linha++){
for(coluna = 0; coluna < l; coluna++){
scanf(" %s", &mat [linha][coluna]);
}
}
for(linha = 0; linha < l; linha++){
for(coluna = 0; coluna < l; coluna++)
printf("%c", mat [linha] [coluna]);
printf("\n");
}
return 0;
}
Cara, estou desde às 23:00 e consegui chegar nisso. Problemas:
Não estou conseguindo atribuir l = c.
Não faço a mínima ideia de como ler coordenadas que o usuário me der.
-
1
-
-
Opa, muito obrigado pela mensagem.
Minha situação está muito complicada, como eu faria para o usuário poder digitar os termos da matriz?
Tipo, defini-la e dar os valores da linha e coluna beleza. To travando quando é necessário digitar os b e x.
-
1
-
-
Preciso fazer um campo minado em C com algumas características especiais e eu realmente não sei como fazer. Se alguém puder me ajudar eu agradeço muito.
Segue as características do programa:
O programa inicialmente deve ler as entradas contendo informações sobre o jogo e detalhes de cada jogada do jogador e imprimir um resultado na saída que indica se o jogador perdeu, ganhou ou não terminou o jogo.
Entrada: A entrada possui várias linhas, onde cada linha tem detalhes sobre o jogo.
1 • A primeira linha possui a quantidade de jogos realizados por um jogador (1 ≤ 10);
• A segunda linha indica o tamanho do tabuleiro, que sempre ´e uma matriz quadrada (2 ≤ 100);
• As linhas em seguida representam o conteúdo do tabuleiro, onde os valores são separados por um espaço em branco. O valor (b) representa uma mina e (x) indica um espaço vazio;
• Em seguida, é apresentado o número de jogadas que serão realizadas;
• Por fim, tem-se os valores referentes às pposições x e y de cada jogada;
-
1
-
-
agora, Wal SJC disse:
No seu lugar eu pegaria um com tela full hd, se esse já não for.
E, para Engenharia, talvez uma tela de 15" fosse melhor.
Perde um pouco na portabilidade, mas ganha um pouco na visualização de detalhes.
Esse já é Full HD
-
iae pessoal, esse notebookt ta valendo o preço? Isso é em franco suíço e com o desconto da 2500 (não vou pagar taxa, meu tio vai trazer para mim). Vou usar para cursar engenharia de controle e automação e só tenho vontade de jogar CS:GO. Aceito recomendações, dicas etc. i5 10210u, 8GB RAM 2666, 256GB de SSD.
-
1 hora atrás, Noann Selegar disse:
Cara, essa VGA é meio fraca. Pode até rodar, mas não vai ser uma experiência muito boa... Ta pagando quanto por ela? De repente consegue algo melhor...
To pagando 180,mas essa experiência você fala a uns 40 fps plms? Pa o pc do meu amigo roda a 40 e eu achei muito legal, o dele tem 3gb de ram e um 610
adicionado 0 minutos depois@Cássio Henrique Alvarenga obrigado cara, entrei
-
Iae pessoal, queria saber se essa config roda cs, eu não faço questão de jogar o jogo no ultra, apenas quero jogar o game, pode ser no low, mas que não trave. Aproveitando, ele roda minecraft, lol e paladins?
Processador : core 2 quad 8400
placa-mãe : Ipm 41 ddr3
Fonte : Seasonic 300w
Placa de vídeo : Gt 710 1gb
Memória ram : 4gb
Hd: 160gb
Deu 845 reais, não posso gastar muito mais que isso, mas se tiverem outras opções até 900 reais eu agradeço.
-
Galera, tô montando um pc novo, mas aqui em casa tinha um hd cheio de fotos e vídeos da minha mãe, eu vou comprar um HD novo, se eu deixar esse HD guardado corre risco dos arquivos serem corrompidos?
-
6 minutos atrás, RobertoGB disse:
@Lchinu LoL e minecraft eu tenho certeza, ja joguei num pc mais fraco que esse, mas eu não posso garantir CSGO.
Dá uma olhada e decida você mesmo:
https://www.youtube.com/watch?v=_OE2V1mFd4QEu vi cara, ele ficou a 60-90 fps gravando, mas ele tem um i3 né, deve que com o meu core 2 quad q8200 fica a uns 50-80? Isso pra eu já é mais que o suficiente cara, se pegar isso vou ficar feliz dms
-
1
-
-
1 minuto atrás, RobertoGB disse:
De acordo com os requisitos, roda, mas eu não se vai ser "de boa".
http://store.steampowered.com/app/730/CounterStrike_Global_Offensive/Mano, mas eu não posso gastar muito dinheiro, não tenho dinheiro pra isso, mas se eu colocar tudo no mínimo roda "de boa"? E o lol e minecraft? Roda "de Boa", e como falei, não ligo pra qualidade gráfica
-
1
-
-
agora, RobertoGB disse:
Todo CPU Intel não-entusiasta tem, caso do g4560.
Cara, mas com aql config eu consigo jogar cs de boa?
-
1
-
-
agora, Imakuni disse:
O processador já tem uma integrada, que diga-se de passagem, é melhor que a que você escolheu.
O pentium tem placa de vídeo integrada?
-
1
-
-
3 minutos atrás, Imakuni disse:
Vcê vai rodar mal e porcamente, além de ficar impossibilitado de upgrades. Com esse dinheiro, você poderia pegar:
- Pentium G4560
- Mobo H110
- 8gb DDR4
Dá mais ou menos o mesmo valor, ficaria só faltando fonte, HD e gabinete. Se puder jogar esse extra, vai valer muito a pena.
E a placa de vídeo? Pega plms 50 fps no mínimo o cs?
-
1
-
7 minutos atrás, Imakuni disse:
VOcê vai ter vários problemas com isso aí...
Diga, você já tem um PC, por pior que seja? Se sim, passe a config completa dele, por favor.
N tenho N mano, mas esse PC aí não roda cs go não? Meu amigo tem esse mesmo processador, uma gt 610 e 3gb de ram e roda velho
-
1
-
-
Pessoal, montei uma máquina o mais barato possível pra poder apenas jogar cs, minecraft e lol, segue as config
Processador : Intel core 2 quad q8200 2.8gHz
placa-mãe: chipset Intel g41 ddr3
Placa de vídeo: Nvidia geforce gt 710 2gb
Memória ram: 4gb ddr3
Fonte : knup 500w
Preço total : 853 reaisEu consigo jogar esses 3 games? Não me importo com resolução nem nada, se der pra jogar no low os 3 estou muito feliz, mas me falem em qual qualidade eu consigo jogar esses 3 e se é possível jogar algum outro jogo, esqueci de falar que o hd é de 250gb.
-
1
-
-
8 horas atrás, Evandro disse:
Que processador você vai usar?
Esta placa de vídeo é bem fraca, mais fraca que muitos chips integrados de processadores.
Na teoria é assim, na prática, não.
Vou usar um pentium g4560
adicionado 44 minutos depois8 horas atrás, Evandro disse:Que processador você vai usar?
Esta placa de vídeo é bem fraca, mais fraca que muitos chips integrados de processadores.
Na teoria é assim, na prática, não.
Cara, vou comprar uma gt 710 2gb, ela é melhor?
-
Eu queria saber se essa placa-mãe https://www.kabum.com.br/produto/91606/placa-mãe-asrock-p-intel-lga-1151-matx-h110m-dgs-r3-0-ddr4 é compatível com essa placa de vídeo https://www.submarino.com.br/produto/14845133/geforce-galax-gt-mainstream-nvidia-71ggh4hxj4fn-gt-710-1gb-ddr3-64bits-1600mhz-dvi-hdmi-vga?WT.srch=1&epar=bp_pl_00_go_g35172&epar=bp_pl_00_go_g35172&gclid=Cj0KCQjwqM3VBRCwARIsAKcekb17VAj9Sv9TduZfXF9_LKZUUZRL20bkke29IG5ZLGP3idlpfPua0ZUaAl5IEALw_wcB&opn=XMLGOOGLE&sellerId=4677682000122.
Agradeço desde já.
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
Oscilação de ping constante
em Redes e Internet
Postado
Rapaziada, meu notebook do nada começou a oscilar MUITO o ping. Eu já fiz de tudo, alterei dns e mexi em tudo quanto é config, ja até restaurei e NADA. Alguém me ajuda pelo amor.
C:\Users\lchin>ping br.leagueoflegends.com
Disparando e12817.dscj.akamaiedge.net [2600:1419:ac00:481::3211] com 32 bytes de dados:
Resposta de 2600:1419:ac00:481::3211: tempo=18ms
Resposta de 2600:1419:ac00:481::3211: tempo=12ms
Resposta de 2600:1419:ac00:481::3211: tempo=12ms
Resposta de 2600:1419:ac00:481::3211: tempo=196ms
Estatísticas do Ping para 2600:1419:ac00:481::3211:
Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de
perda),
Aproximar um número redondo de vezes em milissegundos:
Mínimo = 12ms, Máximo = 196ms, Média = 59ms
Dentro de jogo é impossível jogar