Ir ao conteúdo
  • Cadastre-se

atlos

Membro Pleno
  • Posts

    267
  • Cadastrado em

  • Última visita

posts postados por atlos

  1. Olá,estou com dúvidas sobre ondas eletromagnéticas que acabaram me empacando :

    Dado uma onda plana uniforme :

    1 - Quando eu calculo a reflexão e transmissão da onda quando ela bate num meio condutivo(o/w.e > 1),eu devo calcular tambem a atenuação na parcela transmitida??

    2 - Ainda sobre a parcela transmitida,ela vai virar completamente corrente de condução ou ambas corrente de condução e  deslocamento vão coexistir(num fio por exemplo)?Se nao,então pra onde exatamente essa onda eletromagnética vai?

    3 - Alguém conhece algum programa pra simulação de ondas eletromagnéticas nesses casos de reflexão e transmissão?

     

    grato

  2. Acho que seria melhor então voce acessar o diretório e listar todos os arquivos,alguma coisa assim :

    WIN32_FIND_DATA info;HANDLE hprocura = FindFirstFile("caminho do diretorio",&info);    if(hprocura == INVALID_HANDLE_VALUE)    {        std::cout<<"Falhou"<<std::endl;        return - 1;    }WIN32_FIND_DATA info2;    while(FindNextFile(hprocura,&info2) == TRUE)    {//Se nao for um diretório entao pega as informações do arquivo//Se nao tiver um subdiretório nesse diretório dos arquivos //entao ignora esse teste         if( info2.dwFileAttributes != FILE_ATTRIBUTE_DIRECTORY)        {       //Pega as informações em info2        }    }

    Pra converter o tempo,usa a função FileTimeToSystemTime - https://msdn.microsoft.com/en-us/library/windows/desktop/ms724280%28v=vs.85%29.aspx

    • Curtir 1
  3. voce nao precisa colocar o horario e a data que ele foi gerado,o S.O ja guarda essas informações do arquivo

    voce pode abrir um handle para um objeto arquivo usando CreateFile e depois chamar a função GetFileInformationByHandle passando esse handle..isso vai preencher uma estrutura do tipo "BY_HANDLE_FILE_INFORMATION" com nao só essas mas tambem outras informações sobre o arquivo,por exemplo :

    HANDLE harq = CreateFile("Nomedoarquivo",...resto dos argumentos)BY_HANDLE_FILE_INFORMATION info;GetFileInformationByHandle(harq,&info);//Passa o handle pro arquivo aberto e um ponteiro para a estrutura  

    Sobre a funcao CreateFile - https://msdn.microsoft.com/en-us/library/windows/desktop/aa363858%28v=vs.85%29.aspx

    • Curtir 1
  4. a posição que voce deveria colocar o espaço seria a posiçãoatual - t ou +t

    por exemplo,voce poderia declarar uma variavel fora do while chamada "v"

    //Apagando as colunasif(tecla==77)        {            x[0]++;            v = -t;        }        else if(tecla==75)        {            x[0]--;            v = +t;        }//depois chama a função gotoxy(x[0]+v, y[0]);printf (" ");

    o código tambem tem coisas sem sentido..pegar pedaços de outros códigos é algo muito ruim

  5. realmente nenhuma matematica avançada,voce vai ver que na verdade a lógica é quem resolve praticamente tudo na programação,porém se voce for atuar na area grafica mesmo que as próprias bibliotecas como opengl e direct3D ja implemetem "o grosso"(desenhem),voce ainda vai ter que entender geometria pra poder usar suas funções de forma mais eficiente

    • Curtir 2
  6. voce usa _beginthreadex,pra poder usar funções de forma thread-safe do C,mas programação multithread é bem diferente de um programa com uma unica thread..sincronização e invalidação de cache do processador(se tiver mais de uma CPU) são compreendimentos fundamentais que voce tem que saber pra poder tirar proveito de programação multithread

  7. voce pode criar variaveis e ir incrementando elas conforme os testes

    voce usa um laço(o while)pra loopar 200 vezes,ai por exemplo,dentro desse bloco while voce testa o valor passado

    int cont = 200;while(cont > 0){  std::cin>> valor;  if(valor > 2000){//ai aqui voce incrementaria uma variavel que conta a quantidade de pessoas que     //ganha mais de 2000..   quant_2000 = quant_2000  + 1; }  //decrementa o contador cont = cont - 1;  }

    Ai no final voce exibe o valor dessas variaveis

    std::cout<<quant_2000<<std::endl;std::cout<<quant_20_40<<std::endl;
  8. 1 - A barra deve ser preenchida durante 1 minuto, mais  ou menos

    Isso quer dizer que o tempo que voce vai passar para Sleep tem que ser relativo ao tamanho da linha

     

    2 - Permita que o usuário escolha seu tamanho, entre ¼ e ¾ de uma linha

    Uma linha tem 80 colunas(80 células),sendo assim o valor passado  para o tamanho da linha vai poder ser no maximo 100(pois 3/4 de 100 é 75 ainda)

     

    3 - Estipule seu tamanho máximo para que não  ultrapasse o fim de uma linha.

    voce pode testar se a linha for maior que 100 então voce termina o programa ou poe o valor da linha para 80

     

    voce vai precisar usar floats nesse caso porque os calculos feitos pra descobrir os chunks de tempo que voce deve passar pra Sleep,podem nao ser numeros exatos

     

    ai no programa tu pode fazer alguma coisa do tipo :

    float n = 0;std::cout<<"Digite o tamanho da linha,maximo 100 "<<std::endl;std::cin>>n;//Se for maior que 100 retornaif(n >100) return -1;int n2 = 0;std::cout<<"Digite 1 ou 3 para o 4º do tamanho"<<std::endl;std::cin>>n2;//Tenho que saber qual seria o tempo baseado em 1 minuto //que eu tenho  que esperar relativo ao tamanho da linha//PS:Multiplico por 1000 pois Sleep pega o valor em milisegundosfloat quant = (60/n)*1000 ;int temp = 0;//Vou incrementando pelo valor do chunk de tempo que eu passo// para Sleep,até ser maior que 60000(60 segundos)while((temp = temp + quant) < 60000){       //imprime um caractere da sua barra sem usar quebra de linha         Sleep(quant);}
  9. ve se funciona..vai na aba "Project",depois na ultima aba(aqui no vs 2010 é assim pelo menos),que tem o nome do seu projeto por exemplo

    "nomeprojeto Properties.."

     

    Quando abrir a janela "Property Pages" vai em "C/C++" depois em "Precompiled Headers",depois vai em "Precompiled Headers" e seleciona "Not Using Precompiled Headers"

     

    E no seu arquivo,voce tira esse #include "stdafx.h" e deixa só o #include <iostream>

    • Curtir 1
  10. 
    

    scanf("%d",&en); 

    m = mn = en;

        while(en > -1)   

        {

            if(en > m)

            {

                m = en;

            }

            else if(en < mn)

            {

                mn = en;

            }

            scanf("%d",&en);  

        }

  11. PERGUNTA

    alguem sabe como fazer um programa em c para que o usuario digite um numero impar e a saida seja como no exemplo:

    ex: o usuario digitou o numero 9 a saida deve ser 

    123456789

     2345678

      34567

       456

        5

    por exemplo,um numero dividido por 10,faz com que a casa decimal mais a direita suma,então :

    123456789 / 10 = 12345678

     

    um numero diminuido dele mesmo,dividido pela quantidade de casas dele atualmente, multiplicado pela quantidade de casas dele atualmente,faz com que o digito mais a esquerda suma,então:

    int n = 123456789

    int dm = 100000000;

    int n2 = n - (n/dm) *dm;  resultado disso seria = 23456789

     

    as vezes pode haver resto mas depedendo do modo de truncagem/arredondamento voce pode se aproveitar desse tipo de calculo

     

    sabendo disso depois voce pode fazer um loop que vai dividindo por 10 o numero que vai ser usado pra divisao e multiplicação do numero atual(no caso seria a variavel dm)

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!