Ir ao conteúdo
  • Cadastre-se

glaukito

Membro Pleno
  • Total de itens

    24
  • Cadastrado em

  • Última visita

  • Qualificações

    0%
  1. boa noite amigo! estou com dificuldade em implementar nesse código (fila) o fila dupla circular. alguma sugestão? desde já grato pela atenção. #include <stdio.h> #include <stdlib.h> struct Node{ int num; struct Node *prox; }; typedef struct Node node; int tam; int menu(void); void opcao(node *FILA, int op); void inicia(node *FILA); int vazia(node *FILA); node *aloca(); void insere(node *FILA); node *retira(node *FILA); void exibe(node *FILA); void libera(node *FILA); int main(void) { node *FILA = (node *) malloc(sizeof(node)); if(!FILA){ printf("Sem memoria disponivel!\n"); exit(1); }else{ inicia(FILA); int opt; do{ opt=menu(); opcao(FILA,opt); }while(opt); free(FILA); return 0; } } void inicia(node *FILA) { FILA->prox = NULL; tam=0; } int vazia(node *FILA) { if(FILA->prox == NULL) return 1; else return 0; } node *aloca() { node *novo=(node *) malloc(sizeof(node)); if(!novo){ printf("Sem memoria disponivel!\n"); exit(1); }else{ printf("Novo elemento: "); scanf("%d", &novo->num); return novo; } } void insere(node *FILA) { node *novo=aloca(); novo->prox = NULL; if(vazia(FILA)) FILA->prox=novo; else{ node *tmp = FILA->prox; while(tmp->prox != NULL) tmp = tmp->prox; tmp->prox = novo; } tam++; } node *retira(node *FILA) { if(FILA->prox == NULL){ printf("Fila ja esta vazia\n"); return NULL; }else{ node *tmp = FILA->prox; FILA->prox = tmp->prox; tam--; return tmp; } } void exibe(node *FILA) { if(vazia(FILA)){ printf("Fila vazia!\n\n"); return ; } node *tmp; tmp = FILA->prox; printf("Fila :"); while( tmp != NULL){ printf("%5d", tmp->num); tmp = tmp->prox; } printf("\n "); int count; for(count=0 ; count < tam ; count++) printf(" ^ "); printf("\nOrdem:"); for(count=0 ; count < tam ; count++) printf("%5d", count+1); printf("\n\n"); } void libera(node *FILA) { if(!vazia(FILA)){ node *proxNode, *atual; atual = FILA->prox; while(atual != NULL){ proxNode = atual->prox; free(atual); atual = proxNode; } } } int menu(void) { int opt; printf("Escolha a opcao\n"); printf("0. Sair\n"); printf("1. Zerar fila\n"); printf("2. Exibir fila\n"); printf("3. Adicionar Elemento na Fila\n"); printf("4. Retirar Elemento da Fila\n"); printf("Opcao: "); scanf("%d", &opt); return opt; } void opcao(node *FILA, int op) { node *tmp; switch(op){ case 0: libera(FILA); break; case 1: libera(FILA); inicia(FILA); break; case 2: exibe(FILA); break; case 3: insere(FILA); break; case 4: tmp= retira(FILA); if(tmp != NULL){ printf("Retirado: %3d\n\n", tmp->num); libera(tmp); } break; default: printf("Comando invalido\n\n"); } }
  2. Implementei esse código, porém, estou com dificuldade em criar um menu de forma que o usuário utilize livremente todas as funções disponíveis no código de lista. Também tentei implementar a opção busca, com a finalidade de encontrar a localização das informações da pilha (fracassei miseravelmente). Alguma sugestão para fazer essas implementações? Valeu! #include <stdio.h> #include <stdlib.h> struct lista{ int info; struct lista* prox; }; typedef struct lista Lista; Lista* cria(void){ return NULL; } int vazia(Lista* lista){ if(lista == NULL){ printf("\nA lista esta vazia!\n"); }else{ printf("\nA lista nao esta vazia!\n"); } } Lista* insere(Lista* lista, int info){ Lista* l = (Lista*) malloc(sizeof(Lista)); l->info = info; l->prox = lista; printf("\nO valor %d foi inserido na lista com sucesso!", info); return l; } Lista* retira(Lista* lista, int info){ Lista* ant = NULL; Lista* l = lista; if(lista == NULL){ printf("\nLista esta vazia. Nao foi encontrado a informacao %d.\n", info); } while(l != NULL && l->info != info){ ant = l; l = l->prox; } if(l == NULL){ return lista; } if(ant == NULL){ lista = l->prox; }else{ ant->prox = l->prox; } free(l); printf("\nO valor %d foi removido da lista com sucesso!\n", info); return lista; } void imprime(Lista* lista){ Lista* l; printf("\n\nLista:\n"); for (l = lista; l != NULL; l = l->prox){ printf(" Informacao = %d\n", l->info); } printf("\n"); } Lista* busca(Lista* lista, int info){ Lista* l; int posicao = 1; printf("\nResultado da busca de %d na lista:",info); for (l = lista; l != NULL; l = l->prox){ if (l->info == info){ printf("\n Informacao encontrada na posicao %d da lista.", posicao); } posicao++; } printf("\n"); return NULL; } void libera(Lista* lista){ Lista* l = lista; while (l != NULL) { Lista* ant = l->prox; free(l); l = ant; } printf("\nMemoria liberada! Lista encerrada com sucesso!\n\n"); } int main(){ Lista* lista_idades; lista_idades = cria(); vazia(lista_idades); lista_idades = retira(lista_idades, 38); lista_idades = insere(lista_idades, 38); lista_idades = insere(lista_idades, 2); lista_idades = insere(lista_idades, 45); lista_idades = insere(lista_idades, 11); lista_idades = insere(lista_idades, 45); lista_idades = insere(lista_idades, 2); lista_idades = insere(lista_idades, 99); imprime(lista_idades); lista_idades = retira(lista_idades, 38); imprime(lista_idades); busca(lista_idades, 2); libera(lista_idades);
  3. obrigado a todos pelas informações foram de extrema ajuda! aquele abraço!
  4. boa noite! não consegui implementar essas duas funções: imprimir número primos e mostrar valores das quatro pontas da matriz (case 5 e 6). alguma sugestão? abraço! #include <stdlib.h> #include <stdio.h> struct matriz{ int linha; int coluna; float* valor; }; typedef struct matriz Matriz; Matriz* cria(int m, int n){ Matriz* mat = (Matriz*)malloc(sizeof(Matriz)); if (mat == NULL){ printf("Memoria insuficiente!\n"); exit(1); } mat->linha = m; mat->coluna = n; mat->valor = (float*)malloc(m*n*sizeof(float)); return mat; } void libera(Matriz* mat){ free(mat->valor); free(mat); } float acessa(Matriz* mat, int i, int j) { int k; // verifica se a coordenada informada é valida. if (i < 0 || i >= mat->linha || j < 0 || j >= mat->coluna) { printf("Acesso invalido!\n"); exit(1); } k = i * mat->coluna + j; return mat->valor[k]; } void atribui(Matriz* mat, int i, int j, float valor) { int k; if (i < 0 || i >= mat->linha || j < 0 || j >= mat->coluna) { printf("Atribuicao invalida!\n"); exit(1); } k = i * mat->coluna + j; mat->valor[k] = valor; } int linhas(Matriz* mat){ return mat->linha; } int colunas(Matriz* mat){ return mat->coluna; } int main(){ int opcao; Matriz* matriz; printf ("Desejas criar a Matriz?\n"); printf ("digite 1 para sim ou 2 para nao: "); scanf ("%d", &opcao); if (opcao == 1){ int l, c; printf ("quantas linhas deve ter a matriz? "); scanf ("%d", &l); printf ("quantas colunas deve ter a matriz? "); scanf ("%d", &c); matriz = cria(l,c); } do { int opcao2 = 8; printf ("1 - inserir valor na matriz\n"); printf ("2 - consultar a matriz\n"); printf ("3 - mostrar quantidade de linhas\n"); printf ("4 - mostrar quantidade de colunas\n"); printf ("5 - mostrar as quatro extremidades da matriz\n"); printf ("6 - mostrar os numeros primos\n"); printf ("7 - sair\n"); printf ("qual a opcao? "); scanf ("%d", &opcao2); int l_u, c_u, valor, qtd_linhas, qtd_colunas, *primos, i, primo; switch (opcao2) { case 1: printf ("qual a linha onde sera atribuido o valor? "); scanf ("%d", &l_u); printf ("qual a coluna onde sera atribuido o valor? "); scanf ("%d", &c_u); printf ("qual o valor que sera atribuido? "); scanf ("%d", &valor); atribui(matriz, l_u, c_u, valor); primos = (int *)malloc(valor * sizeof(int)); for (i = 2; i <= valor / 2; i++) { if (valor % i == 0) { primo++; break; } } if (primo == 0){ printf ("%d\n", valor); } printf ("o valor foi atribuido\n"); break; case 2: printf ("qual a linha onde sera acessado o valor? "); scanf ("%d", &l_u); printf ("qual a coluna onde sera acessado o valor? "); scanf ("%d", &c_u); float consulta = acessa(matriz, l_u, c_u); printf("o valor consultado foi: %.2f\n", consulta); break; case 3: qtd_linhas = linhas(matriz); printf ("a quantidade de linhas na matriz são: %d\n", qtd_linhas); break; case 4: qtd_colunas = colunas(matriz); printf ("a quantidade de colunas na matriz são: %d\n", qtd_colunas); break; case 5: printf ("%d\n", matriz[i][j]); break; break; case 6: printf ("%d\n", primos[0]); break; case 7: libera(matriz); break; default: break; } } while (opcao != 2); }
  5. @AdrianoSiqueira muito obrigado pela ajuda. uma grande abraço!
  6. muito obrigado @AdrianoSiqueira! o que você modificaria no código para que ele fique menos complexo?
  7. import java.util.ArrayList; import java.util.List; public class Agenda { List<Contato> contatos = new ArrayList<>(); public void adicionarContato(Contato contato) { contatos.add(contato); } public void excluirContato(Contato contato) { contatos.remove(contato); } public Contato buscarNomeContato(String nome) { for (Contato contato : contatos) { if (contato.getNome().equals(nome)) return contato; } return null; } public Contato buscarTelefoneContato(String telefone) { for (Contato contato : contatos) { if (contato.getTelefone().equals(telefone)) return contato; } return null; } @Override public String toString() { return "Agenda{" + "contatos=" + contatos + '}'; } } ------------------- import java.time.LocalDate; import java.util.ArrayList; import java.util.List; public class AgendaTest { public static void main(String[] args) { Agenda agenda = new Agenda(); Telefone tel1 = new Telefone("telefone 1-1"); Conhecido contato1 = new Conhecido("contato 1", tel1); Telefone tel2 = new Telefone("telefone 2-1"); Amigo contato2 = new Amigo("contato 2", tel2); Telefone tel3 = new Telefone("telefone 3-1"); Familia contato3 = new Familia("contato 3", tel3, "mamãe"); //adiciona pessoa agenda.adicionarContato(contato1); agenda.adicionarContato(contato2); agenda.adicionarContato(contato3); //print para verificação dos contatos adicionados System.out.println("adicionado com sucesso" + "\n" + agenda.toString()); //exclusão pessoa agenda.excluirContato(contato1); System.out.println("excluído com sucesso" + "\n" + agenda.toString()); //buscar contato Contato resultadoBuscarNomeContato = agenda.buscarNomeContato("contato 2"); System.out.println("achou a pessoa com sucesso" + "\n" + resultadoBuscarNomeContato); //buscar contato pelo telefone Contato resultadoBuscarTelefoneContato = agenda.buscarTelefoneContato("telefone 3-1"); System.out.println("achou a pessoa pelo telefone com sucesso" + "\n" + resultadoBuscarTelefoneContato); } } ------------------- public class Amigo extends Contato { public Amigo(String nome, Telefone telefone) { super(nome, telefone); } @Override public String toString() { return "Amigo{" + "nome='" + nome + '\'' + ", telefone=" + telefone + ", email=" + email + ", dataDeAniversario=" + dataDeAniversario + ", endereco=" + endereco + '}'; } } ------------------- public class Conhecido extends Contato { public Conhecido(String nome, Telefone telefone) { super(nome, telefone); } @Override public String toString() { return "Conhecido{" + "nome='" + nome + '\'' + ", telefone=" + telefone + ", email=" + email + ", dataDeAniversario=" + dataDeAniversario + ", endereco=" + endereco + '}'; } } ------------------- import java.time.LocalDate; public abstract class Contato { protected String nome; protected Telefone telefone; protected Email email; protected LocalDate dataDeAniversario; protected Endereco endereco; public Contato(String nome, Telefone telefone) { this.nome = nome; this.telefone = telefone; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public Telefone getTelefone() { return telefone; } public void setTelefone(Telefone telefone) { this.telefone = telefone; } public Email getEmail() { return email; } public void setEmail(Email email) { this.email = email; } public LocalDate getDataDeAniversario() { return dataDeAniversario; } public void setDataDeAniversario(LocalDate dataDeAniversario) { this.dataDeAniversario = dataDeAniversario; } public Endereco getEndereco() { return endereco; } public void setEndereco(Endereco endereco) { this.endereco = endereco; } @Override public String toString() { return "Contato{" + "nome='" + nome + '\'' + ", telefone=" + telefone + ", email=" + email + ", dataDeAniversario=" + dataDeAniversario + ", endereco=" + endereco + '}'; } } ------------------- public class Email { private String Email; public Email(String email) { Email = email; } public String getEmail() { return Email; } public void setEmail(String email) { Email = email; } @Override public String toString() { return "Email{" + "Email='" + Email + '\'' + '}'; } } ------------------- public abstract class Endereco { private String logradouro; private String complemento; private String bairro; private String CEP; private String cidade; private String estado; private String pais; public Endereco(String logradouro) { this.logradouro = logradouro; } public String getLogradouro() { return logradouro; } public void setLogradouro(String logradouro) { this.logradouro = logradouro; } public String getComplemento() { return complemento; } public void setComplemento(String complemento) { this.complemento = complemento; } public String getBairro() { return bairro; } public void setBairro(String bairro) { this.bairro = bairro; } public String getCEP() { return CEP; } public void setCEP(String CEP) { this.CEP = CEP; } public String getCidade() { return cidade; } public void setCidade(String cidade) { this.cidade = cidade; } public String getEstado() { return estado; } public void setEstado(String estado) { this.estado = estado; } public String getPais() { return pais; } public void setPais(String pais) { this.pais = pais; } @Override public String toString() { return "Endereco{" + "logradouro='" + logradouro + '\'' + ", complemento='" + complemento + '\'' + ", bairro='" + bairro + '\'' + ", CEP='" + CEP + '\'' + ", cidade='" + cidade + '\'' + ", estado='" + estado + '\'' + ", pais='" + pais + '\'' + '}'; } } ------------------- public class EnderecoComercial extends Endereco{ public EnderecoComercial(String logradouro) { super(logradouro); } } ------------------- public class EnderecoResidencial extends Endereco { private String pontoReferencia; public EnderecoResidencial(String logradouro, String pontoReferencia) { super(logradouro); this.pontoReferencia = pontoReferencia; } @Override public String toString() { return "EnderecoResidencial{" + "pontoReferencia='" + pontoReferencia + '\'' + '}'; } } ------------------- public class Familia extends Contato { private String Parentesco; public Familia(String nome, Telefone telefone, String parentesco) { super(nome, telefone); Parentesco = parentesco; } public String getParentesco() { return Parentesco; } public void setParentesco(String parentesco) { Parentesco = parentesco; } @Override public String toString() { return "Familia{" + "Parentesco='" + Parentesco + '\'' + ", nome='" + nome + '\'' + ", telefone=" + telefone + ", email=" + email + ", dataDeAniversario=" + dataDeAniversario + ", endereco=" + endereco + '}'; } } //------------------- public class Telefone { private String telefone; public Telefone(String telefone) { this.telefone = telefone; } public String getTelefone() { return telefone; } public void setTelefone(String telefone) { this.telefone = telefone; } @Override public String toString() { return "Telefone{" + "telefone='" + telefone + '\'' + '}'; } } boa tarde, amigos! a dúvida é a seguinte: ao fazer a busca do contato através do número de telefone é retornado null. Onde está o erro? Valeu!
  8. package model; import java.time.LocalDate; import java.util.ArrayList; import java.util.List; public class Principal { public static void main(String[] args) { Agenda agenda = new Agenda(); //dados Telefone tel1 = new Telefone("Telefone 1"); Email email1 = new Email("Email 1"); Endereco end1 = new Endereco("Logradouro 1"); Pessoa p1 = new Pessoa("Pessoa 1", tel1, email1, end1, LocalDate.of(1901, 01, 01)); Telefone tel2 = new Telefone("Telefone 2"); Email email2 = new Email("Email 2"); Endereco end2 = new Endereco("Logradouro 2"); Pessoa p2 = new Pessoa("Pessoa 2", tel2, email2, end2, LocalDate.of(1902, 02, 02)); //adiciona telefone agenda.adicionarTelefone(tel1); agenda.adicionarTelefone(tel2); //adiciona email agenda.adicionarEmail(email1); agenda.adicionarEmail(email2); //adiciona pessoa agenda.adicionarPessoa(p1); agenda.adicionarPessoa(p2); //print para verificação dos dados do objeto System.out.println("inseridos com sucesso" + "\n" + agenda.contatoNaAgenda()); //exclusão pessoa agenda.excluirPessoa(p1); //print para verificação dos dados após exclusão System.out.println("excluído com sucesso" + "\n" + agenda.contatoNaAgenda()); //buscar pessoa Pessoa resultadoBuscaPessoa = agenda.buscarNome("Pessoa 2"); System.out.println("achou a pessoa com sucesso" + "\n" + resultadoBuscaPessoa); //buscar telefone Telefone resultadoBuscaTelefone = agenda.buscarTelefone("Pessoa 2"); System.out.println("achou o número com sucesso" + "\n" + resultadoBuscaTelefone); //buscar email Email resultadoBuscaEmail = agenda.buscarEmail("Email 2"); System.out.println("achou o email com sucesso" + "\n" + resultadoBuscaEmail); } } //------------------------------------ package model; import java.time.LocalDate; public class Pessoa { private String nome; private Telefone tel; private Email email; private Endereco endereco; private LocalDate dataDeAniversario; public Pessoa(String nome, Telefone tel, Email email, Endereco endereco, LocalDate dataDeAniversario) { this.nome = nome; this.tel = tel; this.email = email; this.endereco = endereco; this.dataDeAniversario = dataDeAniversario; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public Telefone getTel() { return tel; } public void setTel(Telefone tel) { this.tel = tel; } public Email getEmail() { return email; } public void setEmail(Email email) { this.email = email; } public Endereco getEndereco() { return endereco; } public void setEndereco(Endereco endereco) { this.endereco = endereco; } public LocalDate getDataDeAniversario() { return dataDeAniversario; } public void setDataDeAniversario(LocalDate dataDeAniversario) { this.dataDeAniversario = dataDeAniversario; } @Override public String toString() { return "Pessoa{" + "nome='" + nome + '\'' + ", tel=" + tel + ", email=" + email + ", endereco=" + endereco + ", dataDeAniversario=" + dataDeAniversario + '}'; } } //------------------------------------ package model; import java.util.ArrayList; import java.util.List; public class Agenda { List<Pessoa> pessoas = new ArrayList<Pessoa>(); public void adicionarPessoa(Pessoa pessoa) { pessoas.add(pessoa); } public void excluirPessoa(Pessoa pessoa) { pessoas.remove(pessoa); } public Pessoa buscarNome(String nome) { for (Pessoa pessoa : pessoas) { if (pessoa.getNome().equals(nome)) return pessoa; } return null; } List<Telefone> telefones = new ArrayList<Telefone>(); public void adicionarTelefone(Telefone telefone) { telefones.add(telefone); } public void excluirTelefone(Telefone telefone) { telefones.remove(telefone); } public Telefone buscarTelefone(String tel) { for (Telefone telefone : telefones) { if (telefone.getTel().equals(tel)) return telefone; } return null; } List<Email> emails = new ArrayList<Email>(); public void adicionarEmail(Email email) { emails.add(email); } public void excluirEmail(Email email) { emails.remove(email); } public Email buscarEmail(String email) { for (Email email : emails) { if (email.getEmail().equals(email)) return email; } return null; } public String contatoNaAgenda() { return "Agenda{" + "pessoas=" + pessoas + ", telefones=" + telefones + ", emails=" + emails + '}'; } } //------------------------------------ package model; public class Email { private String email; public Email(String email) { this.email = email; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String toString() { return "Email{" + "email='" + email + '\'' + '}'; } } //------------------------------------ package model; public class Telefone { private String tel; public Telefone(String tel) { this.tel = tel; } public String getTel() { return tel; } public void setTel(String tel) { this.tel = tel; } @Override public String toString() { return "Telefone{" + "tel='" + tel + '\'' + '}'; } } //------------------------------------ package model; public class Endereco { private String logradouro; private int complemento; private String bairro; private int CEP; private String cidade; private String estado; private String pais; public Endereco(String logradouro) { this.logradouro = logradouro; } public String getLogradouro() { return logradouro; } public void setLogradouro(String logradouro) { this.logradouro = logradouro; } public int getComplemento() { return complemento; } public void setComplemento(int complemento) { this.complemento = complemento; } public String gzzzetBairro() { return bairro; } public void setBairro(String bairro) { this.bairro = bairro; } public int getCEP() { return CEP; } public void setCEP(int CEP) { this.CEP = CEP; } public String getCidade() { return cidade; } public void setCidade(String cidade) { this.cidade = cidade; } public String getEstado() { return estado; } public void setEstado(String estado) { this.estado = estado; } public String getPais() { return pais; } public void setPais(String pais) { this.pais = pais; } @Override public String toString() { return "Endereco{" + "logradouro='" + logradouro + '\'' + ", complemento=" + complemento + ", bairro='" + bairro + '\'' + ", CEP=" + CEP + ", cidade='" + cidade + '\'' + ", estado='" + estado + '\'' + ", pais='" + pais + '\'' + '}'; } } //------------------------------------ package model; public class EnderecoComercial extends Endereco{ public EnderecoComercial(String logradouro) { super(logradouro); } } //------------------------------------ package model; public class EnderecoResidencial extends Endereco { private String pontoReferencia; public EnderecoResidencial(String logradouro) { super(logradouro); } public String getPontoReferencia() { return pontoReferencia; } public void setPontoReferencia(String pontoReferencia) { this.pontoReferencia = pontoReferencia; } } boa noite! aparece a mensagem ao compilar: Error:(55, 20) java: variable email is already defined in method buscarEmail(java.lang.String) valeu!
  9. tens razão! muito obrigado pela ajuda.
  10. package model; import java.util.ArrayList; import java.util.List; public class Agenda { List<Pessoa> pessoas = new ArrayList<Pessoa>(); public void adicionarPessoa(Pessoa pessoa) { pessoas.add(pessoa); } public void excluirPessoa(Pessoa pessoa) { pessoas.remove(pessoa); } public Pessoa buscarNome(String nome) { for (Pessoa pessoa : pessoas) { if (pessoa.getNome().equals(nome)) return pessoa; } return null; } List<Telefone> telefones = new ArrayList<Telefone>(); public void adicionarTelefone(Telefone telefone) { telefones.add(telefone); } public void excluirTelefone(Telefone telefone) { pessoas.remove(telefone); } public Telefone buscarTelefone(String tel) { for (Telefone telefone : telefones) { if (telefone.getTel().equals(telefone)) return telefone; } return null; } public String contatoNaAgenda() { return "Agenda{" + "pessoas=" + pessoas + ", telefones=" + telefones + '}'; } } //----------------------------- package model; public class Endereco { private String logradouro; private int complemento; private String bairro; private int CEP; private String cidade; private String estado; private String pais; public Endereco(String logradouro) { this.logradouro = logradouro; } public String getLogradouro() { return logradouro; } public void setLogradouro(String logradouro) { this.logradouro = logradouro; } public int getComplemento() { return complemento; } public void setComplemento(int complemento) { this.complemento = complemento; } public String gzzzetBairro() { return bairro; } public void setBairro(String bairro) { this.bairro = bairro; } public int getCEP() { return CEP; } public void setCEP(int CEP) { this.CEP = CEP; } public String getCidade() { return cidade; } public void setCidade(String cidade) { this.cidade = cidade; } public String getEstado() { return estado; } public void setEstado(String estado) { this.estado = estado; } public String getPais() { return pais; } public void setPais(String pais) { this.pais = pais; } @Override public String toString() { return "Endereco{" + "logradouro='" + logradouro + '\'' + ", complemento=" + complemento + ", bairro='" + bairro + '\'' + ", CEP=" + CEP + ", cidade='" + cidade + '\'' + ", estado='" + estado + '\'' + ", pais='" + pais + '\'' + '}'; } } //----------------------------- package model; public class EnderecoComercial extends Endereco{ public EnderecoComercial(String logradouro) { super(logradouro); } } //----------------------------- package model; public class EnderecoResidencial extends Endereco { private String pontoReferencia; public EnderecoResidencial(String logradouro) { super(logradouro); } public String getPontoReferencia() { return pontoReferencia; } public void setPontoReferencia(String pontoReferencia) { this.pontoReferencia = pontoReferencia; } } //----------------------------- package model; import java.time.LocalDate; public class Pessoa { private String nome; private Telefone tel; private String email1; private String email2; private LocalDate dataDeAniversario; private Endereco endereco; public Pessoa(String nome, Telefone tel, Endereco endereco) { this.nome = nome; this.tel = tel; this.endereco = endereco; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public Telefone getTel() { return tel; } public void setTel(Telefone tel) { this.tel = tel; } public String getEmail1() { return email1; } public void setEmail1(String email1) { this.email1 = email1; } public String getEmail2() { return email2; } public void setEmail2(String email2) { this.email2 = email2; } public LocalDate getDataDeAniversario() { return dataDeAniversario; } public void setDataDeAniversario(LocalDate dataDeAniversario) { this.dataDeAniversario = dataDeAniversario; } public Endereco getEndereco() { return endereco; } public void setEndereco(Endereco endereco) { this.endereco = endereco; } @Override public String toString() { return "Pessoa{" + "nome='" + nome + '\'' + ", tel=" + tel + ", emails='" + email1 + '\'' + ", dataDeAniversario=" + dataDeAniversario + ", endereco=" + endereco + '}'; } } //----------------------------- package model; public class Telefone { private String tel; public Telefone(String tel) { this.tel = tel; } public String getTel() { return tel; } public void setTel(String tel) { this.tel = tel; } @Override public String toString() { return "Telefone{" + "tel='" + tel + '\'' + '}'; } } //----------------------------- package model; import java.util.ArrayList; import java.util.List; public class Principal { public static void main(String[] args) { Agenda agenda = new Agenda(); //dados Endereco end1 = new Endereco("Logradouro 1"); Telefone tel1 = new Telefone("1"); Pessoa p1 = new Pessoa("P1", tel1, end1); Endereco end2 = new Endereco("Logradouro 2"); Telefone tel2 = new Telefone("2"); Pessoa p2 = new Pessoa("P2", tel2, end2); //adiciona telefone agenda.adicionarTelefone(tel1); agenda.adicionarTelefone(tel2); //adiciona pessoa agenda.adicionarPessoa(p1); agenda.adicionarPessoa(p2); //print para verificação dos dados do objeto System.out.println("inseridos com sucesso" + "\n" + agenda.contatoNaAgenda()); //exclusão pessoa agenda.excluirPessoa(p1); //print para verificação dos dados após exclusão System.out.println("excluído com sucesso" + "\n" + agenda.contatoNaAgenda()); //buscar pessoa Pessoa resultadoBuscaPessoa = agenda.buscarNome("P2"); System.out.println("achou a pessoa com sucesso" + "\n" + resultadoBuscaPessoa); //buscar telefone Telefone resultadoBuscaTelefone = agenda.buscarTelefone("2"); System.out.println("achou o número com sucesso" + "\n" + resultadoBuscaTelefone); } } Olá! Buscar pessoa está funcionando, usei a mesma ideia de código para buscar o número de telefone, porém, sempre retrona null. o que pode ser? abraço!
  11. Olá amigos! Esse exercício pede para que o usuário insira 5 valores e que seja impresso os dois maiores. O problema é o seguinte: O maior valor sempre mostra um número aleatório e o segundo maior valor mostra o maior. Desde já grato pela atenção. Att; Glaucus #include <stdio.h> #include <iostream> using namespace std; int main() { int maior1, maior2, num; for (int i= 1; i <= 5; i++) { cout << "Digite o numero " << i << ": "; cin >> num; if (num > maior1){ maior1 = num; maior2 = maior1; }else if (num > maior2) { maior2 = num; } } cout << "Maior: " << maior1 << "\n"; cout << "Segundo maior: " << maior2; }
  12. #include <stdio.h> #include <stdlib.h> #include <iostream> using namespace std; struct Fracao{ int num; int den; int fracao; void insere (int insNum, int insDen){ Fracao fracao; num=insNum; den=insDen; } void mostra (){ cout << fracao<< "\n"; } }; int main () { Fracao fracao1; fracao1.insere (3,2); fracao1.mostra(); return 0; } boa noite amigos! teoricamente era para ser retornada a fraçao "3/2", porém, retorna 1. o que está errado? desde já grato pela atenção. abração!
  13. valeu gente boa! funcionou perfeitamente,
  14. olá! o programa não está calculando a média. acredito que seja algo ridiculamente simples, mas não consigo ver o que é. segue o código: #include <stdio.h> #include <stdlib.h> /*2. Escreva um programa que leia n números. Depois da leitura mostre a média dos números lidos, o maior número lido, e o menor.*/ int main(){ int qtd, n[qtd], i, soma, maior, menor; float media; printf("quantos números serão lindos? "); scanf("%d", &qtd); for (i=0; i<qtd; i++){ printf("numero: \n"); scanf("%d", &n[i]); } maior = n[0]; for (i=0; i<qtd; i++){ if (n[i] > maior){ maior = n[i]; } } menor = n[0]; for (i=0; i<qtd; i++){ if (n[i] < maior){ menor = n[i]; } } for (i=0; i<qtd; i++){ soma= (soma+n[i]); } media= soma/qtd; for (i=0; i<qtd; i++){ printf ("%d\n", n[i]); } printf("maior: %d\n", maior); printf("menor: %d\n", menor); printf("media: %d\n", media); } desde já grato pela atenção.
  15. @giu_d última pergunta... o que essa parte do código está fazendo? principalmente essa parte: printf(valor1, "%c.2f", a); int verificarResposta(float a, float b) { char valor1[10], valor2[10]; sprintf(valor1, "%.2f", a); sprintf(valor2, "%.2f", b); }

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

Redes-Wi-Fi-capa-3d-newsletter.png

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!