Ir ao conteúdo
  • Cadastre-se

Welington Silva 2002

Membro Pleno
  • Posts

    30
  • Cadastrado em

  • Última visita

posts postados por Welington Silva 2002

  1. Olá, pessoal. Eu sou iniciante em blender, sei muito pouco. 

    Estou tentando gerar a animação em anexo, mas tenho alguns problemas nela: luzes opacas, background n aparece e tal.

    alguém poderia editar esses detalhes e me enviar se for fácil?? 

    O arquivo blender está aí:

    https://drive.google.com/drive/folders/1eIYLd4nOISG2rLffK88r7k16l8Js3_Wr?usp=sharing 

    Desde já, mt obrigado.

    image.thumb.png.aa33bc4e4ba23c568bed83bb6f9ba102.png

  2. De uns tempos pra cá, meu VEGAS PRO 17 começou a apresentar falhas no áudio... Acontece que tudo está perfeito, aí após renderizar, o áudio simplesmente estoura, ou fica inaudível ou fica péssimo de se ouvir. (Mas se reiniciar o Vegas, ele volta ao normal, mas se renderizar volta o defeito... )

    Antes não dava isso... Alguém pode me ajudar?

  3. @arfneto  Eu devia ter mandado o código... Aí está...

    Ainda não consegui. Então seria bom eu passar o elemento de cada percorrida na Lista para a função remove, certo?

     

     

    #include <iostream>

    using namespace std;

    struct No {
       int Info;
       No * Lig;
    };

    typedef struct No *NoPtr;


    void InsereLista (NoPtr& L, int Novo) {
      if (L == NULL) {  // INSERÇÃO DO PRIMEIRO NÓ
          L = new No;
          L->Info = Novo;
          L->Lig = NULL;
      } else {                // AJUSTA PONTEIROS ANT E AUX
          NoPtr Ant = NULL;
          NoPtr Aux = L;
          while((Aux != NULL)&&(Aux->Info < Novo)) {//ENCONTRA POSIÇÃO
                  Ant = Aux;
                 Aux = Aux->Lig;
          }
          Aux = new No;
          Aux->Info = Novo;     // INSERE O NO E AJUSTA PONTEIROS
          if (Ant == NULL) {
                Aux->Lig = L;
                L = Aux;
          } else {
                Aux->Lig = Ant->Lig;
                Ant->Lig = Aux;
          }
      }
    }

    bool RetiraLista (NoPtr& L, int Novo) {

    //serve para passagem do elemento, tipo RetiraLista (L1, 3)
      NoPtr Ant = NULL;
      NoPtr Aux = L;
      while ((Aux != NULL) && (Aux->Info != Novo)) { // TENTA ENCONTRAR ELEMENTO
              Ant = Aux;
              Aux = Aux->Lig;
      }
      if (Aux == NULL)
             return false;  // RETORNA FALSO SE NÃO ENCONTRA ELEMENTO
      if (Aux == L)        // SE ELEMENTO É O PRIMEIRO, REDIRECIONA O PONTEIRO
             L = L->Lig;
      else
             Ant->Lig = Aux->Lig; // REDIRECIONA O PONTEIRO
      delete Aux;  // APAGA O ELEMENTO
      return true;
    }

    void ImprimeLista (NoPtr L) {
      NoPtr Ant = NULL;
      NoPtr Aux = L;
      cout << "L -> ";
      while ((Aux != NULL)) {
              Ant = Aux;
              Aux = Aux->Lig;
              cout << Ant->Info << " -> ";
      }
      if (Aux == NULL)
          cout << "NULL" << endl;

    }
    bool RemoveRepetidos (NoPtr& L) //Sem funcao ainda, nem chamei na main()
    {
      NoPtr Ant = NULL;
      NoPtr Aux = L;
      // RemoveRepetidos (Aux->Lig); //Havia tentado algo recursivo
    }


    int main () {

      NoPtr L1 = NULL;

      InsereLista(L1, 1);
      InsereLista(L1, 4);
      InsereLista(L1, 2);
      InsereLista(L1, 2);
    //_______________________________________________________________
      cout<<"LISTA NORMAL: "<<endl;
      ImprimeLista(L1); cout<<endl;
      cout<<"LISTA SEM REPETIDOS: "<<endl;
     // RemoveRepetidos(L1);
    //_______________________________________________________________


    return 0;
    }

     

    2 minutos atrás, Welington Silva 2002 disse:

    @arfneto  Eu devia ter mandado o código... Aí está...

    Ainda não consegui. Então seria bom eu passar o elemento de cada percorrida na Lista para a função remove, certo?

     

     

    #include <iostream>

    using namespace std;

    struct No {
       int Info;
       No * Lig;
    };

    typedef struct No *NoPtr;


    void InsereLista (NoPtr& L, int Novo) {
      if (L == NULL) {  // INSERÇÃO DO PRIMEIRO NÓ
          L = new No;
          L->Info = Novo;
          L->Lig = NULL;
      } else {                // AJUSTA PONTEIROS ANT E AUX
          NoPtr Ant = NULL;
          NoPtr Aux = L;
          while((Aux != NULL)&&(Aux->Info < Novo)) {//ENCONTRA POSIÇÃO
                  Ant = Aux;
                 Aux = Aux->Lig;
          }
          Aux = new No;
          Aux->Info = Novo;     // INSERE O NO E AJUSTA PONTEIROS
          if (Ant == NULL) {
                Aux->Lig = L;
                L = Aux;
          } else {
                Aux->Lig = Ant->Lig;
                Ant->Lig = Aux;
          }
      }
    }

    bool RetiraLista (NoPtr& L, int Novo) {

    //serve para passagem do elemento, tipo RetiraLista (L1, 3)
      NoPtr Ant = NULL;
      NoPtr Aux = L;
      while ((Aux != NULL) && (Aux->Info != Novo)) { // TENTA ENCONTRAR ELEMENTO
              Ant = Aux;
              Aux = Aux->Lig;
      }
      if (Aux == NULL)
             return false;  // RETORNA FALSO SE NÃO ENCONTRA ELEMENTO
      if (Aux == L)        // SE ELEMENTO É O PRIMEIRO, REDIRECIONA O PONTEIRO
             L = L->Lig;
      else
             Ant->Lig = Aux->Lig; // REDIRECIONA O PONTEIRO
      delete Aux;  // APAGA O ELEMENTO
      return true;
    }

    void ImprimeLista (NoPtr L) {
      NoPtr Ant = NULL;
      NoPtr Aux = L;
      cout << "L -> ";
      while ((Aux != NULL)) {
              Ant = Aux;
              Aux = Aux->Lig;
              cout << Ant->Info << " -> ";
      }
      if (Aux == NULL)
          cout << "NULL" << endl;

    }
    bool RemoveRepetidos (NoPtr& L) //Sem funcao ainda, nem chamei na main()
    {
      NoPtr Ant = NULL;
      NoPtr Aux = L;
      // RemoveRepetidos (Aux->Lig); //Havia tentado algo recursivo
    }


    int main () {

      NoPtr L1 = NULL;

      InsereLista(L1, 1);
      InsereLista(L1, 4);
      InsereLista(L1, 2);
      InsereLista(L1, 2);
    //_______________________________________________________________
      cout<<"LISTA NORMAL: "<<endl;
      ImprimeLista(L1); cout<<endl;
      cout<<"LISTA SEM REPETIDOS: "<<endl;
     // RemoveRepetidos(L1);
    //_______________________________________________________________


    return 0;
    }

     

     

    Na verdade,a questao pede para fazer com listas... Não especificou nao... entao se for mais fácil com duplamente encadeada ou generalizada, acredito que podem ser usadas

    Entendi entendi, vou tentar aqui. Obrigado! 😇@arfneto

    @arfneto

     

    Eu fiz isso aqui, saberia me dizr onde to errando?

     

    #include <iostream>

    using namespace std;

    struct No {
       int Info;
       No * Lig;
    };

    typedef struct No *NoPtr;


    void InsereLista (NoPtr& L, int Novo) {
      if (L == NULL) {  // INSERÇÃO DO PRIMEIRO NÓ
          L = new No;
          L->Info = Novo;
          L->Lig = NULL;
      } else {                // AJUSTA PONTEIROS ANT E AUX
          NoPtr Ant = NULL;
          NoPtr Aux = L;
          while((Aux != NULL)&&(Aux->Info < Novo)) {//ENCONTRA POSIÇÃO
                  Ant = Aux;
                 Aux = Aux->Lig;
          }
          Aux = new No;
          Aux->Info = Novo;     // INSERE O NO E AJUSTA PONTEIROS
          if (Ant == NULL) {
                Aux->Lig = L;
                L = Aux;
          } else {
                Aux->Lig = Ant->Lig;
                Ant->Lig = Aux;
          }
      }
    }

    bool RetiraLista (NoPtr& L, int Novo) {
      NoPtr Ant = NULL;
      NoPtr Aux = L;
      while ((Aux != NULL) && (Aux->Info != Novo)) { // TENTA ENCONTRAR ELEMENTO
              Ant = Aux;
              Aux = Aux->Lig;
      }
      if (Aux == NULL)
             return false;  // RETORNA FALSO SE NÃO ENCONTRA ELEMENTO
      if (Aux == L)        // SE ELEMENTO É O PRIMEIRO, REDIRECIONA O PONTEIRO
             L = L->Lig;
      else
             Ant->Lig = Aux->Lig; // REDIRECIONA O PONTEIRO
      delete Aux;  // APAGA O ELEMENTO
      return true;
    }

    void ImprimeLista (NoPtr L) {
      NoPtr Ant = NULL;
      NoPtr Aux = L;
      cout << "L -> ";
      while ((Aux != NULL)) {
              Ant = Aux;
              Aux = Aux->Lig;
              cout << Ant->Info << " -> ";
      }
      if (Aux == NULL)
          cout << "NULL" << endl;
    }

    bool RemoveRepetidos (NoPtr& L)
    {
      NoPtr Ant = NULL;
      NoPtr Aux = L;
      int valor;
      while(Aux!=NULL){
          if(Ant==NULL)
          return false;
          if(Ant==Aux){
          RetiraLista(Aux, valor);
          Ant=Aux;
          Aux = Aux->Lig;
          return true;
         }
      }
    }


    int main () {

      NoPtr L1 = NULL;

      InsereLista(L1, 1);
      InsereLista(L1, 4);
      InsereLista(L1, 2);
      InsereLista(L1, 2);

      cout<<"LISTA NORMAL: "<<endl;
      ImprimeLista(L1); cout<<endl;
     
      cout<<"LISTA SEM REPETIDOS: "<<endl;
      while(RemoveRepetidos(L1))
      ImprimeLista(L1);
      cout<<endl;

    return 0;
    }

  4. Galera, tenho um Notebook , ele tem SSD e HD. O S. O está no SSD (win10). 

    Ele ligava antes em 25 segundos. Agora eu aperto o botão de power e ele acende a luz e desliga na hora. Depois aperto de novo, ele inicia o teclado RGB e após 10 segundos desliga. (Quando ele desliga, faz um barulho, como se fosse um relé...) ai na terceira tentativa (sempre) ele liga, demorando uns 30 segundos... 

     

    O que pode ser?? 

     

     

  5. Fala galera. Esse teclado aqui vale a pena?? 

    Eu sou programador iniciante, 2° período da facul de Controle e Automação. 

    Jogo as vezes um CSGO e tal, mas o teclado seria mais pra programar e afins... 

    Pra valer a pena tem que ser mecânico de verdade... Senão eu compro um de 30 reais ora bolas. 

     

    Promoção da kabum (se é que é mesmo promoção) 

     

    Teclado Mecânico Gamer T-Dagger Bora Single, LED White, Switch Blue, ABNT2 - T-TGK313-BL (PT-WHITE)

  6. Boa noite, caros amigos.

     

    Nesse exercício preciso inverter uma fila passada por parâmetro na main...

    Algo do tipo:

    //inserindo a fila

    Fila F;

    IniciaFila(F);

    int elemento;

     

    InsereFila(F, 1);

    InsereFila(F, 2);

    InsereFila(F, 3);

    InsereFila(F, 4);

     

    //1 2 3 4

    e imprimir invertida:

    >>>> 4 3 2 1

     

    Já sei e tenho todas as funções implementadas.

    O que preciso é um toque, uma instigação para saber como inverter de forma simples e DINAMICAMENTE.

     

    Desde já, muitíssimo obrigado!

     

  7. @mauro_b

    Eu tinha feito bobeira mesmo.... mt obgd!!!!

    Mudei o código, deu certo agora....

     

     

    Código:

     

     

    #include <cstdlib>
    #include <iostream>
    using namespace std;

    struct No {
        int Info;
        No *Lig;
    };

    typedef No *Pilha;

    void IniciaPilha(Pilha& Topo){
        Topo = NULL;
    }

    Pilha TopoPilha(Pilha Topo){
        No *Aux = new No;
        Aux = Topo;
        return Aux;
    }

    bool PilhaVazia(Pilha Topo){
        if (Topo == NULL)
            return true;
        return false;
    }

    void Empilha(Pilha& Topo, int Elemento){
        No *Aux = new No;
        Aux->Info = Elemento;
        Aux->Lig = Topo;
        Topo = Aux;
    }

    bool Desempilha(Pilha& Topo, int& Elemento){
        if (PilhaVazia(Topo))
            return false;
        Elemento = Topo->Info;
        No *Aux = Topo;
        Topo = Topo->Lig;
        delete Aux;
        return true;
    }

    int TamanhoPilha(Pilha Topo){
       int elemento;
       int tam = 0;
       Pilha Aux;
       IniciaPilha(Aux);

       while(Desempilha(Topo,elemento)){
          Empilha(Aux,elemento);
          tam++;
       }

       while(Desempilha(Aux,elemento))
          Empilha(Topo,elemento);

       return tam;
    }

    Pilha SomaPilhas(Pilha P1, Pilha P2){
        Pilha P3, DadosInvertidos;
        IniciaPilha(P3);
        IniciaPilha(DadosInvertidos);
        int soma = 0, elemento = 0;

        while(P1 != NULL || P2 != NULL){                //ENQUANTO NÃO PERCORRER AS 2 FILAS COMPLETAMENTE

            if(P1 != NULL && P2 == NULL)                //SE P2 ACABOU, EMPILHA SÓ P1
                Empilha(DadosInvertidos, P1->Info);

            if(P2 != NULL && P1 == NULL)                //SE P1 ACABOU, EPILHA SÓ P2
                Empilha(DadosInvertidos, P2->Info);

            if(P1 != NULL && P2 != NULL){               //SE NENHUMA ACABOU, EMPILHA A SOMA
                soma = P1->Info + P2->Info;
                Empilha(DadosInvertidos, soma);
            }

            if(P1 != NULL)                              //INTERTRAVAMENTO P1
                P1 = P1->Lig;

            if(P2 != NULL)                              //INTERTRAVAMENTO P2
                P2 = P2->Lig;

            soma = 0;                                   //ZERANDO SOMA A CADA ITERAÇÃO
        }

        while(Desempilha(DadosInvertidos, elemento)){   //OBTENDO ORDEM CORRETA EM P3
            Empilha(P3, elemento);
        }

        return P3;
    }

    bool ImprimePilha (Pilha P){
        No *Aux = P;

        if(PilhaVazia(P)){
            cout<<"\nA pilha se encontra vazia!"<<endl;
            return false;
        }
        else{
            while(Aux != NULL){
                cout<<" "<<Aux->Info<<endl;
                Aux = Aux->Lig;
            }
        }
    }

    int main(){

        Pilha P1, P2, P3;
        IniciaPilha(P1);
        IniciaPilha(P2);
        int Elemento;

        Empilha(P1, 1);
        Empilha(P1, 2);
        Empilha(P1, 3);

        Empilha(P2, 4);
        Empilha(P2, 5);
        Empilha(P2, 6);

        cout<<"EIS A PILHA 1:\n";
        ImprimePilha(P1);

        cout<<"\nEIS A PILHA 2:\n";
        ImprimePilha(P2);

        cout<<"\nEIS A SOMA DAS PILHAS 1 E 2:\n";
        P3 = SomaPilhas(P1, P2);
        ImprimePilha(P3);

        cout<<endl;
        system ("PAUSE");
        return 0;
    }

  8. Fala galera!

    Fiz um código em que eu somo duas pilhas passadas por parâmetro na main.

    O problema é que não consigo dar o print na tela com os valores somados e acho que é alguma bobeira kkkk. Quebrei a cabeça dms já.

    Ele só imprime a pilha :

    1

    1

    1

     

    O código:

    #include <cstdlib> //SOMAR DUAS PILHAS 
    #include <iostream>
    using namespace std;
    
    struct No {
       int Info;
       No *Lig;
    };
    
    typedef No *Pilha;
    
    void IniciaPilha(Pilha& Topo){
    	Topo = NULL;
    }
    
    Pilha TopoPilha(Pilha Topo){
       No *Aux = new No;
       Aux = Topo;
       return Aux;
    }
    
    bool PilhaVazia(Pilha Topo){
       if (Topo == NULL)
           return true;
       return false;
    }
    
    void Empilha(Pilha& Topo, int Elemento){
       No *Aux = new No;
       Aux->Info = Elemento;
       Aux->Lig = Topo;
       Topo = Aux;
    }
    
    bool Desempilha(Pilha& Topo, int& Elemento){
       if (PilhaVazia(Topo))
           return false;
       Elemento = Topo->Info;
       No *Aux = Topo;
       Topo = Topo->Lig;
       delete Aux;
       return true;
    }
    
    Pilha somapilhas(Pilha P1, Pilha P2)
    {
        int v1, v2;
        Pilha P3;
        IniciaPilha(P3);
         while((P1->Lig!=NULL)&&(P2->Lig!=NULL)){  // ENQUANTO NÃO HOUVER PilhA VAZIA
         Desempilha(P1,v1);
         Desempilha(P2,v2);
         Empilha(P3, v1+v2);
         }
         while(P1->Lig!=NULL){
         Desempilha(P1,v1);
         Empilha(P3,v1);}
         while(P2->Lig!=NULL){
          Desempilha(P2,v2);
          Empilha(P3,v2);}
          return P3;
    
    }
    
    int main()
    {
    	Pilha P1;
    	IniciaPilha(P1);
    	Pilha P2;
    	Pilha P3;
    	IniciaPilha(P2);
        int Elemento;
    
    	Empilha(P1, 1);
    	Empilha(P1, 2);
    	Empilha(P1, 3);
    
    	Empilha(P2, 4);
    	Empilha(P2, 4);
        Empilha(P2, 5);
    
    	somapilhas(P1, P2);
    
    
    	while(!PilhaVazia(P1)) {
    		cout << Desempilha(P1, Elemento) << endl;
    	}
    	cout << endl;
    
    	while(!PilhaVazia(P2)) {
    		cout << Desempilha(P2, Elemento) << endl;
    	}
    	cout << endl;
    
    	while(!PilhaVazia(P3)) {
    		cout <<somapilhas(P1, P2)<< endl;
    	}
    
    	return 0;
    }

     

    • Curtir 1
  9. @arfneto Muito bom!!! Vou postar meu código aqui, como eu já havia feito: 

    Vou modularizar cm funções depois. 

     

    //TRABALHO 1 -- UNIFEI -
    //WELINGTON SILVA (E.C.A)
    
    #include <iostream> //cin cout
    #include <fstream>  //ofstream, ifstream, fstream
    #include <stdlib.h> //system pause
    #include <math.h> //calcular função 01
    using namespace std; //cout,cin
    
    
    int main()
    {
        ofstream grava; 
    	
    	// grava = variável para escrever os dados em um arquivo Arq02.txt
        // OBS.: ALTERE os diretorios abaixo para o local onde estes arquivo se encontram!!!
        grava.open("C:/Users/welin/Desktop/AEDS/PROJECTS/PROJ1 - ARQ01/Arq02.txt"); //diretorio
    
        int i, j; //variaveis de iteração
        int l = 0, c = 0;  //variaveis para o tamanho do vetor coluna [500][1] 
    				      //dos dados a serem lidos em Ar01.txt
    
        ifstream readFile;     // variável para ler um arquivo .txt	
        // readFile = variável qualquer de leitura do arquivo 'Arq01.txt' que contém os valores desejados de entrada
        // OBS.: ALTERE os diretorios abaixo para o local onde estes arquivo se encontram!!!
        readFile.open("C:/Users/welin/Desktop/AEDS/PROJECTS/PROJ1 - ARQ01/Arq01.txt");
    if(readFile)
    {
        // Lê a primeira linha do arquivo, onde contém o número de linhas e colunas e armazena
        // estes valores nas variáveis l e c, respectivamente, coloquei 500 e 1 em Arq01 no inicio
        readFile >> l >> c;
        
        	cout << endl
             << "Initializing..." << endl               //pra ficar bonitinho
             << endl;
    
        float matriz[l][c];             // matriz para ler os valores do arquivo Arq01.txt
     								   // Armazena os valores contidos no arquivo Arq01.txt na matriz 'matriz'
        for (i = 0; i < l; i++)       //pegando os valores em Arq01, linha por linha do vetor coluna
        {
            for (j = 0; j < c; j++)
            {
                readFile >> matriz[i][j]; //lê cada linha e imprime (no cout abaixo) para se ter o controle do processo
    
                cout <<i<<" "<< j << " "<<matriz[i][j]<<endl; //somente para controle
            }
        }
    
      //fim de aquisição, inicio de manipulação
      
    	cout << endl
             << "Tratando dados na funcao..." << endl    //mais uma vez, para ficar bonitinho
             << endl;
             
    float y[l][c]; //outra matriz y[500][1] só que para gravar agr
    for (i=0; i<l; i++) //iteração
    {
    	for (j = 0; j < c; j++)
            {
            	float x = matriz[i][j]; //x recebe o valor de cada linha lido no Arq01.txt e é usado na função
            	y[i][j] = x* cos(x)* sin(x); //função 01
            	grava << y[i][j] << endl; //"grava" recebe os valores tratados e armazena em Arq02.txt
                cout <<y[i][j]<<endl; //imprime os valores já tratados
            }
    }
    
    }
    
    else 
    {cout<<"\n\tDiretorio incorreto para leitura do arquivo Arq01.txt. Digite um diretorio valido!"<<endl<<endl<<endl;}
       
        system ("pause"); //pausa o programa
        return 0; //fim do processamento
    }

     

    adicionado 0 minutos depois
    agora, Welington Silva 2002 disse:

    @arfneto Muito bom!!! Vou postar meu código aqui, como eu já havia feito: 

    Vou modularizar cm funções depois. 

     

    
    //TRABALHO 1 -- UNIFEI -
    //WELINGTON SILVA (E.C.A)
    
    #include <iostream> //cin cout
    #include <fstream>  //ofstream, ifstream, fstream
    #include <stdlib.h> //system pause
    #include <math.h> //calcular função 01
    using namespace std; //cout,cin
    
    
    int main()
    {
        ofstream grava; 
    	
    	// grava = variável para escrever os dados em um arquivo Arq02.txt
        // OBS.: ALTERE os diretorios abaixo para o local onde estes arquivo se encontram!!!
        grava.open("C:/Users/welin/Desktop/AEDS/PROJECTS/PROJ1 - ARQ01/Arq02.txt"); //diretorio
    
        int i, j; //variaveis de iteração
        int l = 0, c = 0;  //variaveis para o tamanho do vetor coluna [500][1] 
    				      //dos dados a serem lidos em Ar01.txt
    
        ifstream readFile;     // variável para ler um arquivo .txt	
        // readFile = variável qualquer de leitura do arquivo 'Arq01.txt' que contém os valores desejados de entrada
        // OBS.: ALTERE os diretorios abaixo para o local onde estes arquivo se encontram!!!
        readFile.open("C:/Users/welin/Desktop/AEDS/PROJECTS/PROJ1 - ARQ01/Arq01.txt");
    if(readFile)
    {
        // Lê a primeira linha do arquivo, onde contém o número de linhas e colunas e armazena
        // estes valores nas variáveis l e c, respectivamente, coloquei 500 e 1 em Arq01 no inicio
        readFile >> l >> c;
        
        	cout << endl
             << "Initializing..." << endl               //pra ficar bonitinho
             << endl;
    
        float matriz[l][c];             // matriz para ler os valores do arquivo Arq01.txt
     								   // Armazena os valores contidos no arquivo Arq01.txt na matriz 'matriz'
        for (i = 0; i < l; i++)       //pegando os valores em Arq01, linha por linha do vetor coluna
        {
            for (j = 0; j < c; j++)
            {
                readFile >> matriz[i][j]; //lê cada linha e imprime (no cout abaixo) para se ter o controle do processo
    
                cout <<i<<" "<< j << " "<<matriz[i][j]<<endl; //somente para controle
            }
        }
    
      //fim de aquisição, inicio de manipulação
      
    	cout << endl
             << "Tratando dados na funcao..." << endl    //mais uma vez, para ficar bonitinho
             << endl;
             
    float y[l][c]; //outra matriz y[500][1] só que para gravar agr
    for (i=0; i<l; i++) //iteração
    {
    	for (j = 0; j < c; j++)
            {
            	float x = matriz[i][j]; //x recebe o valor de cada linha lido no Arq01.txt e é usado na função
            	y[i][j] = x* cos(x)* sin(x); //função 01
            	grava << y[i][j] << endl; //"grava" recebe os valores tratados e armazena em Arq02.txt
                cout <<y[i][j]<<endl; //imprime os valores já tratados
            }
    }
    
    }
    
    else 
    {cout<<"\n\tDiretorio incorreto para leitura do arquivo Arq01.txt. Digite um diretorio valido!"<<endl<<endl<<endl;}
       
        system ("pause"); //pausa o programa
        return 0; //fim do processamento
    }

     

    @devair1010 

    adicionado 2 minutos depois

    Esses são os valores de Arq01.txt (o 500 1) é só para usar como matriz

    500 1
    -50
    -49.8
    -49.599
    -49.399
    -49.198
    -48.998
    -48.798
    -48.597
    -48.397
    -48.196
    -47.996
    -47.796
    -47.595
    -47.395
    -47.194
    -46.994
    -46.794
    -46.593
    -46.393
    -46.192
    -45.992
    -45.792
    -45.591
    -45.391
    -45.19
    -44.99
    -44.79
    -44.589
    -44.389
    -44.188
    -43.988
    -43.788
    -43.587
    -43.387
    -43.186
    -42.986
    -42.786
    -42.585
    -42.385
    -42.184
    -41.984
    -41.784
    -41.583
    -41.383
    -41.182
    -40.982
    -40.782
    -40.581
    -40.381
    -40.18
    -39.98
    -39.78
    -39.579
    -39.379
    -39.178
    -38.978
    -38.778
    -38.577
    -38.377
    -38.176
    -37.976
    -37.776
    -37.575
    -37.375
    -37.174
    -36.974
    -36.774
    -36.573
    -36.373
    -36.172
    -35.972
    -35.772
    -35.571
    -35.371
    -35.17
    -34.97
    -34.77
    -34.569
    -34.369
    -34.168
    -33.968
    -33.768
    -33.567
    -33.367
    -33.166
    -32.966
    -32.766
    -32.565
    -32.365
    -32.164
    -31.964
    -31.764
    -31.563
    -31.363
    -31.162
    -30.962
    -30.762
    -30.561
    -30.361
    -30.16
    -29.96
    -29.76
    -29.559
    -29.359
    -29.158
    -28.958
    -28.758
    -28.557
    -28.357
    -28.156
    -27.956
    -27.756
    -27.555
    -27.355
    -27.154
    -26.954
    -26.754
    -26.553
    -26.353
    -26.152
    -25.952
    -25.752
    -25.551
    -25.351
    -25.15
    -24.95
    -24.749
    -24.549
    -24.349
    -24.148
    -23.948
    -23.747
    -23.547
    -23.347
    -23.146
    -22.946
    -22.745
    -22.545
    -22.345
    -22.144
    -21.944
    -21.743
    -21.543
    -21.343
    -21.142
    -20.942
    -20.741
    -20.541
    -20.341
    -20.14
    -19.94
    -19.739
    -19.539
    -19.339
    -19.138
    -18.938
    -18.737
    -18.537
    -18.337
    -18.136
    -17.936
    -17.735
    -17.535
    -17.335
    -17.134
    -16.934
    -16.733
    -16.533
    -16.333
    -16.132
    -15.932
    -15.731
    -15.531
    -15.331
    -15.13
    -14.93
    -14.729
    -14.529
    -14.329
    -14.128
    -13.928
    -13.727
    -13.527
    -13.327
    -13.126
    -12.926
    -12.725
    -12.525
    -12.325
    -12.124
    -11.924
    -11.723
    -11.523
    -11.323
    -11.122
    -10.922
    -10.721
    -10.521
    -10.321
    -10.12
    -9.9198
    -9.7194
    -9.519
    -9.3186
    -9.1182
    -8.9178
    -8.7174
    -8.517
    -8.3166
    -8.1162
    -7.9158
    -7.7154
    -7.515
    -7.3146
    -7.1142
    -6.9138
    -6.7134
    -6.513
    -6.3126
    -6.1122
    -5.9118
    -5.7114
    -5.511
    -5.3106
    -5.1102
    -4.9098
    -4.7094
    -4.509
    -4.3086
    -4.1082
    -3.9078
    -3.7074
    -3.507
    -3.3066
    -3.1062
    -2.9058
    -2.7054
    -2.505
    -2.3046
    -2.1042
    -1.9038
    -1.7034
    -1.503
    -1.3026
    -1.1022
    -0.9018
    -0.7014
    -0.501
    -0.3006
    -0.1002
    0.1002
    0.3006
    0.501
    0.7014
    0.9018
    1.1022
    1.3026
    1.503
    1.7034
    1.9038
    2.1042
    2.3046
    2.505
    2.7054
    2.9058
    3.1062
    3.3066
    3.507
    3.7074
    3.9078
    4.1082
    4.3086
    4.509
    4.7094
    4.9098
    5.1102
    5.3106
    5.511
    5.7114
    5.9118
    6.1122
    6.3126
    6.513
    6.7134
    6.9138
    7.1142
    7.3146
    7.515
    7.7154
    7.9158
    8.1162
    8.3166
    8.517
    8.7174
    8.9178
    9.1182
    9.3186
    9.519
    9.7194
    9.9198
    10.12
    10.321
    10.521
    10.721
    10.922
    11.122
    11.323
    11.523
    11.723
    11.924
    12.124
    12.325
    12.525
    12.725
    12.926
    13.126
    13.327
    13.527
    13.727
    13.928
    14.128
    14.329
    14.529
    14.729
    14.93
    15.13
    15.331
    15.531
    15.731
    15.932
    16.132
    16.333
    16.533
    16.733
    16.934
    17.134
    17.335
    17.535
    17.735
    17.936
    18.136
    18.337
    18.537
    18.737
    18.938
    19.138
    19.339
    19.539
    19.739
    19.94
    20.14
    20.341
    20.541
    20.741
    20.942
    21.142
    21.343
    21.543
    21.743
    21.944
    22.144
    22.345
    22.545
    22.745
    22.946
    23.146
    23.347
    23.547
    23.747
    23.948
    24.148
    24.349
    24.549
    24.749
    24.95
    25.15
    25.351
    25.551
    25.752
    25.952
    26.152
    26.353
    26.553
    26.754
    26.954
    27.154
    27.355
    27.555
    27.756
    27.956
    28.156
    28.357
    28.557
    28.758
    28.958
    29.158
    29.359
    29.559
    29.76
    29.96
    30.16
    30.361
    30.561
    30.762
    30.962
    31.162
    31.363
    31.563
    31.764
    31.964
    32.164
    32.365
    32.565
    32.766
    32.966
    33.166
    33.367
    33.567
    33.768
    33.968
    34.168
    34.369
    34.569
    34.77
    34.97
    35.17
    35.371
    35.571
    35.772
    35.972
    36.172
    36.373
    36.573
    36.774
    36.974
    37.174
    37.375
    37.575
    37.776
    37.976
    38.176
    38.377
    38.577
    38.778
    38.978
    39.178
    39.379
    39.579
    39.78
    39.98
    40.18
    40.381
    40.581
    40.782
    40.982
    41.182
    41.383
    41.583
    41.784
    41.984
    42.184
    42.385
    42.585
    42.786
    42.986
    43.186
    43.387
    43.587
    43.788
    43.988
    44.188
    44.389
    44.589
    44.79
    44.99
    45.19
    45.391
    45.591
    45.792
    45.992
    46.192
    46.393
    46.593
    46.794
    46.994
    47.194
    47.395
    47.595
    47.796
    47.996
    48.196
    48.397
    48.597
    48.798
    48.998
    49.198
    49.399
    49.599
    49.8
    50

    adicionado 5 minutos depois

    Para gerar o gráfico em MatLab, fiz assim:

     


     

    valores_y = load('C:/Users/welin/Desktop/AEDS/PROJECTS/PROJ1 - ARQ01/Arq02.txt'); % comando para carregar valores de um arquivo
    valores_x = load('C:/Users/welin/Desktop/AEDS/PROJECTS/PROJ1 - ARQ01/Arq01x.txt'); % comando para carregar valores de um arquivo
    
    figure('Name','GRAFICO GERADO')
    
    plot(valores_x, valores_y) % cria um gráfico contínuo
    xlabel('X')
    ylabel('f(x)')
    title('f(x) = x cos(x) sin(x)')
    grid on
    

     

    • Curtir 1
    • Amei 1
  10. @Mauro Britivaldo Exatamente como estou fazendo, assisti a vários vídeos, pesquisei em vários fóruns e a ideia está se desenvolvendo... Muito obrigado!!!

    adicionado 2 minutos depois

    @devair1010 exatamente como estou tentando agora. Antes eu tava tentando com 

    arquivoE.is_open()) 
        {
            while(getline(arquivoE, linha) 

    Mais ou menos assim, só que isso dava ruim por conta do getline, mesmo que eu tentasse usar atoi, strtof, coisas do tipo para converter string para float e trabalhar na função 01. 

    Vou tentar por meio do fopen, fscanf e tal em diante... Muitíssimo obrigado !!!

    • Curtir 2
  11. Olá, meus amigos. Preciso implementar um programa para executar os seguintes procedimentos:

    1. Abrir o arquivo Arq01.txt e extrair seus dados. (Esse arquivo tem vários valores aleatórios .txt)

    2. Utilizar os dados do arquivo na Função (1).

    3. Salvar os dados gerados a partir da Função (1) no arquivo Arq02.txt.

                                                 f(x) = x cos(x) sin(x)            Função (1)

    Implementar também uma rotina em outra linguagem (Python) para abrir o Arq02.txt e plotar os dados.

     

    >>>>>>>>>>O que não sei mesmo, por agora, é como vou fazer os procedimentos 1 e 2.<<<<<<<<<<<<<<

     

    Alguém pode me ajudar? 😆

    • Curtir 1
    • Obrigado 1
  12. #include <iostream>
    using namespace std;
    
    int calculaPrimo(int &num)
    {
    int p = calculaPrimo(num);
    }
    int main()
    {
        int num,primoaa=0;
        bool primoa=true;//primod=true;
        cin >> num;
    
        for(int i=num; i>=2; i--)
        {
            for(int j=i-1; j>1; j--)
            {
                if(i%j==0)
                {
                    primoa=false;
                    break;
                }
            }
            if(primoa==true)
            {
                primoaa=i;
                break;
            }
            primoa=true;
        }
        cout << primoaa;
        return 0;
    }

    Galera, para achar o primo abaixo mais proximo da entrada usei esse codigo, mas minha professora pediu para n usarmos BREAK e FALSE/TRUE. O que posso fazer para ter o mesmo resultado sem usar break?

  13. Fala galera. Estou com dúvidas em como fazer o programa reconhecer o primo mais próximo do número inserido no cin.
    objetivo aqui é descobrir qual é o número primo (todo inteiro que é divisível apenas por 1 e por ele próprio) mais próximo de um inteiro (entre 1 e 1.000) dado na entrada
     

    • Curtir 1
  14. #include <iostream> // PROJETO 1 WS
    using namespace std;
    
    int calculaopcao(int o) //funcao opções
    {
        int n=0, m=0, num=0, i=0, j = 1, r=0, soma=0;
            switch (o)
        {
        case 1 :
            cout << "\t\t\tDigite um numero de repeticao:" << endl;
            cin>> r;
            for (int j=1; j<=r; j++){
            cout << "\n1- Calcular inteiros de \"n\" ate \"m\"" << endl;
            cout << "Digite valor inicial \"n\": "<< endl;
            cin>>n;
            cout << "Digite valor final \"m\": "<< endl;
            cin>>m;
            for (i=n; i<=m; i++)
            {
                soma = soma + i;
            }
            cout<<"Scenario#"<<j<<": "<< soma;
            soma = 0;
            }
            break;
        case 2 : //NESSE CASE QUE NÃO CONSEGUI RESOLVER A QUESTAO
            int a,b,cont;
            cout << "2- Determinar qual e o numero faltante numa sequencia." << endl;
            out << "\nDigite um intervalo de \"a\" ate \"b\"" << endl;
            cin>> a>>b;//exemplo 1-4
            for (j=a; j<=b; j++){
            a=b=0;
            cout << "\nDigite essa sequencia anterior de \"a\" ate \"b\"" << endl;
            cin>>
            }
            }
            break;
    }
    
    }
    
    int main()
    {
        int o, op;
                do{
                cout << "\t\t\tDigite uma opcao:" << endl;
                cout << "\t\t\t1- Calcular inteiros de \"n\" ate \"m\""<<endl;
                cout << "\t\t\t2-Determinar qual e o numero faltante numa sequencia."<<endl;
                cin>> o;
                }while (o!=1 && o!=2);
        op = calculaopcao(o);
    
        return 0;
    
    }

    Galera, estou com um programa para fazer. A primeira parte fiz com êxito, já a segunda, estou com dúvidas. Alguém poderia ser claro quanto ao código correto desse case 2 para a resolução do seguinte problema??? (podem postar somente o código do case 2.)

     

    Problema 2: Falta Um 
     
    Um estagiário recebeu a tarefa de gerar sequencialmente todos os números pertencentes à faixa de a até b (inclusive), porém, devido a um erro no código, todas as sequências que foram geradas tiveram exatamente um número faltante! Sua tarefa é determinar qual é o número faltante. 
     
    Tarefa: Seu programa deverá tratar vários casos de teste. A primeira linha de cada caso de teste é composta por dois números, a e b, referentes ao valor inicial e final da faixa (inclusive) da sequencia a ser verificada (o final da entrada é marcado por a = b = 0). A segunda linha de cada caso ser ́a composta pelos valores da faixa, apresentados em ordem crescente e separados por um espaço. 
     
    Limites 0 ≤ a ≤ b ≤ 10.000 (0 utilizado somente para marcar o final). 
     
    Exemplo de Entrada: 1  4              1 2 4              5  9                    6 7 8 9                   0 0

    Exemplo de Saída:     3                    5
     
     

    • Obrigado 1
  15. @devair1010

    #include <iostream>//LISTA 4 Q18
    using namespace std;
    
    int main()
    {
        int a=0, b=0;
    for (int i=0; i<=5; i++);{
    for (int i=0; i<=5; i++);{
        cout<<"Digite 2 valores: "<<endl;
        cin>>a>>b;
    if (a%2==0)//a par
    cout<<"PAR: "<<a;
    if (b%2==0)//a par
    cout<<"PAR: "<<b;
        }
    }
     return 0;
        }
    
    
    
    #include <iostream>//LISTA 4 Q18
    using namespace std;
    
    int main()
    {
        int a=0, b=0;
    for (int i=0; i<=5; i++);{
    for (int i=0; i<=5; i++);{
        cout<<"Digite 2 valores: "<<endl;
        cin>>a>>b;
    if (a%2==0)//a par
    cout<<"PAR: "<<a;
    if (b%2==0)//a par
    cout<<"PAR: "<<b;
        }
    }
     return 0;
        }
    
    
    

    Isso foi o que consegui fazer, nao consigo continuar kk

    • Amei 1
  16. Galera, não to conseguindo interpretar como fazer esse exercicio... alguem me ajuda, c++ pfv!

    Faça um programa que leia cinco pares de valores (a, b), todos inteiros e positivos. Mostre os valores inteiros pares de a até b (inclusive) para cada um dos pares de valores lidos. 

    • Obrigado 1
  17. @herbertbahia

    #include <iostream>
    #include <cstdlib>
    using namespace std;
    int main () {
        int x, quadrante;
        cout << "Informe o angulo em graus: ";
        cin >> x;
        if (x>=0)
        x = (x%360);
        if (x>=0 && x<90)
            cout<<"Primeiro Quadrante."<< endl;
        if (x>90 && x<180)
            cout<<"Segundo Quadrante."<< endl;
        if (x>180 && x<270)
            cout<<"Terceiro Quadrante."<< endl;
        if (x>270 && x<360)
            cout<<"Quarto Quadrante."<< endl;
        if (x==0 || x==90 || x==180 || x==270 || x==360)
            cout<<"Nao pertence a nenhum quadrante,\nmas fica sobre eixos que separam dois quadrantes."<< endl;
        else if (x<0){
             x = (-x%360);
        if (x>0 && x<90)
            cout<<"Primeiro Quadrante."<< endl;
        if (x>90 && x<180)
            cout<<"Segundo Quadrante."<< endl;
        if (x>180 && x<270)
            cout<<"Terceiro Quadrante."<< endl;
        if (x>270 && x<360)
            cout<<"Quarto Quadrante."<< endl;
        if (x==0 || x==90 || x==180 || x==270 || x==360)
            cout<<"Nado pertencem a nenhum quadrante,\n mas ficam sobre eixos que separam dois quadrantes."<< endl;
        }


        system ("PAUSE");
        return 0;
    }
     

    1 hora atrás, Welington Silva 2002 disse:
    
    #include <iostream>
    #include <cstdlib>
    using namespace std;
    int main () {
    
    	int x, quadrante;
    	cout << "Informe o angulo em graus: ";
    	cin >> x;
        if (x>=0 && x<=90){
            cout<< "PRIMEIRO QUADRANTE"<<endl;}
        if (x>=90 && x<=180){
            cout<< "SEGUNDO QUADRANTE"<<endl;}
        if (x>=180 && x<=270){
            cout<< "TERCEIRO QUADRANTE"<<endl;}
        if (x>=270 && x<=360){
            cout<< "QUARTO QUADRANTE"<<endl;}
        else if (x>360 || x<0){
        quadrante = (abs(x) / 360);
    	cout << "Angulo: " << x << "\t" << quadrante << " quadrante\t " << endl;}
    	system ("PAUSE");
    	return 0;
    }

    image.png.20c8110f47bc9fc5256ad8dc26b1644c.png

    Galera, estou em condicionais na facul... Minha dúvida é metodos em c++ para angulos menores que 0 e para maiores que 360. Se alguem puder ajudar ficarei mt feliz. :)

    Até agora meu programa está assim:

    @herbertbahia

  18. #include <iostream>
    #include <cstdlib>
    using namespace std;
    int main () {
    
    	int x, quadrante;
    	cout << "Informe o angulo em graus: ";
    	cin >> x;
        if (x>=0 && x<=90){
            cout<< "PRIMEIRO QUADRANTE"<<endl;}
        if (x>=90 && x<=180){
            cout<< "SEGUNDO QUADRANTE"<<endl;}
        if (x>=180 && x<=270){
            cout<< "TERCEIRO QUADRANTE"<<endl;}
        if (x>=270 && x<=360){
            cout<< "QUARTO QUADRANTE"<<endl;}
        else if (x>360 || x<0){
        quadrante = (abs(x) / 360);
    	cout << "Angulo: " << x << "\t" << quadrante << " quadrante\t " << endl;}
    	system ("PAUSE");
    	return 0;
    }

    image.png.20c8110f47bc9fc5256ad8dc26b1644c.png

    Galera, estou em condicionais na facul... Minha dúvida é metodos em c++ para angulos menores que 0 e para maiores que 360. Se alguem puder ajudar ficarei mt feliz. :)

    Até agora meu programa está assim:

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

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!