TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

APTS - Engenharia de Software

Por:   •  9/6/2015  •  Trabalho acadêmico  •  693 Palavras (3 Páginas)  •  224 Visualizações

Página 1 de 3

[pic 1]

FACULDADE ANHANGUERA DE TAUBATÉ – UNIDADE II

Engenharia de Software

Profº Neymar

Curso: Ciência da Computação

Semestre: 3º e 4º - Ano: 2013

RA

Nome do Aluno


Índice

ETAPA 1        

Passo 3        


ETAPA 1

Passo 3

  1. Alocação Estática de Memória

 Na alocação estática o espaço de memória, que as variáveis irão utilizar durante a execução do programa, é definido no processo de compilação, alocada toda de uma vez sem considerar a quantidade que seria realmente necessária na execução do programa não sendo possível alterar o tamanho desse espaço durante a execução do programa.

Exemplo:  int v [1000]

 Espaço contiguo na memória para 1000 valores inteiros:

Se cada int ocupa 4 bytes, 4000 bytes, 4KB

   Exemplo: Alocar nome e sobrenome dos alunos do curso:

• 3000 espaços de memória,  vetor de strings

• 100 caracteres (Tamanho máximo do nome inteiro)

• Podemos então definir 30 pessoas

• Não é o ideal pois a maioria dos nomes não usam os 100 caracteres

• Na alocação dinâmica não é necessário definir  antes o tamanho máximo para os nomes.

  1. Programa em C – Estruturas de Voo

#include 
#include 

typedef struct // Estruturas de Voo 

char modelo[50], fabri[50], motor[50]; 
int passa, velo, alti; 
float compri, alt; 
}taviao; 

typedef struct // Contadores 

int primeiro, ultimo; 
}tordem; 


void cadastrar(taviao av[], tordem *pri) // Cadastrando os Dados no Programa! 

int opc; 

if(pri -> ultimo == 100) // Verifica se o Limite de 100 Dados diferentes foram atingidos... 

printf("\n\n\t Nao foi possivel Cadastrar: "); 
printf("\n\t Causa: Limite de Dados atingido!"); 
system("pause>>null"); 


else 

do 

if(pri -> ultimo == 100) // Verifica se o Limite de 100 Dados diferentes foram atingidos... 
{ // É feita a verificação novamente, pois o usuário pode escoher cadastrar um novo voo... 
printf("\n\n\t Nao foi possivel Cadastrar: "); 
printf("\n\t Causa: Limite de Dados atingido!"); 
system("pause>>null"); 

else 

system("cls"); 
printf("\n\n\t CADASTRANDO..."); // Cadastrando os dados do VOO 

pri -> ultimo++; 
printf("\n\n\t Codigo: %d", pri -> ultimo); 

printf("\n\n\t Modelo: "); 
fflush(stdin); 
gets(av[pri -> ultimo].modelo); 

printf("\n\t Fabricante: "); 
fflush(stdin); 
gets(av[pri -> ultimo].fabri); 

printf("\n\t Passageiros: "); 
fflush(stdin); 
scanf("%d", &av[pri -> ultimo].compri); 

printf("\n\t Comprimento: "); 
fflush(stdin); 
scanf("%f", &av[pri -> ultimo].compri); 

printf("\n\t Altura: "); 
fflush(stdin); 
scanf("%f", &av[pri -> ultimo].alt); 

printf("\n\t Velocidade: "); 
fflush(stdin); 
scanf("%d", &av[pri -> ultimo].velo); 

printf("\n\t Altitude: "); 
fflush(stdin); 
scanf("%d", &av[pri -> ultimo].alti); 

printf("\n\t Motor: "); 
fflush(stdin); 
gets(av[pri -> ultimo].motor); 

printf("\n\n\t Deseja Cadastrar Novo Usuário?! "); 
printf("\n\n\t 1. Para SIM."); 

printf("\n\n\t Escolha Sua Opcao: "); // Escolha a opcao para cadastrar um novo dado 
scanf("%d", &opc); 



}while(opc == 1); 



void imprimir(taviao av[], tordem *pri) // Mostrando todos os voos cadastrados... 

system("cls"); 

int i; // variavel utilizada no For... 

if(pri -> ultimo == -1) // Verica se Existem Voos Cadastrados... Se for "-1", Não será exibido dados na tela 

printf("\n\n\t Nao Existem Voo Cadastrados"); 

printf("\n\n\t Tecle ENTER..."); 
system("pause>>null"); 

else 

printf("\n\n\n\t IMPRIMINDO DADOS..."); 

for(i = 0; i ultimo; i++) // Imprimindo todos os dados na tela... 

printf("\n\n\t Codigo: %d", i); 
printf("\n\t Modelo: %s", av[pri -> ultimo].modelo); 
printf("\n\t Fabricante: %s", av[pri -> ultimo].fabri); 
printf("\n\t Passageiros: %d", av[pri -> ultimo].passa); 
printf("\n\t Comprimento: %f", av[pri -> ultimo].compri); 
printf("\n\t Altura: %f", av[pri -> ultimo].alt); 
printf("\n\t Velocidade: %d", av[pri -> ultimo].velo); 
printf("\n\t Altitude: %d", av[pri -> ultimo].alti); 
printf("\n\t Motor: %s", av[pri -> ultimo].motor); 

printf("\n\n\t -------------------------------------------------\n\n"); 


printf("\n\n\t ENTER"); 
system("pause>>null"); 



void iniciando(tordem *ordem) // Funcao que Atribui o "-1" em 'primeiro' e 'ultimo'. 

ordem -> primeiro = -1; 
ordem -> ultimo = -1; 


void main() //Primeira função a ser chamada no Programa.. 

int opc; // Variável de Opcao... 

taviao aviao; // Acessando a Estrutura Aviao... 
tordem ordem; // Acessando a Estrutura Ordem... 

iniciando(&ordem); // Executando a Função "Iniciando"... 

do 

system("cls"); 
printf("\n\n\n\t\t\t TRABALHO - CONTROLE DE VOOS\n"); 

printf("\n\n\t 1. Cadastrar. "); 
printf("\n\t 2. Imprimir. "); 

printf("\n\n\t Outra Opcao: SAIR DO PROGRAMA..."); 

printf("\n\n\n\t Escolha sua opcao: "); // Usuario deverá escolher a opcao acima: 
scanf("%d", &opc); 

switch(opc) 

case 1: 
cadastrar(&aviao, &ordem); 
opc = 1; 
break; 

case 2: 
imprimir(&aviao, &ordem); 
opc = 2; 
break; 

default: 
printf("\n\n\t Saindo do Programa!!! "); 
printf("\n\n\t Tecle ENTER..."); 
system("pause>>null"); 

break; 


}while(opc == 1 || opc == 2); 

}

...

Baixar como (para membros premium)  txt (5.4 Kb)   pdf (180.7 Kb)   docx (1.1 Mb)  
Continuar por mais 2 páginas »
Disponível apenas no TrabalhosGratuitos.com