SlideShare una empresa de Scribd logo
1 de 5
EXEMPLO ESTRUTURA 
1.º PASSO: definir a estrutura 
Estrutura Simples 
Número da conta 
Nome do cliente 
Saldo 
TYPE REGISTRO = RECORD 
num : INTEGER; 
nome : STRING[35]; 
saldo : REAL; 
END; 
2.º PASSO: Construir o Conjunto da Estrutura 
Um vetor de 15 posições. Cada posição tem uma estrutura dentro . 
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 
Membro1 
Membro2 
Membro3 
Membro1 
Membro2 
Membro3 
conta: ARRAY[1..15] OF REGISTRO; 
3.º PASSO: Definir as Variáveis 
i, op, posi, achou, num_conta : INTEGER; 
saldo_cliente, menor_saldo : REAL; 
nome_cliente :STRING[35]; 
4.º PASSO: Inicializar as variáveis e estruturas 
FOR i := 1 TO 15 DO 
BEGIN 
conta[i].num := 0; 
conta[i].nome:=''; 
conta[i].saldo := 0; 
END; 
5.º PASSO: Fazer um repeat para trabalhar com as opções do menu 
Quando OP for igual a 5, o programa é encerrado! Enquanto for diferente de 5, o usuário deve 
escolher alguma opção do menu! 
Repeat 
//comandos; 
Until(op!=5) 
6.º PASSO: Comandos que vão dentro do repeat
O valor digitado para OP deve estar dentro da faixa de valores entre 1 e 4. Se estiver fora, uma 
mensagem deve ser mostrada ao usuário, pedindo para que ele digite o valor de opção correto; 
IF((op < 1) OR (op > 5)) THEN 
WRITELN(' Opcao Invalida '); 
Criar o IF ou então um Switch/Case para trabalhar as opções de cadastro, visualização e exclusão. 
if ( op = 1 ) then 
begin 
//comandos – cadastro; 
End; 
if ( op = 2 ) then 
begin 
//comandos – visualização; 
End; 
if ( op = 3 ) then 
begin 
//comandos – exclusão; 
End; 
if ( op = 4 ) then 
begin 
//comandos – visualização; 
End; 
Implementar os códigos que vão em cada IF. 
OPÇÃO1: 
a) Solicitar que o usuário digite o número da conta a ser cadastrada 
WRITELN(' Digite o n£mero da conta a ser incluida '); 
READLN(num_conta); 
b) Verificar se a conta digitada pelo usuário já existe no vetor. O vetor pode incialmente, estar vazio 
e não ter registro algum, mas o contrário também é verdadeiro. O FOR percorre o vetor de estrutura 
comparando o número digitado pela pessoa com os números de contas cadastradas no vetor de 
estrutura. Se achar algum registro com o mesmo número digitado pelo usuário, seta o valor da 
variável ACHOU com 1. 
FOR i := 1 TO 15 DO 
BEGIN 
IF(num_conta = conta[i].num) THEN 
achou := 1; 
END;
c) Em seguida, um IF é implementado de forma a avaliar o valor armazenado em ACHOU, que é a 
nossa variável auxiliar. Se ACHOU for igual a um, então, um registro foi encontrado, portanto, este 
número de conta não pode ser cadastrado. O usuário terá que digitar outro número. 
IF achou = 1 THEN 
WRITELN(' Ja existe conta cadastrada com esse numero '); 
d) Se o ACHOU for diferente de um, então, o número da conta digitada pelo usuário pode ser usado 
para cadastrar uma nova conta. Nesse ponto temos que verificar se ainda há posições disponíveis no 
vetor para realizar o armazenamento de mais uma conta. Para isso, inicializamos o valor de POSI 
com zero (indica que não há mais posições disponíveis) e i com um. O While vai percorrer o vetor 
de estrutura, todas as quinze posições e dentro dele, uma verificação é feita usando IF. Se o número 
da conta da posição i for igual a zero, então, POSI receberá o valor de i e i receberá o valor 16. 
posi := 0; 
i := 1; 
WHILE(i <= 15) DO 
BEGIN 
IF(conta[i].num = 0) THEN 
BEGIN 
posi := i; 
i := 16; 
END; 
i := i + 1; 
END; 
Teste de Mesa (usando como base quatro posições no vetor!) 
posi i i < 4 conta[i].num = 0 posi := i i = 16 i++ 
0 1 
1 < 4 
V 
conta[1].num = 0 
10 = 0 
F 
pula pula 1+1=1 
0 2 
2 < 4 
V 
conta[2].num = 0 
5 ==0 
F 
pula pula 2+1=3 
0 3 
3 < 4 
V 
conta[3].num = 0 
0 = 0 
V 
posi = 3 i = 16 3+1 =4 
3 4 
4 < 4 
F 
pula pula pula pula 
De acordo com o teste de mesa, a posição 3 está livre, pois contém o valor zero. Lembre-se, 
o vetor de estrutura foi inicializado com zero em todas as posições. Portanto, ainda há uma posição 
livre no vetor que pode ser usada para inserir uma nova conta. 
e) Agora, podemos verificar se há ou não posições disponíveis no vetor. Se o valor da variável 
auxiliar POSI for igual a 0, isso significa que não há posições disponíveis. Uma mensagem deve ser 
emitida ao usuário. 
IF(posi = 0) THEN 
WRITELN(' Impossivel cadastrar novas contas ')
f) Caso contrário, isto é, se o valor armazenado em POSI for diferente de zero, isso significa que 
ainda temos posições disponíveis para usar no vetor. Então, os valores serão solicitados ao usuário e 
a conta será cadastrada. Devemos usar POSI como índice neste momento, para que os dados sejam 
inseridos na posição do vetor que está vazia! 
ELSE //else2 
BEGIN 
WRITE(' Digite o nome do cliente '); 
READLN(nome_cliente); 
WRITE(' Digite o saldo do cliente '); 
READLN(saldo_cliente); 
conta[posi].num := num_conta; 
conta[posi].nome := nome_cliente; 
conta[posi].saldo := saldo_cliente; 
WRITELN(' Conta cadastrada com sucesso '); 
END; //fim do else 1 
END; //fim do else 2 
OPÇÃO 2: 
a) A opção 2 deve permitir visualizar todas as contas de um determinado cliente. Primeiro, o 
usuário deve digitar o nome do cliente que ele quer visualizar. 
WRITE('Digite o nome do cliente a ser consultado '); 
READLN(nome_cliente); 
achou := 0; 
b) O For abaixo percorre o vetor de estrutura verificando se o nome digitado pelo usuário é igual a 
algum nome registrado no vetor. 
FOR i := 1 TO 15 DO 
BEGIN 
IF(conta[i].nome = nome_cliente) THEN 
BEGIN 
WRITELN(' || CONTA || SALDO ||'); 
WRITELN(' || ', conta[i].num, ' || ', conta[i].saldo:5:2, ' || '); 
achou := 1; 
END; 
END; 
Teste de Mesa para quatro posições 
achou = 0 i=1 i<4 i++ conta[i].nome = nome_cliente conta[i].num conta[i].saldo 
achou = 
1 
achou = 0 i= 1 
1<4 
V 
1+1=2 
conta[1].nome = “Elaine” 
“Edson” = “Elaine” 
F 
pula pula pula 
achou = 0 i=2 
2<4 
V 
2+1=3 
conta[2].nome = “Elaine” 
“Franciele” = “Elaine” 
F 
pula pula Pula 
achou = 0 i=3 
3<4 
V 
3+1=4 
conta[3].nome = “Elaine” 
“Elaine” = “Elaine” 
V 
conta[3].num 
20 
conta[3].saldo 
200 
achou=1 
achou = 1 i=4 
4<4 
F 
4+1=5 pula pula pula pula
c) Se a variável auxiliar ACHOU for igual a zero, então o cliente não está cadastrado. 
IF(achou = 0) THEN 
WRITELN(' Nao existe conta cadastrada para este cliente '); 
OPÇÃO 3: 
a) 
b) Agora que já temos o valor da variável ACHOU, podemos fazer as verificações. Primeiro, 
verificamos se ACHOU é igual a zero. Se sim, então nenhuma conta não foi cadastrada. 
IF achou = 0 
THEN WRITELN('Nenhuma conta foi cadastrada') 
c) 
d) Não esqueça do getchar(); 
Você pode ainda incluir uma opção para imprimir o vetor inteiro: 
if(op==4){ 
for(i=0;i<15;i++){ 
printf(" -------------------------------------------- 
------- "); 
printf(" n Numero da Conta: %d", conta[i].num); 
printf(" n Nome do Cliente: %s", conta[i].nome); 
printf(" n Saldo da Conta do Cliente: R$ %5.3f", 
conta[i].saldo); 
printf(" n n "); 
} 
printf(" ---------------------------------------------- 
----- "); 
}

Más contenido relacionado

Más de Elaine Cecília Gatto

Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxElaine Cecília Gatto
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Elaine Cecília Gatto
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarElaine Cecília Gatto
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesElaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationElaine Cecília Gatto
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfElaine Cecília Gatto
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Elaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoElaine Cecília Gatto
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsElaine Cecília Gatto
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoElaine Cecília Gatto
 
Exploring label correlations for partitioning the label space in multi label ...
Exploring label correlations for partitioning the label space in multi label ...Exploring label correlations for partitioning the label space in multi label ...
Exploring label correlations for partitioning the label space in multi label ...Elaine Cecília Gatto
 
Exercicios Resolvidos Série MIPS Embarcados
Exercicios Resolvidos Série MIPS EmbarcadosExercicios Resolvidos Série MIPS Embarcados
Exercicios Resolvidos Série MIPS EmbarcadosElaine Cecília Gatto
 

Más de Elaine Cecília Gatto (20)

entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
 
Exploring label correlations for partitioning the label space in multi label ...
Exploring label correlations for partitioning the label space in multi label ...Exploring label correlations for partitioning the label space in multi label ...
Exploring label correlations for partitioning the label space in multi label ...
 
Número de Bell
Número de BellNúmero de Bell
Número de Bell
 
Coeficiente da Silhueta
Coeficiente da SilhuetaCoeficiente da Silhueta
Coeficiente da Silhueta
 
Exercicios Resolvidos Série MIPS Embarcados
Exercicios Resolvidos Série MIPS EmbarcadosExercicios Resolvidos Série MIPS Embarcados
Exercicios Resolvidos Série MIPS Embarcados
 

Último

Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfEditoraEnovus
 
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANO
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANOInvestimentos. EDUCAÇÃO FINANCEIRA 8º ANO
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANOMarcosViniciusLemesL
 
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...LizanSantos1
 
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxSlide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxconcelhovdragons
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfHenrique Pontes
 
Currículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfCurrículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfIedaGoethe
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxOsnilReis1
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxLuizHenriquedeAlmeid6
 
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOLEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOColégio Santa Teresinha
 
Programa de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasPrograma de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasCassio Meira Jr.
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfAdrianaCunha84
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasRosalina Simão Nunes
 
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxAula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxBiancaNogueira42
 
02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdfJorge Andrade
 
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfDIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfIedaGoethe
 
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdf
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdfcartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdf
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdfIedaGoethe
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresaulasgege
 
A galinha ruiva sequencia didatica 3 ano
A  galinha ruiva sequencia didatica 3 anoA  galinha ruiva sequencia didatica 3 ano
A galinha ruiva sequencia didatica 3 anoandrealeitetorres
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfaulasgege
 

Último (20)

Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdf
 
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANO
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANOInvestimentos. EDUCAÇÃO FINANCEIRA 8º ANO
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANO
 
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...
 
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxSlide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
 
Currículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfCurrículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdf
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
 
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOLEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
 
Programa de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasPrograma de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades Motoras
 
Em tempo de Quaresma .
Em tempo de Quaresma                            .Em tempo de Quaresma                            .
Em tempo de Quaresma .
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdf
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
 
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxAula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
 
02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf
 
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfDIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
 
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdf
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdfcartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdf
cartilha-pdi-plano-de-desenvolvimento-individual-do-estudante.pdf
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autores
 
A galinha ruiva sequencia didatica 3 ano
A  galinha ruiva sequencia didatica 3 anoA  galinha ruiva sequencia didatica 3 ano
A galinha ruiva sequencia didatica 3 ano
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdf
 

Exemplo Registro

  • 1. EXEMPLO ESTRUTURA 1.º PASSO: definir a estrutura Estrutura Simples Número da conta Nome do cliente Saldo TYPE REGISTRO = RECORD num : INTEGER; nome : STRING[35]; saldo : REAL; END; 2.º PASSO: Construir o Conjunto da Estrutura Um vetor de 15 posições. Cada posição tem uma estrutura dentro . 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Membro1 Membro2 Membro3 Membro1 Membro2 Membro3 conta: ARRAY[1..15] OF REGISTRO; 3.º PASSO: Definir as Variáveis i, op, posi, achou, num_conta : INTEGER; saldo_cliente, menor_saldo : REAL; nome_cliente :STRING[35]; 4.º PASSO: Inicializar as variáveis e estruturas FOR i := 1 TO 15 DO BEGIN conta[i].num := 0; conta[i].nome:=''; conta[i].saldo := 0; END; 5.º PASSO: Fazer um repeat para trabalhar com as opções do menu Quando OP for igual a 5, o programa é encerrado! Enquanto for diferente de 5, o usuário deve escolher alguma opção do menu! Repeat //comandos; Until(op!=5) 6.º PASSO: Comandos que vão dentro do repeat
  • 2. O valor digitado para OP deve estar dentro da faixa de valores entre 1 e 4. Se estiver fora, uma mensagem deve ser mostrada ao usuário, pedindo para que ele digite o valor de opção correto; IF((op < 1) OR (op > 5)) THEN WRITELN(' Opcao Invalida '); Criar o IF ou então um Switch/Case para trabalhar as opções de cadastro, visualização e exclusão. if ( op = 1 ) then begin //comandos – cadastro; End; if ( op = 2 ) then begin //comandos – visualização; End; if ( op = 3 ) then begin //comandos – exclusão; End; if ( op = 4 ) then begin //comandos – visualização; End; Implementar os códigos que vão em cada IF. OPÇÃO1: a) Solicitar que o usuário digite o número da conta a ser cadastrada WRITELN(' Digite o n£mero da conta a ser incluida '); READLN(num_conta); b) Verificar se a conta digitada pelo usuário já existe no vetor. O vetor pode incialmente, estar vazio e não ter registro algum, mas o contrário também é verdadeiro. O FOR percorre o vetor de estrutura comparando o número digitado pela pessoa com os números de contas cadastradas no vetor de estrutura. Se achar algum registro com o mesmo número digitado pelo usuário, seta o valor da variável ACHOU com 1. FOR i := 1 TO 15 DO BEGIN IF(num_conta = conta[i].num) THEN achou := 1; END;
  • 3. c) Em seguida, um IF é implementado de forma a avaliar o valor armazenado em ACHOU, que é a nossa variável auxiliar. Se ACHOU for igual a um, então, um registro foi encontrado, portanto, este número de conta não pode ser cadastrado. O usuário terá que digitar outro número. IF achou = 1 THEN WRITELN(' Ja existe conta cadastrada com esse numero '); d) Se o ACHOU for diferente de um, então, o número da conta digitada pelo usuário pode ser usado para cadastrar uma nova conta. Nesse ponto temos que verificar se ainda há posições disponíveis no vetor para realizar o armazenamento de mais uma conta. Para isso, inicializamos o valor de POSI com zero (indica que não há mais posições disponíveis) e i com um. O While vai percorrer o vetor de estrutura, todas as quinze posições e dentro dele, uma verificação é feita usando IF. Se o número da conta da posição i for igual a zero, então, POSI receberá o valor de i e i receberá o valor 16. posi := 0; i := 1; WHILE(i <= 15) DO BEGIN IF(conta[i].num = 0) THEN BEGIN posi := i; i := 16; END; i := i + 1; END; Teste de Mesa (usando como base quatro posições no vetor!) posi i i < 4 conta[i].num = 0 posi := i i = 16 i++ 0 1 1 < 4 V conta[1].num = 0 10 = 0 F pula pula 1+1=1 0 2 2 < 4 V conta[2].num = 0 5 ==0 F pula pula 2+1=3 0 3 3 < 4 V conta[3].num = 0 0 = 0 V posi = 3 i = 16 3+1 =4 3 4 4 < 4 F pula pula pula pula De acordo com o teste de mesa, a posição 3 está livre, pois contém o valor zero. Lembre-se, o vetor de estrutura foi inicializado com zero em todas as posições. Portanto, ainda há uma posição livre no vetor que pode ser usada para inserir uma nova conta. e) Agora, podemos verificar se há ou não posições disponíveis no vetor. Se o valor da variável auxiliar POSI for igual a 0, isso significa que não há posições disponíveis. Uma mensagem deve ser emitida ao usuário. IF(posi = 0) THEN WRITELN(' Impossivel cadastrar novas contas ')
  • 4. f) Caso contrário, isto é, se o valor armazenado em POSI for diferente de zero, isso significa que ainda temos posições disponíveis para usar no vetor. Então, os valores serão solicitados ao usuário e a conta será cadastrada. Devemos usar POSI como índice neste momento, para que os dados sejam inseridos na posição do vetor que está vazia! ELSE //else2 BEGIN WRITE(' Digite o nome do cliente '); READLN(nome_cliente); WRITE(' Digite o saldo do cliente '); READLN(saldo_cliente); conta[posi].num := num_conta; conta[posi].nome := nome_cliente; conta[posi].saldo := saldo_cliente; WRITELN(' Conta cadastrada com sucesso '); END; //fim do else 1 END; //fim do else 2 OPÇÃO 2: a) A opção 2 deve permitir visualizar todas as contas de um determinado cliente. Primeiro, o usuário deve digitar o nome do cliente que ele quer visualizar. WRITE('Digite o nome do cliente a ser consultado '); READLN(nome_cliente); achou := 0; b) O For abaixo percorre o vetor de estrutura verificando se o nome digitado pelo usuário é igual a algum nome registrado no vetor. FOR i := 1 TO 15 DO BEGIN IF(conta[i].nome = nome_cliente) THEN BEGIN WRITELN(' || CONTA || SALDO ||'); WRITELN(' || ', conta[i].num, ' || ', conta[i].saldo:5:2, ' || '); achou := 1; END; END; Teste de Mesa para quatro posições achou = 0 i=1 i<4 i++ conta[i].nome = nome_cliente conta[i].num conta[i].saldo achou = 1 achou = 0 i= 1 1<4 V 1+1=2 conta[1].nome = “Elaine” “Edson” = “Elaine” F pula pula pula achou = 0 i=2 2<4 V 2+1=3 conta[2].nome = “Elaine” “Franciele” = “Elaine” F pula pula Pula achou = 0 i=3 3<4 V 3+1=4 conta[3].nome = “Elaine” “Elaine” = “Elaine” V conta[3].num 20 conta[3].saldo 200 achou=1 achou = 1 i=4 4<4 F 4+1=5 pula pula pula pula
  • 5. c) Se a variável auxiliar ACHOU for igual a zero, então o cliente não está cadastrado. IF(achou = 0) THEN WRITELN(' Nao existe conta cadastrada para este cliente '); OPÇÃO 3: a) b) Agora que já temos o valor da variável ACHOU, podemos fazer as verificações. Primeiro, verificamos se ACHOU é igual a zero. Se sim, então nenhuma conta não foi cadastrada. IF achou = 0 THEN WRITELN('Nenhuma conta foi cadastrada') c) d) Não esqueça do getchar(); Você pode ainda incluir uma opção para imprimir o vetor inteiro: if(op==4){ for(i=0;i<15;i++){ printf(" -------------------------------------------- ------- "); printf(" n Numero da Conta: %d", conta[i].num); printf(" n Nome do Cliente: %s", conta[i].nome); printf(" n Saldo da Conta do Cliente: R$ %5.3f", conta[i].saldo); printf(" n n "); } printf(" ---------------------------------------------- ----- "); }