Enviado em 14/10/2020 - 10:25h
ENUNCIADO:
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
using namespace std;
struct no {
int codigo, id, idade;
struct no *prox;
char nome[20], especie[20], raca[10], sexo[3], caracteristica[20];
};
void cadastrar (struct no **);
int remover_animal (struct no **);
void listagem_total (struct no *);
int buscar_nome (struct no *);
int buscar_especie (struct no *);
void alterar (struct no**);
int busca_especie_raca (struct no *);
int busca_especie_raca_sexo (struct no*);
int main (){
setlocale(LC_ALL,"portuguese");
int opcao, id;
no *lista = NULL, *aux, *cod;
do {
cout<<"\n1 - Cadastrar novos animais -> ";
cout<<"\n2 - Remover algum animal por CODIGO -> ";
cout<<"\n3 - Alterar informacoes do pet ->";
cout<<"\n4 - Buscar animal por nome ->";
cout<<"\n5 - Buscar animal por especie ->";
cout<<"\n6 - Buscar animal por especie e raca";
cout<<"\n7 - Buscar animal por especie raca e sexo ->";
cout<<"\n8 - Quantidade total de animais ->";
cout<<"\n9 - Quantidade toatl de animais por cada especie ->";
cout<<"\n10 - Listagem de todos os animais cadastrados ->";
cout<<"\n\nSua opcao: ";
cin >> opcao;
switch(opcao) {
case 1:
cadastrar(&lista);
break;
case 2:
if(remover_animal(&lista))
cout<<"O PET FOI REMOVIDO COM SUCESSO";
else
{
cout<<"ERRO ENCONTRADO, O PET NÃO FOI REMOVIDO";
}
break;
case 4:
if(buscar_nome(lista))
cout<<"Achou";
else
cout<<"nao foi encontrado";
break;
case 5:
if(buscar_especie(lista))
cout<<"Especie encontrada";
else
cout<<"ERRO!! Especie nao foi encontrada";
break;
case 6:
if(busca_especie_raca(lista))
cout<<"Pet encontrado";
else
cout<<"ERRO!! Pet nao encontrado";
break;
case 7:
if(busca_especie_raca_sexo(lista))
cout<<"PET Encontrado com sucesso";
else
cout<<"ERRO, PET nao foi encontrado";
case 10:
listagem_total(lista);
break;
}
}while (opcao =! 0);
return 0;
system ("pause");
}
void cadastrar (struct no **lista)
{
cout<<"\t\nCADASTRAR NOVO ANIMAL\n\n";
no *aux;
aux=(no *)malloc(sizeof(no));
aux->prox=(*lista);
(*lista)=aux;
cout<<"Codigo do animal: "; cin >> aux->id;
cout<<"Nome do animal: "; cin >> aux->nome;
cout<<"Sexo do animal: "; cin >> aux->sexo;
cout<<"Idade do animal: "; cin >> aux->idade;
cout<<"Especie do animal: "; cin >> aux->especie;
cout<<"raca do animal: "; cin >> aux->raca;
cout<<"Carasteristicas do animal: "; cin >> aux->caracteristica;
cout<<"\nAnimal CODIGO: "<<aux->id<<" foi adicionado.";
}
int remover_animal (struct no **lista)
{
cout<<"\t\nREMOVER UM PET\n";
no *aux = *lista, *aux2;
if ((*lista)== NULL)
{
cout<<"LISTA VAZIA";
return 0;
}
cout<<"Informe o codigo do pet a ser removido: "; cin >> aux->id;
while (aux != NULL && aux->id != aux->id) /* percorrer a lista ate encontrar o valor desejado */
{
aux2 = aux;
aux=aux->prox;
}
if (aux == NULL) /* ou a lista tava vazia ou nao achou o valor */
return 0;
/* passou pelo if de cima, portanto o valor foi encontrado, entao ele sera reemovido */
if(aux==*lista) /* ver se eh o primeiro elemento */
{
*lista=aux->prox;
}
else /* remover o valor encontrado, percorrendo a lista ate o elemento, e remove-lo com o free no aux */
{
aux2->prox = aux->prox;
free(aux);
return 1;
}
}
void listagem_total (struct no *lista)
{
cout<<"\t\nMOSTRAR TODOS OS PETS\n";
cout<<"\nNome dos animais da lista: ";
while(lista != NULL)
{
cout<<" "<<lista->nome;
lista = lista->prox;
}
cout<<"\n\n";
}
int buscar_nome (struct no *lista) {
no *aux = lista, *aux2;
char nome[20];
cout<<"Informe o nome do animal: ";
cin.ignore();
cin.getline(nome, 20);
while (aux != NULL) {
if (strcmp (aux->nome,nome) == 0)
{
return 1;
}
else
{
aux=aux->prox;
cout<<"Nao achou";
return 0;
}
}
}
int buscar_especie (struct no *lista) {
no *aux = lista, *aux2;
char especie[20];
cout<<"\t\nBUSCAR UM PET PELA ESPECIE\n";
cout<<"Informe a especie do animal: ";
cin.ignore();
cin.getline(especie, 20);
while (aux != NULL) {
if (strcmp (aux->especie,especie) == 0)
{
return 1;
}
else
{
aux=aux->prox;
return 0;
}
}
}
int busca_especie_raca (struct no *lista) {
no *aux = lista, *aux2;
char especie[20], raca[20];
cout<<"\t\nBUSCAR UM PET PELA ESPECIE E PELA RAÇA\n";
cout<<"Informe a especie do animal: ";
cin.ignore();
cin.getline(especie, 20);
cout<<"Informe a raça do animal: ";
cin.ignore();
cin.getline(raca, 20);
while (aux2 != NULL) {
if (strcmp (aux->especie,especie) == 0 && (aux->raca,raca) == 0)
{
return 1;
}
else
{
aux2=aux2->prox;
return 0;
}
}
}
int busca_especie_raca_sexo (struct no *lista) {
no *aux = lista, *aux2;
char especie[20], raca[20], sexo[3];
cout<<"\t\nBUSCAR UM PET PELA ESPECIE E PELA RAÇA\n";
cout<<"Informe a ESPECIE do animal: ";
cin.ignore();
cin.getline(especie, 20);
cout<<"Informe a RAÇA do animal: ";
cin.ignore();
cin.getline(raca, 20);
cout<<"Informe o SEXO do animal: ";
cin.ignore();
cin.getline(sexo, 3);
while (aux2 != NULL) {
if (strcmp (aux->especie,especie) == 0 && (aux->raca,raca) == 0 && (aux->sexo,sexo)==0)
{
return 1;
}
else
{
aux2=aux2->prox;
return 0;
}
}
}
;/////// cores
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <locale.h>
#include <windows.h>
#include <string.h>
using namespace std;
struct no {
int codigo, id, idade;
struct no *prox;
char nome[20], especie[20], raca[10], sexo[3], caracteristica[20];
};
void cadastrar (struct no **);
int remover_animal (struct no **);
void listagem_total (struct no *);
int buscar_nome (struct no *);
int buscar_especie (struct no *);
void alterar (struct no**);
int busca_especie_raca (struct no *);
int busca_especie_raca_sexo (struct no*);
int main (){
setlocale(LC_ALL,"portuguese");
int opcao, id;
no *lista = NULL, *aux, *cod;
char comando[9] = "color ";
char cores[2];
setlocale(LC_ALL, "Portuguese");
SetConsoleTitle("Cores com system");
printf ("Tabela de cores:\n\n");
printf ("\t0 - Preto\t8 - Cinza\n");
printf ("\t1 - Azul\t9 - Azul Claro\n");
printf ("\t2 - Verde\tA - Verde Claro\n");
printf ("\t3 - Verde Água\tB - Verde Água Claro\n");
printf ("\t4 - Vermelho\tC - Vermelho Claro\n");
printf ("\t5 - Roxo\tD - Lilás\n");
printf ("\t6 - Amarelo\tE - Amarelo Claro\n");
printf ("\t7 - Branco\tF - Branco Brilhante\n");
printf ("\n\nCor de fundo: ");
scanf("%c", &cores[0]);
getchar();
printf ("Cor do texto: ");
scanf("%c", &cores[1]);
strcat (comando, cores);
system (comando);
system("cls");
do {
cout<<"\n\n\t\t\tMENU\n";
cout<<"\n\t1 - Cadastrar novos animais -> ";
cout<<"\n\t2 - Remover algum animal por CODIGO -> ";
cout<<"\n\t3 - Alterar informacoes do pet ->";
cout<<"\n\t4 - Buscar animal por nome ->";
cout<<"\n\t5 - Buscar animal por especie ->";
cout<<"\n\t6 - Buscar animal por especie e raca";
cout<<"\n\t7 - Buscar animal por especie raca e sexo ->";
cout<<"\n\t8 - Quantidade total de animais ->";
cout<<"\n\t9 - Quantidade toatl de animais por cada especie ->";
cout<<"\n\t10 - Listagem de todos os animais cadastrados ->";
cout<<"\n\nSua opcao: ";
cin >> opcao;
system("cls");
switch(opcao) {
case 1:
cadastrar(&lista);
break;
case 2:
if(remover_animal(&lista))
cout<<"O PET FOI REMOVIDO COM SUCESSO";
else
{
cout<<"ERRO ENCONTRADO, O PET NÃO FOI REMOVIDO";
}
break;
case 3:
alterar(&lista);
break;
case 4:
if(buscar_nome(lista))
cout<<"Achou";
else
cout<<"nao foi encontrado";
break;
case 5:
if(buscar_especie(lista))
cout<<"Especie encontrada";
else
cout<<"ERRO!! Especie nao foi encontrada";
break;
case 6:
if(busca_especie_raca(lista))
cout<<"Pet encontrado";
else
cout<<"ERRO!! Pet nao encontrado";
break;
case 7:
if(busca_especie_raca_sexo(lista))
cout<<"PET Encontrado com sucesso";
else
cout<<"ERRO, PET nao foi encontrado";
break;
case 10:
listagem_total(lista);
break;
}
}while (opcao =! 0);
return 0;
system ("pause");
}
void cadastrar (struct no **lista)
{
cout<<"\t\nCADASTRAR NOVO ANIMAL\n\n";
no *aux;
aux=(no *)malloc(sizeof(no));
aux->prox=(*lista);
(*lista)=aux;
cout<<"Codigo do animal: "; cin >> aux->id;
cout<<"Nome do animal: "; cin >> aux->nome;
cout<<"Sexo do animal: "; cin >> aux->sexo;
cout<<"Idade do animal: "; cin >> aux->idade;
cout<<"Especie do animal: "; cin >> aux->especie;
cout<<"raca do animal: "; cin >> aux->raca;
cout<<"Carasteristicas do animal: "; cin >> aux->caracteristica;
cout<<"\nAnimal CODIGO: "<<aux->id<<" foi adicionado.";
}
int remover_animal (struct no **lista)
{
cout<<"\t\nREMOVER UM PET\n";
no *aux = *lista, *aux2;
if ((*lista)== NULL)
{
cout<<"LISTA VAZIA";
return 0;
}
cout<<"Informe o codigo do pet a ser removido: "; cin >> aux->id;
while (aux != NULL && aux->id != aux->id) /* percorrer a lista ate encontrar o valor desejado */
{
aux2 = aux;
aux=aux->prox;
}
if (aux == NULL) /* ou a lista tava vazia ou nao achou o valor */
return 0;
/* passou pelo if de cima, portanto o valor foi encontrado, entao ele sera reemovido */
if(aux==*lista) /* ver se eh o primeiro elemento */
{
*lista=aux->prox;
}
else /* remover o valor encontrado, percorrendo a lista ate o elemento, e remove-lo com o free no aux */
{
aux2->prox = aux->prox;
free(aux);
return 1;
}
}
void listagem_total (struct no *lista)
{
cout<<"\t\nMOSTRAR TODOS OS PETS\n";
cout<<"\nNome dos animais da lista: ";
while(lista != NULL)
{
cout<<" \n"<<lista->nome;
lista = lista->prox;
}
cout<<"\n\n";
}
int buscar_nome (struct no *lista) {
no *aux = lista, *aux2;
char nome[20];
cout<<"Informe o nome do animal: ";
cin.ignore();
cin.getline(nome, 20);
while (aux != NULL) {
if (strcmp (aux->nome,nome) == 0)
{
return 1;
}
else
{
aux=aux->prox;
cout<<"Nao achou";
return 0;
}
}
}
int buscar_especie (struct no *lista) {
no *aux = lista, *aux2;
char especie[20];
cout<<"\t\nBUSCAR UM PET PELA ESPECIE\n";
cout<<"Informe a especie do animal: ";
cin.ignore();
cin.getline(especie, 20);
while (aux != NULL) {
if (strcmp (aux->especie,especie) == 0)
{
return 1;
}
else
{
aux=aux->prox;
return 0;
}
}
}
int busca_especie_raca (struct no *lista) {
no *aux = lista, *aux2;
char especie[20], raca[20];
cout<<"\t\nBUSCAR UM PET PELA ESPECIE E PELA RAÇA\n";
cout<<"Informe a especie do animal: ";
cin.ignore();
cin.getline(especie, 20);
cout<<"Informe a raça do animal: ";
cin.ignore();
cin.getline(raca, 20);
while (aux2 != NULL) {
if (strcmp (aux->especie,especie) == 0 && (aux->raca,raca) == 0)
{
return 1;
}
else
{
aux2=aux2->prox;
return 0;
}
}
}
int busca_especie_raca_sexo (struct no *lista) {
no *aux = lista, *aux2;
char especie[20], raca[20], sexo[3];
cout<<"\t\nBUSCAR UM PET PELA ESPECIE E PELA RAÇA\n";
cout<<"Informe a ESPECIE do animal: ";
cin.ignore();
cin.getline(especie, 20);
cout<<"Informe a RAÇA do animal: ";
cin.ignore();
cin.getline(raca, 20);
cout<<"Informe o SEXO do animal: ";
cin.ignore();
cin.getline(sexo, 3);
while (aux2 != NULL) {
if (strcmp (aux->especie,especie) == 0 && (aux->raca,raca) == 0 && (aux->sexo,sexo)==0)
{
return 1;
}
else
{
aux2=aux2->prox;
return 0;
}
}
}
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Não to conseguindo resolver este problemas ao instalar o playonelinux (1)
Excluir banco de dados no xampp (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta