Ir ao conteúdo
  • Cadastre-se

Igor Vargas

Membro Pleno
  • Posts

    180
  • Cadastrado em

  • Última visita

Tudo que Igor Vargas postou

  1. Eu fiz uma entrevista recentemente e me deparei com a seguinte questão. O desafio era trazer todos os employes que tivessem nomes diferentes. A resposta é A,B,C. Mas fiquei preso na hora de percorrer cada um e comparar com o proximo. Como voce resolveria essa questão const lojas = [ { status: "open", employes: ["a", "b"], }, { status: "open", employes: ["c", "b"], }, { status: "closed", employes: ["d", "b"], }, { status: "open", employes: ["c", "b"], }, ];
  2. @AdrianoSiqueira mudei, mas não adiantou. não sei como resolver isso.
  3. @AdrianoSiqueira sim. Tu pode escolher java 14 ou 8 também estou usando
  4. @AdrianoSiqueira Eu acho que ele só lê se for daquela forma mais como algoritmo mesmo
  5. consegui resolver. Mas mesmo dando a resposta certa o site diz que está errado. O código ficou assim package teste; import java.util.ArrayList; import java.util.Comparator; import java.util.List; import java.util.Random; import java.util.Scanner; public class teste2 { public static final Random RANDOM = new Random(); public static void main(String[] args) { Scanner num = new Scanner(System.in); int quantidade = num.nextInt(); for (int i = 0; i < quantidade; i++) { Cidade cidade = Cidade.gerar(quantidade); cidade.residencias.sort(Comparator.comparingInt(o -> o.consumo)); System.out.println("Cidade# " + (i + 1)); String p1 = "Consumo medio:"; String p2 = "m3."; System.out.println(cidade.residencias.toString().replace("[", "").replace("]","").replace(",", "")); System.out.printf("%s %.2f %s\n",p1, cidade.calcularConsumoPorHabitante(), p2); if (i + 1 < quantidade) { System.out.println(); } } } private static class Residencia { public int moradores; public int consumo; public int media; public Residencia() { } public static Residencia gerar() { Scanner num = new Scanner(System.in); Residencia residencia = new Residencia(); residencia.moradores = num.nextInt(); // [ 1 - 10 ] residencia.consumo = num.nextInt(); // [ 0 - 200] residencia.media = residencia.consumo / residencia.moradores; return residencia; } @Override public String toString() { return moradores + "-" + media; } } private static class Cidade { public List<Residencia> residencias = new ArrayList<>(); public static Cidade gerar(int qtd) { Scanner num = new Scanner(System.in); int quantidade = qtd; // [ 1 - 20 ] Cidade cidade = new Cidade(); for (int i = 0; i < quantidade; i++) { Residencia residencia = Residencia.gerar(); cidade.residencias.add(residencia); } return cidade; } public double calcularConsumoPorHabitante() { int habitantes=0; double consumo=0.0; for (Residencia residencia : residencias) { habitantes += residencia.moradores; consumo += residencia.consumo; } return (habitantes != 0) ? consumo / habitantes : 0.0; } } }
  6. @AdrianoSiqueira Eu não entendi como é feito esse calculo.
  7. @AdrianoSiqueira Aqui também, mas o resultado não sai igual aquele do site.
  8. @AdrianoSiqueira Tu chegou a testar o código que eu passei?. Então o resultado era pra ser aquele, mas o código esta trazendo outro
  9. @AdrianoSiqueira Sim, entendi. Quando eu testo os seguintes numeros ele retorna errado. codigo abaixo. package teste; import java.util.ArrayList; import java.util.Comparator; import java.util.List; import java.util.Random; import java.util.Scanner; public class teste2 { public static final Random RANDOM = new Random(); public static void main(String[] args) { Scanner num = new Scanner(System.in); int quantidade = num.nextInt(); for (int i = 0; i < quantidade; i++) { Cidade cidade = Cidade.gerar(quantidade); cidade.residencias.sort(Comparator.comparingInt(o -> o.consumo)); System.out.println("Cidade #" + (i + 1)); String p1 = "Consumo medio:"; String p2 = "m3."; System.out.println(cidade.residencias.toString().replace("[", "").replace("]","").replace(",", "")); System.out.printf("%s %.2f %s\n",p1, cidade.calcularConsumoPorHabitante(), p2); if (i + 1 < quantidade) { System.out.println(); } } } /** * Classe de modelagem de uma residência. */ private static class Residencia { public int moradores; public int consumo; public Residencia() { } /** * Gera uma {@link Residencia} com quantidades aleatórias de moradores * e de consumo. * * @return Uma instância de {@link Residencia}. */ public static Residencia gerar() { Scanner num = new Scanner(System.in); Residencia residencia = new Residencia(); residencia.moradores = num.nextInt(); // [ 1 - 10 ] residencia.consumo = num.nextInt(); // [ 0 - 200] return residencia; } @Override public String toString() { return moradores + "-" + consumo; } } /** * Classe de modelagem de uma cidade. */ private static class Cidade { public List<Residencia> residencias = new ArrayList<>(); /** * Gera uma {@link Cidade} com quantidade aleatória de {@link Residencia}s. * * @return Uma instância de {@link Cidade}. */ public static Cidade gerar(int qtd) { Scanner num = new Scanner(System.in); int quantidade = qtd; // [ 1 - 20 ] Cidade cidade = new Cidade(); for (int i = 0; i < quantidade; i++) { Residencia residencia = Residencia.gerar(); cidade.residencias.add(residencia); } return cidade; } /** * Calcula o consumo de médio por habitante. Esse método divide o consumo * total de todas as residências pelo total de habitantes de todas as * residências. * * @return Consumo médio por habitante. */ public double calcularConsumoPorHabitante() { int habitantes = 0; double consumo = 0.0; for (Residencia residencia : residencias) { habitantes += residencia.moradores; consumo += residencia.consumo; } return (habitantes != 0) ? consumo / habitantes : 0.0; } } }
  10. @AdrianoSiqueira Tentei adaptar mas não consegui. Fiquei meio confuso de como passar um parâmetro da quantidade de moradores para uma residencial. por exemplo se eu colocar 3 teria que ser repetido o processo mais duas vezes.
  11. @AdrianoSiqueira o problema é o seguinte
  12. @AdrianoSiqueira no site da URI aparece esse erro
  13. @AdrianoSiqueira Mas no caso do site URI ele testa esses valores
  14. Estou com um problema no seguinte código. Estou fazendo o desafio 1023 na URI e o meu código esta retornando Runtime Error. Mas não estou encontrando o problema. import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner ler = new Scanner (System.in); int num; int i,n1,n2,j=1; int[] contas; int[] refs; for(;;){ num = ler.nextInt(); if(num==0){ break; }else{ System.out.print("\n\n"); } contas = new int[num]; refs = new int[200]; int sumP=0,sumA=0; float mediaF=0; int mediaP=0; for(i=0;i<num;i++){ n1=ler.nextInt(); n2=ler.nextInt(); sumP+=n1; sumA+=n2; mediaP=sumA*100/sumP; mediaF=(float)mediaP/100; contas[i]=n2/n1; refs[contas[i]]+=n1; } Arrays.sort(contas); System.out.print("Cidade# "+j+":\n"); for(i=0;i<num;i++){ System.out.print(refs[contas[i]]+"-"+contas[i]+" "); if(i+1<num && contas[i]==contas[i+1]){ i++; } } System.out.printf("\nConsumo medio: %.2f m3.",mediaF); j++; } } }
  15. Olá, estou participando de um desafio no site URI, e ele fica me retornando um erro de runtime. Testei em outros emuladores e funciona normalmente. Qual pode ser o erro?. O desafio é validar um cpf. import java.util.Scanner; class Main { static void cpf(){ Scanner tec = new Scanner(System.in); while(true){ String cpf = tec.nextLine(); int [] vet = new int [9]; int x = 0; int dg1 = 0; int dg2 = 0; if(cpf.length() > 14) break; for(int i = 0;i<11;i++){ if(cpf.charAt(i) == '.' || cpf.charAt(i) == '-'){ }else{ vet[x] = Character.getNumericValue(cpf.charAt(i)); x++; } } x = 0; int j = 9; for(int i = 1;i<=9;i++,j--){ dg1 += (vet[x] * i); dg2 += (vet[x] * j); x++; } if((dg1%11) == 10){ dg1 = 0; }else{ dg1 = dg1%11; } if((dg2%11) == 10){ dg2 = 0; }else{ dg2 = dg2%11; } if(Character.getNumericValue(cpf.charAt(12)) == dg1 && Character.getNumericValue(cpf.charAt(13)) == dg2 ){ System.out.print("CPF valido\n"); }else{ System.out.print("CPF invalido\n"); } } } public static void main(String[] args) { cpf(); } }
  16. Igor Vargas

    PostgreSQL slq min e max

    Olá, estou com duvida no seguinte problema. Como faço para pesquisar o nome mais o maior e menor numero e a media em um sql. Por enquanto consegui isso. falta a media SELECT name, customers_number from lawyers WHERE customers_number = (select MAX(customers_number) from lawyers) Union SELECT name, customers_number from lawyers WHERE customers_number = (select min(customers_number) from lawyers)
  17. Olá. Eu estou com o seguinte erro "The class 'java.lang.String' does not have the property 'nome'". Então basicamente meu controller busca os dados de varios usuarios e retorna um array para a view Controller package br.ufsm.csi.controller; import br.ufsm.csi.dao.UsuarioDAO; import br.ufsm.csi.model.Usuario; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; import java.util.ArrayList; @WebServlet("pesquisa") public class PesquisaController extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String cidade = req.getParameter("cidade"); req.setAttribute("usuarios",new UsuarioDAO().procura(cidade)); System.out.println("Pesquisa feita com sucesso"); RequestDispatcher rd = req.getRequestDispatcher("/pesquisa.jsp"); rd.forward(req, resp); } } Pagina pesquisa jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ page isELIgnored="false" %> <html lang="pt-br"> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <!-- Bootstrap CSS --> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous"> <link rel="stylesheet" type="text/css" href="css/style.css" /> <title>HomeCut</title> </head> <body> <nav class="navbar navbar-expand-lg corOficial shadow "> <a class="navbar-brand logo" href="#">Homecut</a> <button class="navbar-toggler custom-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon" ></span> </button> <div class="collapse navbar-collapse justify-content-center ml-5 corOficial" id="navbarNavAltMarkup"> <div class="navbar-nav corOficial"> <a class="nav-item nav-link active" href="#">Início <span class="sr-only">(current)</span></a> <a class="nav-item nav-link " href="#" tabindex="-1" aria-disabled="false">Entrar</a> </div> </div> </nav> <div class="container contm"> <h1 class="d-flex justify-content-center mt-5">Aqui Você Encontra os Profissionais Mais Perto de Você</h1> </div> <div class="container "> <form method="post" action="pesquisa"> <div class="form-group umform input-group-lg w-100"> <input type="text" placeholder="Digite o nome da sua cidade" name="cidade" class="form-control" aria-describedby="inputGroup-sizing-default"> <button type="submit" class="btn btn-primary botaoPesquisa shadow" name="gravar" value="gravar">Pesquisar</button> </div> </form> </div> <c:forEach var="u" items="usuarios" > <c:if test="${u !=null}"> <div class="container containerPesquisa "> <div class="row mt-5 m-0 border rounded pesquisaPerfil"> <div class="col-lg border"> <h5 class="mt-3">Nome:${u.nome}</h5> <h5>Cidade:${u.cidade} </h5> </div> <div class="col-lg border"> <h5 class="mt-4">Valor:${u.valor}</h5> </div> <div class="col-lg border"> <div class="input-group mb-3 mt-2"> <div class="input-group-prepend"> <label class="input-group-text">Dia</label> </div> <select class="custom-select" id="01"> <option selected>Escolha um dia da semana</option> <option value="1">Segunda-Feira</option> <option value="2">Terça-Feira</option> <option value="3">Quarta-Feira</option> <option value="4">Quinta-Feira</option> <option value="5">Sexta-Feira</option> <option value="6">sábado</option> <option value="7">Domingo</option> </select> </div> <div class="input-group mb-3 mt-0"> <input type="text" class="form-control" placeholder="Digite seu horário" aria-label="Recipient's usernao para atendimentome" aria-describedby="basic-addon2"> <div class="input-group-append"> <button class="btn btn-outline-secondary botaoAgendar" type="button">Agendar</button> </div> </div> </div> </div> </div> </c:if> </c:forEach> <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script> </body> </html> usuarioDAO public ArrayList<Usuario> procura(String cidade){ ArrayList<Usuario> usuarios = new ArrayList<Usuario>(); Usuario usuario = new Usuario(); int num = 2; try(Connection connection = new ConectaDB().getConexao()) { this.sql = "select * from usuario, usuario_permissao, servico WHERE cidade=? AND usuario.id_user=usuario_permissao.id_user and usuario_permissao.id_perm=? and servico.id_user=usuario.id_user"; this.preparedStatement = connection.prepareStatement(this.sql, preparedStatement.RETURN_GENERATED_KEYS); this.preparedStatement.setString(1,cidade); this.preparedStatement.setInt(2,num); this.resultSet = this.preparedStatement.executeQuery(); while(this.resultSet.next()){ usuario.setId_user(this.resultSet.getInt("id_user")); usuario.setNome(this.resultSet.getString("nome")); usuario.setEmail(this.resultSet.getString("email")); usuario.setSenha(this.resultSet.getString("senha")); usuario.setCidade(this.resultSet.getString("cidade")); usuario.setEndereco(this.resultSet.getString("endereco")); usuario.setAtivo(this.resultSet.getBoolean("ativo")); usuario.setPermissao(this.resultSet.getInt("id_perm")); usuario.setValor(this.resultSet.getInt("valor")); usuarios.add(usuario); } } catch (SQLException e) { e.printStackTrace(); } return usuarios; }
  18. Estou usando o emulador easy 6502. E estou com a seguinte duvida. como eu faço para ele ficar verificando a tecla e trocando de letras. Basicamente meu programa troca a letra conforme é apertada no teclado, as letras são "a,e,i,o,u". define syslastkey $ff define ascii_a $61 define ascii_e $65 define ascii_i $69 define ascii_o $6f define ascii_u $75 ;letra a verifica_tecla: lda syslastkey sta $03 cmp ascii_a beq volta lda syslastkey sta $04 cmp ascii_e bne letra_e letra_a: jmp verifica_tecla volta: lda #$01 sta $308 ;parte de cima sta $309 sta $30a sta $30b sta $30c sta $30d sta $30e sta $30f sta $310 sta $311 sta $312 sta $313 sta $314 sta $315 sta $328 ; lateral esquerda sta $348 sta $368 sta $388 sta $3a8 sta $3c8 sta $3e8 sta $408 sta $428 sta $448 sta $468 sta $488 sta $335 ; lateral direita sta $355 sta $375 sta $395 sta $3b5 sta $3d5 sta $3f5 sta $415 sta $435 sta $455 sta $475 sta $495 sta $3c9 ; parte do meio sta $3ca sta $3cb sta $3cc sta $3cd sta $3ce sta $3cf sta $3d0 sta $3d1 sta $3d2 sta $3d3 sta $3d4 jmp verifica_tecla letra_e: lda #$01 sta $308 ;parte de cima sta $309 sta $30a sta $30b sta $30c sta $30d sta $30e sta $30f sta $310 sta $311 sta $312 sta $313 sta $314 sta $315 sta $328 ; lateral esquerda sta $348 sta $368 sta $388 sta $3a8 sta $3c8 sta $3e8 sta $408 sta $428 sta $448 sta $468 sta $488 sta $3c9 ; parte do meio sta $3ca sta $3cb sta $3cc sta $3cd sta $3ce sta $3cf sta $3d0 sta $3d1 sta $3d2 sta $3d3 sta $3d4 sta $3d5 sta $489 ; parte de baixo sta $48a sta $48b sta $48c sta $48d sta $48e sta $48f sta $490 sta $491 sta $492 sta $493 sta $494 sta $495 jmp verifica_tecla
  19. @Bianca Regan valeu pela ajuda. Mas meu problema é em lista encadeada mesmo. To com dificuldade de fazer os apontamentos
  20. Olá estou com duvida em como ordenar com strcmp. Minha funcão cadastra o aluno também ordema.Mas quando cadastro digamos "Barbara" ele fica na frente de "Ana", ele da um erro, onde ele para de funcionar int CadastroAluno(Cad* li){ printf("voce SELECIONOU CADASTRAR ALUNO\n\n"); struct elementoCadastro *no =(struct elementoCadastro*)malloc(sizeof(struct elementoCadastro)); struct Cadastro c; printf("Nome:"); fflush(stdin); gets(c.nome); printf("Nascimento:"); gets(c.nascimento); printf("Endereco:"); gets(c.endereco); printf("Estado:"); gets(c.estado); printf("Cidade:"); gets(c.cidade); printf("Email:"); gets(c.email); printf("CPF:"); scanf("%d",&c.cpf); printf("Telefone:"); scanf("%d",&c.telefone); c.matricula = matricula; int igual =AlunoIgual(li,c); char testando[50]; if(igual == 1){ printf("**Esse cpf ja existe**!\n"); }else{ //int testando = procura(li,c.nome); if(*li==NULL){ no->cadastro = c; no->prox = (*li); no->ant = NULL; if(*li!=NULL){ (*li)->ant = no; } *li = no; }else{ struct elementoCadastro *atual,*ant,*o = *li; printf("Entrou aqui"); while(o!=NULL){ if(strcmp(o->cadastro.nome,c.nome) < 0){ ant = o; return 1; }else{ //no->ant = o; no->cadastro = c; no->prox = (*li); *li= no; }if(ant->prox == NULL){ printf("Entrou no print"); no->cadastro = c; o->prox = no; no->ant = o->prox; *li = no; } o = o->prox; } } } matricula++; printf("Aluno cadastrado com sucesso Matricula -> %d\n\n",no->cadastro.matricula); }
  21. Olá estou com duvida em como posso remover valor iguais da lista. Basicamente o usuário não pode colocar valores que já tem na lista. Eu fiz o seguinte. Minha função igual que cuida disso, mas n esta dando certo. #include <stdio.h> #include <stdlib.h> #include <string.h> struct elemento{ struct elemento *prox; int numero; struct elemento *ant; }; typedef struct elemento *lista; typedef struct elemento Bloco; int igual(lista *li,int num){ Bloco *ant,*p=*li; while(p!=NULL ){ if(num== p->numero){ p->ant->prox = p->prox; if(p->ant == NULL){ *li = p->prox; } } p=p->prox; } return num; /*if(p == NULL){ return 0; } if(p->ant == NULL){ *li = p->prox; }else{ p->ant->prox = p->prox; } free(p);*/ //return li; } int Inserir(lista *li, Bloco num){ if(li == NULL){ return 0; } Bloco *no =(Bloco*)malloc(sizeof(Bloco)); no->numero = igual(li,num.numero); no->prox = (*li); no->ant = NULL; if(*li!=NULL){ (*li)->ant = no; } *li = no; return 1; } void imprime(lista *li){ Bloco *p = *li; while(p->prox!=NULL){ printf("%d->",p->numero); p = p->prox; } } int OrdemCrescente(lista *li){ int n; Bloco *ant,*p = *li; while(p!=NULL){ ant = p; while(ant !=NULL){ if(ant->numero < p->numero){ n = p->numero; p->numero = ant->numero; ant->numero = n; } ant = ant->prox; } p = p->prox; } return 1; } lista *criaLista(){ lista *no=(lista *)malloc(sizeof(lista)); if(no!=NULL){ *no = NULL; } return no; } main(){ lista *li =(lista *)malloc(sizeof(lista)); *li = NULL; Bloco num; int x; do{ printf("\n1- Adicionar\n"); printf("2- Imprimir\n"); scanf("%d",&x); if( x == 1){ printf("Digite um numero:"); scanf("%d",&num.numero); Inserir(li,num); OrdemCrescente(li); }else if( x == 2){ imprime(li); }else{ break; } }while(x!=3); }
  22. @Flávio Pedroza Olá, obrigado pela ajuda. Mas acabei fazendo de outra forma. #include <stdio.h> #include <stdlib.h> #include <string.h> struct Dados{ char placa[9],tipo[50],cor[50]; int anoF; float preco; }; struct Elemento{ struct Dados dados; struct Elemento *prox; }; typedef struct Elemento *lista; lista* criaLista(){ lista *d=(lista*)malloc(sizeof(lista)); printf("Alocou\n"); if(d!=NULL){ *d = NULL; } return d; } int Cadastra(lista *li,struct Dados d){ if( li == NULL){ printf("Algo deu errado"); return 0; } struct Elemento *l =(struct Elemento*)malloc(sizeof(struct Elemento)); if( l == NULL){ printf("Não alocou\n"); }else{ l->dados = d; l->prox = (*li); *li = l; } printf("Cadastrado com sucesso!!\n"); return 1; } Relatorio(lista *li){ struct Elemento *aux = *li; while(aux!=NULL){ printf("\n"); printf("TIPO:%s\n",aux->dados.tipo); printf("PLACA:%s\n",aux->dados.placa); printf("COR:%s\n",aux->dados.cor); printf("ANO:%d\n",aux->dados.anoF); printf("PRECO:%.2f\n",aux->dados.preco); aux=aux->prox; } } main(){ struct Dados d; lista *li; li =criaLista(); int x; do{ printf("1-Cadastrar:\n"); printf("2-Vender:\n"); printf("3-Procurar:\n"); printf("4-Relatorio:\n"); scanf("%d",&x); getchar(); if( x == 1){ printf("Digite o Tipo de Automovel:"); fgets(d.tipo,50,stdin); printf("Digite a Placa do Automovel:"); fgets(d.placa,9,stdin); printf("Digite a Cor do Automovel:"); fgets(d.cor,50,stdin); printf("Digite o Ano do Automovel:"); fflush(stdin); scanf("%d",&d.anoF); printf("Digite o Preco do Automovel:"); scanf("%f",&d.preco); Cadastra(li,d); }else if( x == 2){ }else if( x == 3){ }else if( x == 4){ Relatorio(li); }else{ break; } }while(x!=5); }

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