O Código do URI 1062
Por: soarestheu • 12/11/2018 • Trabalho acadêmico • 1.555 Palavras (7 Páginas) • 355 Visualizações
#include <iostream>
#include <stdlib.h>
#include <conio.h>
using namespace std;
struct Info {
int codigo;
char nome[30];
int idade;
float altura;
float peso;
struct Info *ant, *prox;
};
struct Info *PontLista;
int n, opcao; // qtd de elementos da lista
void CriaLista() {
PontLista = NULL;
cout << "Lista criada!\n" << endl;
}
void CadastraPessoa() {
struct Info *item, *atual;
item = (struct Info*) malloc(sizeof(struct Info));
if (item != NULL) {
cout << "CODIGO: "; cin >> item->codigo;
cout << "NOME: "; cin >> item->nome;
cout << "IDADE: "; cin >> item->idade;
cout << "ALTURA: "; cin >> item->altura;
cout << "PESO: "; cin >> item->peso;
item->prox = NULL;
if (PontLista == NULL){
PontLista = item; // 1º elemento.
item->ant = NULL;
}
else { // inserindo em lista não-vazia.
atual = PontLista;
while (atual->prox != NULL) { // eqto nó atual nao for o último.
atual = atual->prox; // aponta para o nó seguinte.
}
item->ant = atual;
item->prox = NULL; // ponteiro prox aponta prox item
atual->prox = item;
}
}
else cout << "ERRO ALOCACAO MEMORIA!\n" << endl;
}
void ImprimeLista() {
struct Info *imp;
imp = PontLista;
if (imp != NULL) {
while (imp != NULL) {
cout << imp->codigo << endl;
cout << imp->nome << endl;
cout << imp->idade << endl;
cout << imp->altura << endl;
cout << imp->peso << endl;
imp = imp->prox;
}
}
else cout << "Lista Vazia!\n" << endl;
cout << "\n";
}
void ConsultaPessoa() {
struct Info *cons;
int cod;
bool achou=0;
cout << "Informe um codigo de 1 a 50: " << endl; cin >> cod;
cons = PontLista;
if (cons != NULL) {
while (cons != NULL && achou == 0) {
if (cons->codigo == cod) {
cout << cons->codigo << endl;
cout << cons->nome << endl;
cout << cons->idade << endl;
cout << cons->altura << endl;
cout << cons->peso << endl;
achou = 1;
}
cons = cons->prox;
}
if (achou==0) {
cout << "Pessoa não encontrada! Tente novamente." << endl;
ConsultaPessoa();
}
}
else cout << "Lista Vazia!\n" << endl;
cout << "\n";
}
void RemovePessoa() {
struct Info *rem, *atual;
int cod;
atual = PontLista;
...