Ir ao conteúdo
  • Cadastre-se

Satanam

Membro Júnior
  • Posts

    7
  • Cadastrado em

  • Última visita

Reputação

1
  1. Seria bom você postar aquilo que já desenvolveu até então.
  2. R$ 1.000,00 é o preço de uma GTX 960 2GB à vista na maioria das lojas, às vezes um pouco menos. A GTX 970 4GB geralmente está uns R$ 1.500,00 pelo menos. Sei lá, eu sempre desconfio de preço muito baixo, e procuro opiniões e análises em vários lugares antes de comprar. Se você concluir que é seguro, comprar e der tudo certinho, vai ter feito um ótimo negócio mesmo. Posta aí o resultado depois da compra pra gente ver. Vou comprar uma também se você for de cobaia e der certo.
  3. Bom dia, Estou enfrentando alguns problemas pra resolver aqui e não acho solução alguma em vídeo-aulas ou textos. Sou iniciante nesse assunto, estou no segundo semestre da faculdade ainda e o professor não passa a matéria toda, ele explica o básico e deixa o resto pro pessoal se virar. Existem muitas aplicações diferentes, e eu estou me perdendo todo aqui. O programa que usamos é o Dev-C++. O desafio é o seguinte: criar um programa para uma biblioteca, armazenando os dados em três structs (livros, funcionários e empréstimos). Tudo isso deve ser armazenado em três arquivos diferentes. Algumas opções das 10 que estão no menu são: -Cadastrar um livro; -Alterar a situação de um livro; -Listar todos os livros; -Consultar a situação de um livro; -Sair do programa. Essas são as que eu estou trabalhando no momento, as outras 5 vou começar/terminar assim que executar essas sem qualquer erro, sendo que as outras são mais fáceis e algumas dependem das primeiras que citei aqui. Para cadastrar um livro, listar todos os livros e sair do programa, nenhuma dificuldade. O problema é quando tento consultar a situação de um livro apenas. A única solução que encontrei foi consultar o livro através do registro dele, mas o professor pede para consultar através do número do livro. Aqui está a função do código onde tento consultar um livro: void listaUmLivro(struct livros liv){ int main(); void listaUmLivro(struct livros liv); void sair(); int menu9=1; do{ int num; printf("\nDigite o numero do livro: "); scanf("%d",&num); system("cls"); fseek(arqLivro,num*sizeof(struct livros),SEEK_SET); fread(&liv,sizeof(struct livros),1,arqLivro); if(feof(arqLivro)){ printf("\nErro ao abrir o arquivo.\n"); getch(); } printf("Numero |Titulo do Livro |Situacao |\n"); printf("do Livro | | |\n"); printf("---------|----------------------|---------------|\n"); printf("%8d |%21s |%14c |\n", liv.numLivro, liv.titLivro, liv.sitLivro); printf("\n\nO que deseja fazer?"); printf("\n[1] VOLTAR PARA O MENU PRINCIPAL.\n[2] CONSULTAR OUTRO LIVRO.\n"); scanf("%d", &menu9); system("cls"); switch(menu9){ case 1: main(); break; case 2: listaUmLivro(liv); break; } }while(menu9);} Como faço para acessar o livro que eu quero através do seu número, e não do registro? Algumas observações sobre o código acima: 1. Eu sei que posso usar "menu" em todas as outras funções, mas eu faço como "menu 3", "menu9" etc. só para lembrar em qual opção do menu principal eu estou trabalhando. Sei que não influencia em nada; 2. O código pode estar feio e tal, mas como eu disse sou iniciante. A segunda dúvida: eu preciso trabalhar com três structs diferentes, como mencionei acima. O problema é essas structs usam algumas instruções iguais. Por exemplo: -A struct "livros" possui a variável (instrução) "numLivro", armazenando o número do livro (fornecido pelo usuário); -A struct "funcionários" possui a variável (instrução) "numFunc", armazenando o número do funcionário (fornecido pelo usuário); -A struct "emprestimos" usa duas variáveis (instruções) iguais as anteriores, "numLivro" e "numFunc", e armazenando os mesmos valores contidas nelas, só que dessa vez acessando apenas os livros emprestados e não todos os livros. Eu sei que essas instruções, embora tenham nomes iguais, não são as mesmas. Ou seja, para acessar a instrução "numLivro" da struct "livros", vou usar liv.numLivro, enquanto que para acessar a instrução "numLivro" da struct "emprestimos", vou usar empr.numLivro. "liv" é a variável de tipo "livros" e "empr" é a variável de tipo "emprestimos". Eu poderia usar instruções com nomes diferentes que daria na mesma, mas uso iguais apenas para ficar mais fácil a compreensão. Enfim, eu gostaria de saber, nesse caso, como faço para as duas instruções diferentes terem o mesmo conteúdo. Ou seja, empr.numLivro pegando o conteúdo de liv.numLivro, e empr.numFunc pegando o conteúdo de func.numFunc. "func" é outra variável, de tipo "funcionarios". Pra ficar mais claro: struct livros{ int numLivro; //numero do livro, para todos os livros cadastrados no sistema char titLivro[101]; //titulo do livro, idem char sitLivro[21]; //situacao do livro, idem}liv; struct funcionarios{ int numFunc; //numero do funcionario, para todos os funcionarios cadastrados no sistema char nomeFunc[101]; //nome do funcionario char emailFunc; //email do funcionario, opcional int telFunc; //telefone do funcionario, idem}func; struct emprestimos{ int numLivro; //numero do livro, apenas daqueles que foram emprestados int numFunc; //numero do funcionario, idem int dataEmpr; //data do emprestimo int dataDevo; //data da devolucao}empr; Ou seja, empr.numLivros deve pegar informações de liv.numLivros e empr.numFunc deve pegar informações de func.numFunc. Eu deveria fazer isso onde? Logo no início do programa? Não estou postando o código todo, pois o problema está nessas partes que citei acima. Outra coisa: eu estou criando os ponteiros para os arquivos logo no início do programa, abaixo das bibliotecas. Tem algo de errado nisso? O código abaixo, para entender o que eu quero dizer: //aqui as bibliotecas stdlib, stdio etc.FILE *arqLivro;char *nomeArqLivro=(char *)"livros.dat";FILE *arqFunc;char *nomeArqFunc=(char *)"funcionarios.dat";FILE *arqEmpr;char *nomeArqEmpr=(char *)"emprestimos.dat";//daqui em diante sao as structs que citei acima e o resto do programa Eu fiz isso para que eu possa alterar o nome dos arquivos num só lugar ao invés de alterar em cada função diferente. Só não sei se está certo colocar isso aí logo no início. Enfim, como eu disse o programa pode estar mal organizado, pois não sei muito sobre programação. Estive o tempo todo que o professor deu para desenvolver esse programa pesquisando nas fontes que ele mesmo passou, em outras fontes que encontrei na internet, tutoriais, video-aulas etc., mas não consegui encontrar a solução para esses detalhes. Peço desculpas pelo paredão de texto, e agradeço a qualquer ajuda que vier. EDIT: Outro problema: na hora de cadastrar, a instrução liv.sitLivro deve ser, por padrão, "LIVRE". Eu tenho fazer isso, mas aparece esse erro: "[Error] incompatible types in assignment of 'const char [6]' to 'int [21]'" Eu entendo que é sobre tipos de atribuições incompatíveis da "const char [6]", que seria o "LIVRE" para "int[21]". O que não entendo é que a instrução sitLivro está declarada como "char", e não "int". Creio que a maneira como eu quis inserir "LIVRE" esteja errada: liv.sitLivro="LIVRE"; Como seria o modo correto de fazer isso?
  4. É parecido, mas o meu é identificado como MG 3001. Ele aparece na própria tabela de características daquele tópico, mas não tem informação sobre alguns detalhes - por exemplo, eles não mencionam qual o tempo de resposta, máxima tensão de pico etc. Eu tinha lido seu review e me parece que a Margirius é uma boa fabricante para filtros de linha baratos. Pedi o da Clamper já, mas vai demorar uns dias pra chegar, e até lá gostaria de saber se esse filtro que estou usando vai fazer diferença ou se, pior, pode danificar meu PC.
  5. Muito obrigado pelo esclarecimento. Eu estou usando um filtro de linha da Margirius, o MG 3001. Foi o que encontrei por enquanto, acha que quebra o galho? Vou comprar o da Clamper, mas não encontrei nenhum aqui por perto e vou ter que pedir de outra cidade/estado. Tô tranquilo usando esse da MG enquanto o outro não chega?
  6. Boa noite, Eu gostaria de tirar duas dúvidas a respeito do meu PC. Segue abaixo minha configuração atual: -PSU CX430 com certificação 80 Bronze Plus; -Placa mãe GA-B75m-D3H; -CPU i5-2500; -2x RAM Kingston HyperX FURY 4GB 1600MHz; -Placa de vídeo PNY GTX 960 2GB 128-bit; -SSD Kingston 2.5 V300 SATA III 120 GB (para o OS - Windows 10); -HD Seagate SATA III 7200 RPM 1TB (para programas, jogos etc.). Isso, montado num gabinete da Cooler Master, o HAF 912 Plus, com 1x 200mm fan na frente e 1x 120mm fan como exaustor. Enfim, a primeira dúvida é se minha fonte é realmente suficiente para a minha configuração atual. No site da fabricante da placa de vídeo e na embalagem da mesma é dito que 430W é o mínimo recomendado, mas gostaria de saber do pessoal aqui do forum. De repente não é tão seguro como eu imagino, sei lá. Uso este PC pra jogar, assistir filmes e para trabalhos da faculdade, fica ligado um bom tempo. Sei que se eu for fazer um upgrade em questão de placa de vídeo vou precisar de uma fonte melhor, mas aí também vou precisar de um processador melhor pra acompanhar a placa de vídeo, o que vai me levar a ter que comprar outra placa mãe também. Minha dúvida é mesmo em relação à minha configuração atual apenas. A este PC, eu ligo um teclado e mouse basicões da Logitech, modelo K120, e um monitor da LG IPS 21,5" 1080p 60Hz. Esse monitor consome 24W (típico) pelo que a fabricante afirma no site e na embalagem. Então, esta é minha segunda dúvida: com isso tudo em consideração, qual a melhor opção para proteger o PC de surtos de tensão e queda de luz? Estou usando um no-break NHS Mini III de 600VA/300W, e estou começando a achar que eu não deveria usá-lo. Primeiro, que achei estranho ele ser de 300W, o vendedor falou que "a potência do nobreak é diferente da potência da fonte". Segundo, que muita gente fala que esses nobreaks não ajudam em nada contra surtos de tensão e que aliás podem prejudicar a fonte, e terceiro que mesmo os que defendem o uso de nobreak colocam os da NHS lá embaixo no quesito qualidade. Procurando por sugestões, me disseram que o melhor era usar um filtro de linha. Alguns recomendaram esse daqui: http://www.lojaclamper.com.br/index.php/iclamper-energia-5-branco-dps.html Mas na descrição é dito que, entre outros, os bens eletrônicos a serem protegidos por este filtro incluem "[...]geladeiras, freezers, computadores (sem conexão cabeada ou com conexão sem fio à Internet)[...]". Como assim? Bom, agradeço a todos pelo tempo de ler tudo isso e espero que alguém consiga tirar essas dúvidas de uma vez por todas. Abraço!
  7. Boa noite! Eu sou novo no fórum, mas creio que aqui é o sub-forum correto pra postar isso. Então, eu troquei algumas peças do meu PC recentemente, pois minha GTX 560 queimou, e uma das RAM também. O outro módulo RAM eu coloquei em outro PC, e comprei um novo da Kingston pra este aqui - vou comprar mais um semana que vem. Aqui está a configuração atual do meu PC: -Core i5-2500; -PNY GTX 960; -2x HyperX FURY 4GB RAM 1600 MHz (Kingston); -GA-B75m-D3H motherboard; -Corsair CX-430W power supply. Eu tenho costume de colocar o PC no modo Sleep. No OS em português creio que seja dormir/hibernar/hibernação ou algo do tipo, não tenho certeza pois estou usando Windows 10 e talvez eles tenham mudado o nome da função em português. Enfim, aqui ficam as primeiras dúvidas: tá de boa fazer isso, ou seria melhor desligar e talvez até desconectar o PC da tomada? E essa fonte, é suficiente? Na caixa da placa de vídeo diz que precisa pelo menos 400W, e como não pretendo fazer um upgrade muito cedo eu gostaria de saber se essa fonte segura de boa a placa de vídeo. Bom, agora ao problema: Liguei o PC - estava no modo Sleep - e a tela estava toda branca, com alguns "quadrados" de mais ou menos 20x20 px mudando de posição aleatoriamente. Estes quadrados tinham pixels brancos, cinzas e rosa/verde. Não dava pra ver nada na tela a não ser isso. Apertei o botão no case pra reiniciar o PC, e tudo estava normal outra vez. O problema é que eu fico encucado com isso e pensei que poderia ser um "sinal" de que a GPU venha a falhar num futuro não tão distante. Alguém sabe o que poderia ser? Será que isso tem relação com hardware? Estou pensando em voltar pro Windows 8.1, mesmo eu tendo gostado bastante do Windows 10. Ele ainda tem alguns bugs tipo o menu Start não abrindo de vez em quando e alguns jogos pareciam rodar melhor no Windows 8.1 do que no 10. Talvez esse glitch tenha sido por causa do Windows 10 também. Vale lembra que meu monitor LED já tem uns 6 anos. Se puderem esclarecer essas dúvidas, ficarei muito grato. Abraço!

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