Você está na página 1de 12

UNIVERSIDADE ANHANGUERA UNIDERP

TECNOLOGIA EM ANALISE E DESENVOLVIMENTO DE SISTEMAS

ESTRUTURA DE DADOS

BRASLIA/DF
2014

UNIVERSIDADE ANHANGUERA UNIDERP


TECNOLOGIA EM ANALISE E DESENVOLVIMENTO DE SISTEMAS

ACADMICO:
RA:
TUTOR A DISTNCIA:
TUTOR PRESENCIAL: ROGRIO IORD

BRASLIA/DF
2014

RELATRIO I ETAPA I ESTRUTURA DE DADOS


PASSO I
O conceito estratgia de alocao de memria um processo onde toda a memria
que um tipo de dados possa precisar alocada de uma vez no considerando se o programa
necessitaria de todas.
O volume mximo de alocao ditado pelo hardware (tamanho de
endereamento).
De uma maneira geral o programa precisa da memria para ser executado, este
quando se inicia, comea a pedir memria ao sistema operacional, fazendo a alocao de
memria que precisa para sua execuo, no entanto nem sempre a memria alocada no inicio
do programa suficiente, ento o programa tambm precisa alocar memria durante a sua
execuo.
Na alocao esttica,o espao de memria que as variveis iro utilizar durante a
execuo do programa, definido no processo de compilao. No sendo possvel alterar o
tamanho desse espao durante a execuo do programa.
Exemplos:
/*Espao reservado para um valor do tipo char. O char ocupa 1 byte na memria.*/
Char a;
/Espao reservado para dez valores do tipo int.
O int ocupa 4 bytes na memria .portanto 4*10=40
Int vetor [10];
/*Espao reservado para nove(3*3) Valores do tipo double. O double ocupa 8 bytes na
memria ,portanto 3*3*8=72 bytes.
*/Double matriz [3] [3] ;
Este tipo de alocao utilizado quando se sabe de antemo a quantidade de memria que
ser utilizada pelo programa.
Exemplo: Alocar nome e sobrenome dos alunos do curso de SI no Anhanguera: 4000
espaos de memria

Vetor de string (alocao esttica)

100 caracteres (Tamanho mximo do nome inteiro)

Podemos ento definir 30 pessoas.

No o ideal pois a maioria dos nomes no usam os 100 caracteres.

Na alocao dinmica no necessrio definir de ante-mo o tamanho mximo para os


nomes.

Exemplo de alocao esttica:


Void quad(int n) {n = n * n ;
printf(n = %d\n ;n);
}
int main ( ) {
int n ;
n=3;
quad(n);
printf(n = %d\n , n) ;
return O ;

RELATRIO II ETAPA II LISTAS LIGADAS


#define form 5
struct aviao {
char modelo[30],fabricante[50],passageiros[100],motor[20];
int veloc, alt;
float comp,altura;
};
void cadastro(struct aviao* v,int q);main(){
int i;
struct aviao x[form];
for(i=0; i < form; i++){
printf ("informe: o modelo do avio\n");
gets(x[i].modelo);
printf ("informe: Digite o fabricante do avio\n");gets(x[i].fabricante);
printf ("informe: Digite o modelo do motor do avio\n");
gets(x[i].motor);
printf ("informe: Digite a altura do avio\n");
gets(x[i].altura);
printf("informe: Digite o nome do passageiro\n");
gets(x[i].passageiros);
printf ("informe: Digite a velocidade do vo\n");
gets(x[i].veloc);
printf ("informe: Digite a altitude do vo\n");gets(x[i].alt);
}
int codPassageiro;
printf("Digite o codigo do passageiro \n");
scanf("%d", &codPassageiro);
cadastro(x,codPassageiro);
system("PAUSE");
}
voidcadastro(struct aviao* v,int z){
int i;
for(i=0; i< form;i++){

if(z==i){
printf("modelo:%s\n", v[i].modelo);
printf("fabricante: %s\n", v[i].fabricante);
printf("motor:%.s\n",v[i].motor);
printf{"altura: %.s\n",v[i].altura);
include
#define form 6
struct bagagem{
int
char data_Embarque, horaEmbarque;
};void bagagem(struct bagagem* v,int q);
main(){
int i;
struct bagagem x[form];
for(i=0; i < form; i++){
printf ("Digite o cdigo da bagagem: \n");
gets(x[i].codigo_Bagagem);printf ("Digite o nmero da passagem: \n");
gets(x[i].num_Passagem);
printf ("Digite o numero do voo:\n");
gets(x[i].num_Voo);
printf ("Digite o horrio de saida:\n");gets(x[i].hrEmbarque);
printf ("Digite a data de embarque:\n");
gets(x[i].data_Embarque);
printf ("Digite o porto de embarque:\n");
gets(x[i].portao_Embarque);
}
#include
#define form 5
struct aviao {
char modelo[30],fabricante[50],passageiros[100],motor[20];
int veloc, alt;
float comp,altura;

};
void cadastro(struct aviao* v,int q);main(){
int i;
struct aviao x[form];
for(i=0; i < form; i++){
printf ("informe: o modelo do avio\n");
gets(x[i].modelo);
printf ("informe: Digite o fabricante do avio\n");gets(x[i].fabricante);
printf ("informe: Digite o modelo do motor do avio\n");
gets(x[i].motor);
printf ("informe: Digite a altura do avio\n");
gets(x[i].altura);
printf("informe: Digite o nome do passageiro\n");
printf ("informe: Digite a velocidade do vo\n");
gets(x[i].veloc);
printf ("informe: Digite a altitude do vo\n");gets(x[i].alt);
}
int codPassageiro;
printf("Digite o codigo do passageiro \n");
scanf("%d", &codPassageiro);
cadastro(x,codPassageiro);
system("PAUSE");
}
voidcadastro(struct aviao* v,int z){
int i;
for(i=0; i< form;i++){
if(z==i){
printf("modelo:%s\n", v[i].modelo);
printf("fabricante: %s\n", v[i].fabricante);
printf("motor:%.s\n",v[i].motor);
printf{"altura: %.s\n",v[i].altura);
include

#define form 6
struct bagagem{
int codigo_Bagagem num_Passagem, num_Voo, portao_Embarque;
char data_Embarque, horaEmbarque;
};void bagagem(struct bagagem* v,int q);
main(){
int i;
struct bagagem x[form];
for(i=0; i < form; i++){
printf ("Digite o cdigo da bagagem: \n");
gets(x[i].codigo_Bagagem);printf ("Digite o nmero da passagem: \n");
gets(x[i].num_Passagem);
printf ("Digite o numero do voo:\n");
gets(x[i].num_Voo);
printf ("Digite o horrio de saida:\n");gets(x[i].hrEmbarque);
printf ("Digite a data de embarque:\n");
gets(x[i].data_Embarque);
printf ("Digite o porto de embarque:\n");
gets(x[i].portao_Embarque);
}

RELATRIO II ETAPA II LISTAS LIGADAS


Programa em c (taxiamento)
#include
#include
#include
struct taxiamento
{
int numvoo;
char modelo_aeronave[40];
char empresa_aerea[40];
int horrio_saida;
};
void menu();
void cadastrarTaxiamento();
void autorizaTaxiamento();
struct taxiamento *inf;
main()
{
menu();
return 0;
system("pause");
}
void menu()
{
printf("\n Empresa VOEBEM \n");
printf(" ============================ \n\n");
printf(" ____________________________\n");
printf("| Escolha uma opcao abaixo |\n");
printf("|----------------------------|\n");
printf("| 1 - Cadastrar Taxiamento |\n");
printf("| 2 Autoriza Taxiamento |\n");
printf("| 0 - Sair |\n");
printf("|____________________________|\n");

selecao();
}
void selecao(){
int opcao;
printf("\nDigite uma das opcoes: ");
scanf("%i", &opcao);
switch (opcao){
case 1:
cadastro();
menu();
break;
case 2:
consultar();
menu();
break;
case 0:
system("pause");
exit(0);
break;
default:
printf("\n\nOpcao nao encontrada.\nTente Novamente\n\n");
system("pause");
system("cls");
menu();
break;
}
}
//FUNO
void cadastrarTaxiamento(){
int num;
do{

inf = (struct taxiamento *) malloc(sizeof(struct taxiamento));


printf("\n\n*****CADASTRO DE TAXIMANTO*****\n");
printf("\nNumero do voo: ");
scanf("%d", &inf->numvoo);
fflush(stdin);
printf("\N Modelo da Aeronave: ");
fflush(stdin);
gets(inf->modelo_aeronave);
printf("\N Empresa Aerea: ");
fflush(stdin);
gets(inf->empresa_aerea);
printf("\nHorario de sada: ");
scanf("%d", &inf->horrio_saida);
}
//FUNO AUTORIZA TAXIAMENTO
void autorizaTaxiamento(){
printf("\n-----------------------------");
printf("\nAeronaves autoriazadas para Taxiamento");
printf("\nNumero do Voo: %d ", inf->numvoo);
printf("\n\nModelo da Aeronave: %s ", inf->modelo_aeronave);
printf("\n\nEmpresa Aerea: %d ", inf->empresa_aerea);
printf("\n nHorario de sada: %d", inf-> horrio_saida);
getch();
system("cls");
menu();
}

REFERNCIAS BIBLIOGRFICAS
https://www.youtube.com/watch?v=z0WseEPdzd0. Acessado em 31 de outubro de 2014.
http://www.dca.fee.unicamp.br/cursos/EA876/apostila/HTML/node30.html. Acessado em 31
de outubro de 2014.
http://www.facom.ufu.br/~madriana/EBD/Pilha.pdf. Acessado em 31 de outubro de 2014.
http://www.cprogressivo.net/2013/10/Estrutura-de-dados-dinamica-em-C-Listas-Filas-PilhasArvores.html. Acessado em 31 de outubro de 2014.
http://www.ebah.com.br/content/ABAAAfhR0AA/apostila-complementar-estrutura-dadoslista-pilha-fila-arvores-com-exercicios. Acessado em 31 de outubro de 2014.
https://docs.google.com/open?id=0B_uLQd5hdqlWcnBnQVk0YVpTUXFzUmMyc1N
WaVpvQQ. Acessado em 31 de outubro de 2014.
https://docs.google.com/open?id=0B_uLQd5hdqlWTVFzdzZRYTZSSDJRRm9hLVg1Rj
RxZw. Acessado em 31 de outubro de 2014.
https://docs.google.com/open?id=0B_uLQd5hdqlWQXdYT19jQUJUd2Vob 1BYQ3dZEkydw
. Acessado em 31 de outubro de 2014.
https://docs.google.com/open?d=0B_uLQd5hdqlWdU9tQi1yS1pTQXUzNEQ1d3BsbkZBUQ
. Acessado em 31 de outubro de 2014.

Você também pode gostar