Ir ao conteúdo
  • Cadastre-se

Lucca Rodrigues

Membro Pleno
  • Posts

    1.081
  • Cadastrado em

  • Última visita

Tudo que Lucca Rodrigues postou

  1. @Nicolas Carmo "que receba como parâmetro"? Deveria ser argumento. Você deve passar 2 argumentos na chamada da função que tenham uma clara correspondência aos parâmetros na declaração da mesma. Aliás, não vi nenhuma chamada dessa função pares() no seu código. Basta compilar que os erros aparecem em alguma área destinada pra isso. Está tentando retornar um ponteiro, mas a função é do tipo inteiro. Releia seu código, tem alguns erros por desatenção. As macros são substituídas por suas definições durante o tempo de compilação, então é padrão defini-las antes de incluir os arquivos de cabeçalho.
  2. Boa tarde. Estava casualmente tentando mudar a fonte da console como sugerido há um tempo em um trecho de código aqui, então decidi criar um tópico só pra isso... Minha tentativa: #include <stdio.h> #include <stdlib.h> #include <locale.h> #include <wchar.h> #include <windows.h> int main() { HANDLE outs = GetStdHandle(STD_OUTPUT_HANDLE); CONSOLE_FONT_INFOEX fonte, frest; fonte.cbSize = sizeof(CONSOLE_FONT_INFOEX); frest.cbSize = sizeof(CONSOLE_FONT_INFOEX); GetCurrentConsoleFontEx(outs, 0, &fonte); GetCurrentConsoleFontEx(outs, 0, &frest); printf("Atual:\n"); printf("cbSize: %lu\n", fonte.cbSize); printf("nFont: %lu\n", fonte.nFont); printf("dwFontSize.X: %hd\n", fonte.dwFontSize.X); printf("dwFontSize.Y: %hd\n", fonte.dwFontSize.Y); printf("FontFamily: %u\n", fonte.FontFamily); printf("FontWeight: %u\n", fonte.FontWeight); /* Como imprimo fonte.FaceName? Na documentação diz que é do tipo WCHAR, acredito que é um caractere largo de 16 bits Tentei: setlocale(LC_ALL, "C.UTF-8"); printf("FaceName: %ls\n", fonte.FaceName); wprintf() também não funciona */ fonte.nFont = 0; fonte.dwFontSize.X = 10; fonte.dwFontSize.Y = 20; lstrcpyW(fonte.FaceName, L"Courier New"); fonte.FontFamily = 54; fonte.FontWeight = 400; SetCurrentConsoleFontEx(outs, 0, &fonte); printf("\nNovo:\n"); printf("cbSize: %lu\n", fonte.cbSize); printf("nFont: %lu\n", fonte.nFont); printf("dwFontSize.X: %hd\n", fonte.dwFontSize.X); printf("dwFontSize.Y: %hd\n", fonte.dwFontSize.Y); printf("FontFamily: %u\n", fonte.FontFamily); printf("FontWeight: %u\n", fonte.FontWeight); // Salvando int save_page = GetConsoleCP(); int save_page_out = GetConsoleOutputCP(); // Alterando SetConsoleCP(437); SetConsoleOutputCP(437); // Testando printf("\nImprimindo caracteres de 128 a 255:\n"); for(int i = 128; i < 255; i += 8) { printf("\n[%3d]\t", i); for(int j = 0; j < 8; j += 1) { printf("%4c", i+j); } } printf("\n"); // Restaurando SetConsoleCP(save_page); SetConsoleOutputCP(save_page_out); SetCurrentConsoleFontEx(outs, 0, &frest); printf("\nRestaurado:\n"); printf("cbSize: %lu\n", frest.cbSize); printf("nFont: %lu\n", frest.nFont); printf("dwFontSize.X: %hd\n", frest.dwFontSize.X); printf("dwFontSize.Y: %hd\n", frest.dwFontSize.Y); printf("FontFamily: %u\n", frest.FontFamily); printf("FontWeight: %u\n", frest.FontWeight); return 0; } A saída: Contudo, a fonte não mudou. Tenho que rodar no Terminal do Windows? Não há como isso funcionar na janela do CodeBlocks (ou na de qualquer outro IDE)? Obrigado pela atenção.
  3. @Kaue Almeida Pra que imprimir asteriscos depois de digitar a palavra? Aliás, está lendo a mesma com gets(), que é obsoleta: Use fgets(), ou quem sabe scanf(). Se o intuito era "não mostrar" a palavra que o usuário digitou (já que é um jogo da forca), você poderia fazer o seguinte: se estiver programando em Windows, desabilite echo e line input usando SetConsoleMode() para poder ler caractere por caractere com fgetc() ou com alguma outra função, e por fim imprima um asterisco conforme o usuário digita (lembre-se de salvar o modo de entrada para restaurar depois). Se tiver acesso ao cabeçalho conio, um loop com a função getch() daria no mesmo. O código tem vários erros e problemas, mas acho que esse seu problema aí é por causa disso: A variável "erros" é do tipo inteiro. Acredito que você queria imprimir a variável "letra" e se confundiu. Aliás, "letra" é uma string, se você precisa de uma letra, declare um char e leia com fgetc(), getchar(), scanf() ou alguma outra função.
  4. @Sandro3636 É só ver a foto: Há passagem de corrente entre F e qualquer outra letra conforme o tanque vai enchendo. Os transistores atuam como chaves. Tem outra forma de fazer isso aí, acho que com um medidor VU que usa o LM3914, um CI com uma porção de comparadores, e consegue controlar até 10 LEDs. A diferença é que não vai precisar de tantos fios assim.
  5. @Sandro3636 Sim, pode usar o 546 ou 547 por exemplo. Basta pesquisar no google por um equivalente.
  6. @Davi Borges Colega, já é sua segunda postagem na qual copia e cola o enunciado de sua tarefa. Só faça isso se tiver dúvidas (de preferência objetivas, e disserte bem). No mais, não podemos fazer o seu trabalho, mas podemos ajudar se você tiver um código. Para postar, use o botão Code, e poste algo compilável.
  7. Viu o link que postei? Você pode criar um loop com um for, do-while, while, etc. Acho que um for te serve. Poste o que tentou fazer.
  8. Que comandos? Aqui tem uma lista com os que você provavelmente vai usar: link. Talvez um loop com um for para ler tudo, um if para verificar a idade dos dependentes, e no final um return, como exige o padrão do C.
  9. para separar o ouro de todo o resto e para dissolver e eventualmente purificar o ouro (trabalhoso e envolve alguns químicos). Há outras formas de fazer a separação e a purificação, e este segundo passo é para caso você não queira nenhum resíduo da separação, como pequenas partes da PCB e outros metais como cobre ou níquel que estavam junto ao ouro. Mais trabalho pra que? O que você conseguir vai ser bem mais impuro e vai levar bem mais tempo pra juntar. @O Pequeno Príncipe Acredito que esse é um dos maiores canais de química, e ele mostra o passo a passo. Recomendo dar uma olhada:
  10. Erro 1: afirmou que é seu, quando na verdade não é Achou o código nesse link. Erro 2: não disse que tipo de ajuda quer. Procure dissertar mais, ajude quem quer te ajudar. PS: não delete a conta. Digo isso porque acontece bastante com o pessoal que não lê as regras e vem buscar uma resposta fácil, daí acabam se decepcionando quando descobrem que as coisas têm um preço... Edite sua postagem, mostre o que tentou fazer e use o botão Code pra postar o código.
  11. @Fagner Alves Rosa Não faz muito sentido alguém ter que baixar algo para então tentar te ajudar, e do jeito que falou está praticamente pedindo para que façamos seu trabalho de graça E não é sobre uma "forma correta", a discussão aqui trata de outra forma de fazer que é mais fácil, não é?
  12. Viram do tipo T: Sim. @Leandro Ribeiro de Souza Quando a entrada de clear é ativada, o flip-flop reseta (nível lógico 0). Você só teria que garantir que os flip-flops sejam resetados quando a contagem estiver em 10... Se a entrada de clear for barrada, então basta uma NAND (só sai 0 quanto todas entradas são 1) de 2 portas pegando Q1 (ou Qb) e Q3 (ou Qd), já que 10 em binário é 1010, e essa combinação de 1's é única. Se não for barrada, troque a NAND por uma AND (só sai 1 quanto todas entradas são 1). EDIT: Se é um contador síncrono, esqueça preset e clear. Faça a tabela verdade, MK's, etc. Você precisa entender como se chega naquilo, e então dúvidas como essa: vão ser automaticamente respondidas...
  13. @HenriqueABC Tem muitos erros: Criou o tópico em C++, mas programou em C; Não incluiu o cabeçalho padrão de entrada/saída: stdio. Me surpreendo que conseguiu compilar... Usou variáveis globais sem necessidade: podem ser lidas ou modificadas por qualquer parte do programa, o que implica na falta de controle e na desorganização/poluição do namespace. Você só torna algo global se este algo realmente deveria ser. Evite ao máximo (principalmente se é iniciante), não a todo custo; fflush() não é definida para streams de entrada, então não adianta passar stdin como argumento na chamada da função. Se quer descartar o '\n' (que na maioria dos casos não faz parte da leitura e acaba ficando no buffer), use o subespecificador * junto ao especificador c depois de ler o que quer que seja, assim: %*c. Isso garante que o '\n' será lido e ignorado; Você definiu "cls" como "system("cls");", e não está errado, mas fica estranho sem o ";" quando for chamar, dá a impressão de que esqueceu de incluir.
  14. @gabriestilo Normalmente uma "tela de loading" vem acompanhada de uma barra de progresso. Na console, você pode mudar o atributo do fundo do texto pra dar a impressão de que a barra está enchendo conforme o tempo, e isto pode ser feito dentro de um loop com as funções textcolor() e Sleep(): Você pode usar essa função: // Opções: #define preto 0 #define azul 1 #define verde 2 #define ciano 3 #define vermelho 4 #define magenta 5 #define marrom 6 #define cinza_claro 7 #define cinza_escuro 8 #define azul_claro 9 #define verde_claro 10 #define ciano_claro 11 #define vermelho_claro 12 #define magenta_claro 13 #define amarelo 14 #define branco 15 void textcolor(int texto, int fundo) { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), texto | (fundo << 4)); return; } Se der uma googlada, vai achar outras formas de fazer:
  15. @Dodovoisg A função strstr() retorna um ponteiro para a primeira ocorrência de str2 em str1. O protótipo: char* strstr(const char* str1, const char* str2); Um loop com essa função deve fazer o que você precisa. Se o ponteiro retornado for nulo, então str2 não faz parte de str1, e aí seu loop deve terminar. Para substituir a string escola pela string padaria, talvez a função strncpy() sirva.
  16. @Matheus Baroni O protótipo de system() é esse: int system (const char* command); O único parâmetro é um ponteiro para um const char. Não programo em C++ e nem uso system(), mas acho que algo simples assim deva funcionar (em C): #include <stdio.h> #include <stdlib.h> int main() { char str[201]; char start[207]; const char* comando; scanf("%200[^\n]", str); sprintf(start, "start %s", str); comando = start; system(comando); return 0; } Lemos uma string, mudamos para onde o ponteiro está apontando e chamamos system(). Em C++ não deve ser muito diferente...
  17. @Profissional computadores A questão não é essa... O Avast funciona bem considerando que uso esse computador só pra estudo. Vejo direto o pessoal falar pra tirar o Avast e deixar o Windows Defender, Kaspersky, Bitdefender, Panda Free e não sei o que mais. É meio raro eu entrar em algum site que eu desconfie, então acho que não preciso de muito mais que isso... Seria bacana se alguém com esse Kaspersky pudesse testar isso aí Daí não preciso desinstalar e instalar nada pra testar algo. Mas de qualquer forma, abri novamente o Youtube e não aparece mais, já devo ter aberto uns 50 vídeos aqui... EDIT: Acho que quando essa mensagem do Avast apareceu, eu tinha coincidentemente aberto um vídeo que tratava disso daí, e só fui notar agora: Alguém saberia qual o motivo disso??? Achei bizarro. Acho que é mesmo...
  18. @Math.Pi Exato! Foi isso o que apareceu. Que diabos será isso? E para ti foi na página do Google...
  19. @Profissional computadores E a parte do Corrupt-B? Não faço ideia do que isso signifique, pra mim são só palavras Eu tentei dar uma pesquisada mas não achei nada... Também não sei o motivo do Avast ter acusado tal coisa. @Math.Pi Foi o que eu tentei fazer... Antes do computador travar... Agora quando entro no Youtube não aparece mais, e quando apareceu minutos atrás foi meio que "do nada", eu já estava navegando no Youtube antes e isso só foi aparecer agora. Eu uso o Avast pra proteção Online e o Malwarebytes versão gratuita pra fazer uma varredura de vez em quando.
  20. Boa tarde, pessoal. Estava aqui navegando quando algo meio estranho aconteceu. Abri algumas abas de vídeos do Youtube e o Avast disse que a página está infectada com Win32:ntfsCorrupt-B (acho que é isso, eu fui tirar um print mas meu computador travou). O que faço?
  21. @Pedro Kazoii C#? O tópico é de C++, e o código nada tem de C++ além do cabeçalho iostream... @Joao Lochini A gente não sabe de que se trata, você só postou o código e nada mais. O código é muito extenso e tem muitas coisas que você repetiu desnecessariamente. Você aprendeu a usar vetores em vez de declarar X variáveis de mesmo tipo, aprendeu a usar laços em vez de repetir um processo por extenso X vezes, agora faça o mesmo. Se quer calcular a média, mediana, moda, etc, de mortes ou qualquer coisa que seja em um determinado ano, faça uma função para tal em vez de repetir o processo por extenso toda vez que precisar calcular...
  22. @Ruthceli Praciano Poste o código, use o botão Code. A console. Compilou e executou? No CodeBlocks é essa opção: Poste fotos, ou melhor ainda, grave um vídeo tentando rodar o programa e poste no YT. Eu crio os projetos dentro de uma pasta no meu Desktop mesmo. Veja se seu antivírus não está bloqueando os executáveis.
  23. @arfneto @Flávio Pedroza Agradeço a ambos pela ajuda! Eu até tinha conseguido fazer uma "animação" com .bmp's criando Threads com base no exemplo que eu havia mencionado (referência), mas não entendi muito bem como funciona, talvez eu teria que ler com mais calma o que a documentação diz. Enquanto estava tentando fazer o que Arf disse, achei uma referência que trata de timers, e aparentemente é bem simples. Caso alguém venha a ter a mesma dúvida que eu, nesse link tem uma explicação e alguns exemplos.
  24. @Ieybdcbd Çcldcf O padrão é a main() retornar um int, por isso que normalmente a gente vê um "return 0" no final da main(), que significa que a execução foi bem sucedida. "N" então é um inteiro positivo, não double como você declarou. O enunciado pede para usar o tipo inteiro: Por que colocou 1.5 antes do especificador? Esse "1" não vai fazer diferença, isso é só pra deixar espaços à esquerda caso o mesmo seja um número maior que a quantidade de caracteres do ponto flutuante que você está imprimindo. Tentou mudar o tipo de double pra int, e usar o especificador d em vez de lf na scanf()? É só isso o que você tem que fazer a mais pra "funcionar", mas é bom fazer as mudanças que eu mencionei. Tente se acostumar a usar nomes de variáveis mais autoexplicativos, é fácil e poupa tempo. Da uma olhada aí: #include <stdio.h> #include <locale.h> int main() { setlocale(LC_ALL, "Portuguese"); int N; int sinal = 1; double denominador = 1; double PI = 0; printf("Insira a quantidade de termos: "); scanf("%d", &N); for(int i = 0; i < N; i++){ PI += sinal * (4 / denominador); sinal = -sinal; denominador += 2; } printf("\nO valor de PI calculado é: %.5lf\n", PI); return 0; }

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

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!