Ir ao conteúdo
  • Cadastre-se

Thiago Rosario

Membro Pleno
  • Posts

    21
  • Cadastrado em

  • Última visita

posts postados por Thiago Rosario

  1. @arfneto Eu agradeço os comentários. Então, esse código não é final, eu costumo comentar no fim pro professor entender melhor depois, mas você tem razão, eu deveria ter esclarecido melhor a saída e entrada. Eu também sei que o code blocks e o sharif não são compiladores, eu só quis me referir aos compiladores dos mesmos.

     

    Então, a entrada do algoritmo é pra ser o número de pacotes a ser instalado em um sistema e o número N de dependências entre os mesmos(as arestas). Nas próximas N linhas o usuário vai digitar o números dos pacotes A B, onde A vai depender de B(ou seja, vai ter uma aresta não orientada apontando para B).

    A saída seria uma lista com os índices dos pacotes seguidos pelo número de dependentes, depois o número de dependênicias, e o índice das dependências. Um exemplo simples seria:

    Entrada:

    2 1

    1 2

    Saída:

    1 0 1 2

    2 1 0

    Ou seja, o pacote um tem zero dependentes, tem uma dependência, e essa dependência é o pacote 2. O pacote 2 tem um dependente e 0 dependências.

     

    Outra coisa que eu não clarifiquei bem foi que eu teste este programa em múltiplos compiladores. Nenhum deles deu problema apenas aquele que é usado no sharif judge. Eu procurei por erros comuns e dei printf em múltiplos pontos do código, mas o erro persiste. O problema é que eu não sei nem mesmo o que o problema significa e o que pode estar causando o mesmo.

     

    E sobre o ponto do cursor piscando, isso é requerimento. O programa não pode ter nenhuma mensagem pro usuário, somente a saída.

    • Curtir 1
  2. Boa tarde, tô com um problema desde ontem que não consigo resolver. Tenho que implementar um grafo orientado em C(implementação em matriz de ajdacência), onde o usuário digita a quantidade de nós e a quantidade de arestas entre eles e eu então tenho que listar os nós e dar a informação de cada um, e ele funciona normalmente no codeblocks ou em qualquer outro compilador online. Mas por algum motivo no sharif judge, que é o compilador que minha faculdade usa, ele acusa runtime error. Eu já tentei mudar múltiplas coisas, mas ele simplesmente não aceita. O código em questão é este:

    #include <stdio.h>
    #include <stdlib.h>
    #define MAX 10000
    
    typedef struct item{
    int indice;
    int depende;
    int ajuda;
    }item;
    
    typedef struct tipolista{
    item sequencia[100];
    int quantidade;
    }tipolista;
    
    typedef struct tipomatriz{
    tipolista lista;
    int adjacente[MAX][MAX];
    }tipomatriz;
    
    void iniciar(tipomatriz *matriz){
        int i,j,aux;
        matriz->lista.quantidade=0;
        aux=0;
        while(aux<100){
            matriz->lista.sequencia[aux].ajuda=0;
            matriz->lista.sequencia[aux].depende=0;
            aux++;
        }
    
        for(i=0;i<MAX;i++){
            for(j=0;j<MAX;j++)
                matriz->adjacente[i][j]=0;
    
        }
    }
    
    void inserir(tipomatriz *matriz,int a){
        matriz->lista.sequencia[matriz->lista.quantidade].indice=a;
        matriz->lista.quantidade++;
    }
    
    void criar_aresta(tipomatriz *matriz, int a, int b){
        int x,y;
        x=a-1;
        y=b-1;
        matriz->adjacente[x][y]=1;
        matriz->lista.sequencia[x].depende++;
        matriz->lista.sequencia[y].ajuda++;
    }
    
    void imprimirteste(tipomatriz *matriz){
        int i,j;
    
        for(i=0;i<matriz->lista.quantidade;i++){
            j=0;
            if(i!=0)
                printf("\n");
            printf("%d %d %d",matriz->lista.sequencia[i].indice,matriz->lista.sequencia[i].ajuda,matriz->lista.sequencia[i].depende);
            while(j<=matriz->lista.sequencia[i].depende){
                if(matriz->adjacente[i][j]==1)
                    printf(" %d",matriz->lista.sequencia[j].indice);
                j++;
            }
        }
    
    }
    
    int main()
    {
        int a,b,aux,aux2;
        tipomatriz *matriz=(tipomatriz*)malloc(sizeof(tipomatriz));
        iniciar(matriz);
    
        scanf("%d%d",&a,&b);
    
        for(aux=0;aux<a;aux++){
            aux2=aux+1;
            inserir(matriz,aux2);
        }
    
        for(aux=0;aux<b;aux++){
            scanf("%d %d",&aux2,&a);
            criar_aresta(matriz,aux2,a);
        }
    
        imprimirteste(matriz);
    
        return 0;
    }

    Se alguém puder me dar uma luz eu realmente apreciaria. Meu professor não ajuda em tarefas e os monitores não conseguiram resolver.

  3. Bom dia, montei um pc recentemente e salvei um pouco de dinheiro usando uma televisão da philco, de 2011, como monitor. Funciona bem e sem problemas, mas quando eu coloco um jogo em fullscreen a resolução cai para 1080 ou 720p(a resolução normal é 1380x768) e eu não sei exatamente o que fazer. Mexer nas settings dos jogos não muda nada, e ir pra fullscreen com alt+enter também não. Alguém tem alguma ideia?

  4. Olá, recentemente montei um pc bonzinho(com a ajuda do pessoal aqui do site também, economizei bastante) e agora só queria saber mais uns básicos sobre manutenção. Com a ferramente hwmonitor eu percebi que, enquanto eu faço tarefas simples(ver vídeos, editar textos, navegar em geral, etc) a temperatura do meu pc fica em média nos 30° celsius. Enquanto eu jogo nier automata, que pesa um pouquinho pro meu setup, o processador chega nos 60-70° celsius, queria saber se isso é decente. Eu tenho só o stock cooler da amd e uma ventoinha na parte de trás pra exaustão. Aí se eu quisesse melhorar depois(porque no futuro eu vou comprar uma placa de vídeo) eu queria saber o que seria recomendado, water cooler, air cooler, etc.

     

    Meu pc é esse aqui:

     

    ryzen 3 3200g

    fonte corsair cv550w

    stock cooler amd

    ventoinha fan ryze(1500 rpm)

    16 gb memória ballistic 2666

    gabinete pichau komor.

  5. 1 minuto atrás, Gustavo Muccelin Moreira disse:

    Na verdade não é para ter problemas , porém , Windows de note quando já vem de fábrica , as vezes tem algo relacionado a placa-mãe do note , e então se ligar ele em outro PC , pode ser que ele não deixe acessar já que mudou a placa-mãe , mas se não funcionar , basta formatar , só testando para saber , em situações normais , quando você inicia-se o PC ele apenas irá "preparar os dispositivos" já que mudou tudo , placa-mãe , memórias , etc. 

    ah,então deve ser tranquilo. O windows no ssd não é o que veio de fábrica, eu já formatei ele mais de uma vez na vdd. O que veio de fábrica é o hd sata, que eu pretendo usar só pra armazenar dados mesmo.

  6. Pergunta de novato, mas eu estou montando meu primeiro pc, e o site me ajudou bastante nisso. Eu salvei bastante dinheiro porque já tenho um hd sata e um ssd que eu usava no meu notebook antigo. O negócio é que eu já tenho windows no ssd, e eu queria saber se dá pra usar ele com a placa-mãe e processador novos que eu comprei, ou se eu vou ter que formatar tudo mesmo. Eu ia só testar primeiro,antes de formatar, mas não sei se isso pode causar problemas com a placa-mãe e etc(acho difícil, mas não sei muito sobre o assunto). Minha placa-mãe é uma gigabyte b350 a propósito, alguém que já fez isso pode me avisar se é o caso?

  7. 1 minuto atrás, Gustavo Muccelin Moreira disse:

    Boa , recomendo pegar um Fan de 120MM com CFM (Fluxo de ar) maior ou igual a 40 , somente para colocar na parte traseira do gabinete , para remover o ar quente do PC , assim o PC não entra em superaquecimento. 

    você acha que isso tem urgência ou pode esperar um Mês mais ou menos? porque esse mês eu to zerado agora.

  8. Um último update aqui, pra qqr um consultando. Eu ganhei uma fonte corsair cv 550w e duas memórias ballistic sport lt pretas 16g(2x8) do meu primo, que tá fazendo um upgrade no pc dele. Então meu setup final ficou:

     

    Processador ryzen 3200g

    placa-mãe gigabyte b350

    fonte corsair cv 550w

    memória ram 16gb(2x8) ballistic 2666mhz

    gabinete pichau komor.

     

    como eu ganhei a fonte e os pentes de ram, tudo saiu por menos de 1600 reais. Mas se eu tivesse que pagar por tudo ia dar uns 2100. Um bom pc de entrada eu imagino. Obrigado a todo mundo aqui por me ajudar.

  9. 3 horas atrás, Eduardocf2 disse:

    Mano, essa placa-mãe não funciona com o ryzen 3 3200g, tem altos tópicos na net informando BSOD quando utilizam os 2 juntos.

    Sugiro pegra uma asrock ou qualquer outra, MENOS Colorful

    Tá de boa, eu não peguei ela não. Eu comprei uma gigabyte b350, como o gustavo recomendou. O pessoal fala bem dela

    Eu comprei ela e o ryzen já, só falta o gabinete agora que eu ainda estou procurando.

  10. Eu estou a procura de um gabinete simples, mas eficiente. Estou montando meu primeiro pc e o fórum aqui me ajudou bastante a escolher umas peças com um budget legal. Eu encontrei esse gabinete na pichau por só 200 conto, o que seria ótimo para mim. Ele parece ser decente pra mim que sou leigo(porta de vidro, fonte no chão, etc) mas também parece ser barato e eficiente demais pra não ter um porém. Pesquisei por aí e não acho review nenhuma na internet sobre ele. Vcs acham que vale a pena ou existe uma opção melhor?

    o gabinete em questão:

    https://www.pichau.com.br/hardware/gabinete/gabinete-gamer-aigo-darkflash-bf3-preto-lateral-vidro

     

    minhas peças são essas, a propósito:

    2x8GB (16GB) RAM 3000MHz

    fonte Redragon 500w 80 plus bronze

    Processador AMD Ryzen 3 3200G, Cache 4MB, 3.6GHz (4GHz Max Turbo), AM4 - YD3200C5FHBOX

    placa-mãe gigabyte GA-AB350M-DS3H V2, AMD AM4, mATX, DDR4

  11. Opa, só to aqui de novo porque eu acho melhor do que criar um novo tópico, tomara que não tenha problema. Algumas das peças chegaram e eu tava vendo aqui uns tutoriais de como montar, e se puderem responder umas perguntas ia ajudar bastante:

     

    Aquele ryzen 3200g já vem com pasta térmica aplicada? Além disso, ele vem com a bios atualizada?

     

    Se tiverem algum tutorial bom pras peças que eu tenho seria bem legal também. Agradeço desde já de qqr forma, salvei um bom dinheiro com esse tópico.

  12. Eu tenho basicamente uns 2500-3000 reais guardados por agora pra montar um pc, mas essa vai ser minha primeira vez lidando com pc's, e apesar de ter pesquisado um pouco desde ontem, aprecio dicas e correções.

     

    Isso aqui foi o que eu montei no site da terabyte, até agora:

     

    Processador AMD Ryzen 3 3200G 3.6GHz (4.0GHz Turbo) 4/4 C/Cooler AM4 C/ Video

    placa-mãe Colorful AB350M-K PRO V14, Chipset B350, AMD AM4

    Cooler Alseye EDDY 90B Plus LED Azul ASE90BP Intel/AMD

    Memória DDR4 Geil Orion, 8GB 3000MHz

    SSD 240GB Sata III Leitura 530MBs e Gravação 440MBs(a marca é da sandisk)

    Fonte Redragon RGPS 500W, 80 Plus Bronze, PFC Ativo, GC-PS001

     

    E até agora é isso. O gabinete eu ainda não escolhi, mas eu só vou pelo mais barato honestamente. E eu não escolhi uma placa de vídeo porque a primeiro momento queria tentar ir só com o radeon integrado na ryzen 3200, mas não sei se isso seria muito ruim. O que eu queria mais por agora é jogar os remakes de resident evil no pc, em settings médianas mesmo. Mas não comprei nada ainda, aceito sugestões de que peças trocar ou de como montar uma configuração melhor. Ah, e por favor me avisem se alguma peça não for compatível, eu olhei isso bastante, mas ainda me deixa preocupado. Obrigado.

  13. Peço desculpas se este problema já foi respondido, mas eu usei a função de pesquisa e não achei um igual. Eu estou implementando um programa aos poucos e estou tendo problemas para inserir. Meu programa lê uma string, então percorre a mesma e, toda vez que o caractere não for *,/,- ou +, tem que ler a entrada do usuário e inserir em uma pilha. Na hora de imprimir a pilha, todas as posições voltam zeradas, e não consigo entender o que fiz errado. Meu código até o momento:

     

    #include <stdio.h>
    #include <stdlib.h>
    #include<string.h>
    #define MAXTAM 50
    
    typedef struct{
        float numero[MAXTAM];
        int topo;
    }pilha;
    
    void iniciapilha(pilha *p){
        p->topo=-1;
    };
    
    void insere_na_pilha(pilha *p, float a){
        p->topo++;
        p->numero[p->topo]=a;
    
    };
    
    void imprimir(pilha *p){
        int i=0;
        for(i=0;i<=p->topo;i++)
            printf("\n%d",p->numero[i]);
    };
    int main()
    
    {   char entrada[50];
        int count=0;
        float a;
        pilha *p = (pilha*)malloc(sizeof(pilha));
        iniciapilha(p);
    
        scanf("%s",&entrada);
    
        for(count=0 ; entrada[count] != '\0' ; count++){
            if(entrada[count]!='/' && entrada[count]!='*' && entrada[count]!='-' && entrada[count]!='+'){
                scanf("%f",&a);
                insere_na_pilha(p,a);
            }
        }
    
        imprimir(p);
    
        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!