Ir ao conteúdo
  • Cadastre-se

João Luiz Mainardi

Membro Júnior
  • Posts

    14
  • Cadastrado em

  • Última visita

posts postados por João Luiz Mainardi

  1. Boa noite galera, estou tentado fazer alguns exercícios sobre SQL usando a plataforma MySQL Workbench 8.0, e estou tendo algumas dificuldades em 3 exercicios se algum puder me ajudar me dando uma luz de como fazer estaria muito agradecido

    segue abaixo o DER do exercício

    e as seguintes questões que estou com duvida de como fazer:

    Que mostre o número de filmes locados e o total. Agrupe por cliente.

    Que mostre os 3 endereços que menos efetuaram locações do gênero "COMÉDIA" com o ator que desejar no ano de 2019.

    Que mostre a listagem de clientes da locadora, o último gênero locado e a última data em que locou.

    se alguém conseguir me falar um caminho para seguir já está ótimo,estou realmente empacado nessas questões.

     

    DER_LOCADORA.pdf

  2. Bom dia galera,estou fazendo um trabalho aqui,mas nao acho jeito de conseguir fazer meu código encontrar a mediana, ja tentei de farias formas mas nunca da 100% certo,se alguem puder me orientar. A questão esta no final do código funcão mostrarMediana.

    #include <stdio.h>
    #include <stdlib.h>
    
    typedef struct no {
        int dado;
        struct no *prox;
    } Celula;
    
    
    
    Celula *abrirArquivoPopularPilha(Celula *topo);
    Celula *inserir(int valor, Celula *topo);
    int contarPilha(Celula *topo);
    void exibir(Celula *topo);
    double calcularMedia(Celula *topo);
    void mostrarModa(Celula *topo);
    Celula *popularLista(Celula *lista);
    void mostrarMediana(Celula *lista);
    
    int main() {
        Celula *pilha = NULL;
        Celula *lista = NULL;
    
        pilha = abrirArquivoPopularPilha(pilha);
        lista = popularLista(pilha);
    	if (!pilha) exit(0);
    
    	printf("Dados glicemicos: \n");
        exibir(pilha);
        printf("Ha %d dados de glicemia no arquivo\n", contarPilha(pilha));
        printf("A media de dados glicemicos eh %.2f\n", calcularMedia(pilha));
        mostrarModa(pilha);
    
        bubble_sort(lista);
        exibir(lista);
        mostrarMediana(lista);
        return 1;
    }
    
    Celula *abrirArquivoPopularPilha(Celula *topo) {
        FILE *procurador;
        char nomeArquivo[200];
        int glicemia;
    
        printf("Informe nome arquivo com dados glicemicos: ");
        scanf("%s", nomeArquivo);
        fflush(stdin);
    
        procurador = fopen(nomeArquivo,"r");
        if (!procurador) {
            printf("Arquivo nao encontrado ou invalido\n");
            return topo;
        }
    
        for (;1;) {
            fscanf(procurador,"%d",&glicemia);
            if (feof(procurador)) {
                break;
            }
            topo = inserir(glicemia,topo);
        }
        fclose(procurador);
        return topo;
    }
    
    Celula *inserir(int valor, Celula *topo){
        Celula *novo = (Celula *)malloc(sizeof(Celula));
    
        novo->dado = valor;
        novo->prox = topo;
    
        return novo;
    }
    
    int contarPilha(Celula *topo) {
        Celula *p;
        int conta = 0;
    
        for (p = topo; p; p = p->prox, conta++);
    
        return conta;
    }
    
    void exibir(Celula *topo) {
        Celula *p;
    
    	if (!topo) printf("Pilha vazia");
    
        for (p = topo; p; p = p->prox) {
            printf("%d\n", p->dado);
        }
    }
    
    double calcularMedia(Celula *topo) {
        Celula *p;
        int soma = 0;
    	int conta = 0;
    
    	if (!topo) return 0.0;
    
        for (p = topo; p; p = p->prox) {
        	soma = soma + p->dado;
        	conta++;
        }
    
        return soma/conta;
    }
    
    void mostrarModa(Celula *topo){
    	Celula *p;
    	Celula *pControleGeral = topo;
    	int valorAnalisado;
    	int qtdVezesAparece;
    
    	int valorModa = 0;
    	int qtdValorModa = 0;
    
    	if (!topo || (contarPilha(topo) < 3)) {
    		printf("Pilha vazia ou dados insuficientes para a moda");
    		return;
    	}
    
    	for (pControleGeral = topo; pControleGeral; pControleGeral = pControleGeral->prox) {
    
    		valorAnalisado = pControleGeral->dado;
    		qtdVezesAparece = 0;
    
    	    for (p = topo; p; p = p->prox) {
    	        if (p->dado == valorAnalisado) qtdVezesAparece++;
    	    }
    
    	    if (qtdVezesAparece > 1) {
    	    	if (qtdVezesAparece >= qtdValorModa) {
    				valorModa = valorAnalisado;
    	    		qtdValorModa = qtdVezesAparece;
    	    	}
    	    }
    	}
    
    	printf("O %d eh o valor que aparece %d vezez\n", valorModa, qtdValorModa);
    }
    
    void bubble_sort (Celula *lista){
    
        int houveTroca, tmp;
        Celula *p;
    
        do{
            houveTroca=0;
            for(p=lista; p->prox ; p = p->prox){
                if(p->dado > p->prox->dado){
                    tmp = p->dado;
                    p->dado = p->prox->dado;
                    p->prox->dado = tmp;
                    houveTroca=1;
                }
            }
        }while(houveTroca);
    
    }
    
    
    Celula *inserirSimples(Celula *lista,int valor) {
    	Celula *novo, *p;
    
    	//alocar memoria
    	novo = (Celula *)malloc(sizeof(Celula));
    
    	//depositar valores
    	novo->dado = valor;
    	novo->prox = NULL;
    
    	//percorrer lista
    	if (!lista) return novo;
    
    	for (p = lista; p->prox; p = p->prox);
    
    	//engatar o novo elemento
    	p->prox = novo;
    
    	return lista;
    }
    
    Celula *popularLista(Celula *pilha) {
    	Celula *lista = NULL, *p;
    
    	for (p = pilha; p; p = p->prox) {
            lista = inserirSimples(lista, p->dado);
    	}
    
    	return lista;
    }
    
    void mostrarMediana(Celula *lista){
        Celula *p;
        int mediana, i;
        int indexMediana = (contarPilha(lista) / 2);
        int mediana2;
    
        for(i = 1, p = lista; i < indexMediana; p = p->prox, i++);
        mediana = p->dado;
        mediana2 = p->prox->dado;
        printf("mediana : %d - %d\n", mediana, mediana2);
    }
    

     

  3. Boa noite gente,estou com uma certa duvida,eu assino uma internet de 25MB de uma operador local chamada GPSnet no rio grande do sul.

    A duvida é a seguinte,eu uso o modem deles para a fibra óptica que só tem uma saída e dele eu mando para meu roteador que tem wi-fi que no caso é um Archer-D20 da tp link,mas de alguns dias pra cá,a conexão ficou bem ruim,videos em qualidade boa demoram a carregar,lives trancam mais que tudo, poderia ter algum conflito entre os dois ou meu roteador pode nao estar entregando toda a conexao ou poderia o meu roteador estar indo dessa para melhor. Alguem que entenda de redes e pudesse me dar uma ajuda, ou de configuração se for o caso ou me recomendar um roteador melhor algo assim, desde já eu agradeço.

  4. boa noite forum,estou com um problema no meu codigo,ao abrir pela primeira vez ele funciona perfeitamente, escolho a opção de inserir alunos faço tudo certo,ele altera no arquivo que foi criado e exibe na tela,mas se eu fechar o programa e abrir novamente e colocar somente para exibir alunos,ele nao exibe nada,nao consigo fazer ele abrir este arquivo que ele cria e exibilo na tela novamente,com os dados que tem dentro. Se alguem conseguir me dar uma luz do que fazer eu agradeço muito.

    segue abaixo o codigo.

     

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    #define TAM 1000
    
    typedef struct {
    	char matricula[10];
    	char nome[50];
    	char curso[25];
    } Aluno;
    
    void inicializaLista(Aluno *lista, int n) {
    	int i;
    
    	for (i = 0; i < n; i++) {
    		strcpy(lista[i].matricula,"");
    		strcpy(lista[i].nome,"");
    		strcpy(lista[i].curso,"");
    	}
    }
    
    void copiaAlunosLista2Arquivo(Aluno *lista, int n, char *nomeArquivo) {
    	FILE *procurador = fopen(nomeArquivo,"a"); //foi aberto para escrita
    	int i;
    
    	//fprintf(procurador, "ALUNOS MATRICULADOS\n\n");
    	for (i = 0; i < n; i++) {
    		
    		if (strcmp(lista[i].matricula,"") == 0) {
    			break;
    		} 
    
    		fprintf(procurador, "%s ", lista[i].matricula);
    		fprintf(procurador, "%s ", lista[i].nome);
    		fprintf(procurador, "%s\n", lista[i].curso);
    
    		fflush(procurador);
    	}
    
    	fclose(procurador);
    }
    
    void insereAluno(Aluno *lista, int n) {
    	int i;
    	FILE *procurador = fopen("salvaAlunos.txt","a");
    	char matricula[10];
    
    	printf("Matricula: ");
    	scanf("%s", matricula);
    	fflush(stdin);
    
    	for (i = 0; i < n; i++) {
    
    		if (strcmp(lista[i].matricula, matricula) == 0) {
    			printf("Matricula já cadastrada. Voltando para menu\n");
    			break;
    		}
    
    		if (strcmp(lista[i].matricula,"") == 0) {
    			printf("Aluno sera inserido na posicao %d.\n", i);
    	
    			strcpy(lista[i].matricula, matricula);
    
    			printf("Nome: ");
    			scanf("%s",lista[i].nome);
    			fflush(stdin);
    
    			printf("Sigla curso: ");
    			scanf("%s", lista[i].curso);
    			fflush(stdin);
    
    			fprintf(procurador, "%s ", lista[i].matricula);
    			fprintf(procurador, "%s ", lista[i].nome);
    			fprintf(procurador, "%s\n", lista[i].curso);
    
    			fclose(procurador);
    
    			break;
    		}
    	}
    
    	if (i == n) printf("Lista cheia!\n");
    }
    
    void exibeAlunos(Aluno *lista, int n) {
    	int i;
    
    	for (i = 0; i < n; i++) {
    		if (strcmp(lista[i].matricula,"") == 0) {
    			break;
    		}
    		printf("Matricula: %s\n", lista[i].matricula);
    		printf("Nome     : %s\n", lista[i].nome);
    		printf("Curso    : %s\n", lista[i].curso);
    		printf("--------------------------------------\n");
    	}
    }
    
    
    int main() {
    	Aluno lista[TAM];
    	int opcao;
    
    	inicializaLista(lista, TAM);
    
    	do {
    		printf("1 - Insere aluno; 2 - Lista alunos; 3 - Remove aluno; 4 - Sai\n");
    		printf("Opcao: ");
    		scanf("%d", &opcao);
    
    		switch (opcao) {
    			case 1 : printf("INSERCAO DE ALUNO!\n\n");
    					 insereAluno(lista,TAM);
    			         break;
    			case 2 : printf("EXIBICAO DE ALUNOS!\n\n");
    			         exibeAlunos(lista, TAM);
    			         break;
    			case 3 : 
    			         break;
    			case 4 : 
    			         break;	
    			default : printf("Opcao invalida!!\n");		         
    		}
    
    	} while (opcao != 4);
    
    
    	//copiaAlunosLista2Arquivo(lista, TAM, "salvaAlunos.txt");
    
    	return 1;
    }

     

    • Curtir 1
  5. Boa noite pessoal,recebi uma lista de exercícios para fazer e estou com certa dificuldade,se alguém puder dar uma luz de como começar estes exercícios eu agradeço

     

    Utilizando ponteiros, desenvolva os seguintes algoritmos:

    1 - Ler uma string e escreve-la verticalmente na tela.

     

    2 - Ler uma string e contar quantos caracteres possui.

     

    3 - Ler uma string e inverte-la dentro da mesma string.

  6. Boa noite, percebi ao ligar o computador hoje que ele estava muito lento,começou com o windows update usando 100% com alguns vídeos da internet consegui fazer com que ele não usasse mais, mas sempre que consigo fazer um programa parar de usar 100% do disco,sempre vem outro programa e começa no caso do print esta o que ta usando 100% agora.

     

    minha placa mão é uma Asus b150 pro gaming/aura processador segue o print.

     

    será que formato e instalo um windows 7 é algum bug que tem solução.

    Agradeço a ajuda.

    1.png

    2.png

  7. Bom dia galera sou novo no fórum e meu problema é o seguinte,mantei montar o pc em uma loja conhecida da minha cidade e montaram tudo certinho OBS: placa-mãe estava fora do gabinete para testes. resumindo a placa-mãe não ligou acende os led's,no q-ram que indica se esta tudo ok acende o led da cpu e não liga mais nada,os técnicos,e não entra na bios a tela fica preta e não chega na bios, falaram que podia ser a placa-mãe,porque eles testaram processador e memoria diferentes das minhas e mesmo assim não ligou. As configurações do meu pc é a seguinte. placa-mãe: asus b150m pro gaming Processador: i5-7500 Memoria: hyperx ddr4.

    Alguém já pegou um problema parecido ou devo acionar a garantia mesmo, muito obrigado desde já galera

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!