SlideShare uma empresa Scribd logo
1 de 4
Baixar para ler offline
http://olinux.uol.com.br/artigos/352/print_preview.html



                    Curso de Algoritmo - Aula V
                    Por: Jorge Luiz E. de Souza ( 17/07/2001 )




                         Introdução

                    Como prometido aqui está a análise do algoritmo da aula anterior . Vamos entender o código!


                         Análise da estrutura PARA

                    Primeira análise: A seção de declaração de variáveis

                        Declare Nome, EstCiv, TimeQTorce, Origem: texto
                                Sexo: caracter
                                i, Idade, contMulher, contMFilhos, ContTPalmeiras:
                    inteiro



                    A primeira seção de um algoritmo é sempre a DECLARAÇÃO DE VARIÁVEIS. Variáveis estas, que serão
                    utilizadas no decorrer do algoritmo. É necessária a declaração, pois se uma variável utilizada no corpo
                    do algoritmo não estiver declarada, o algoritmo não será executado. Provavelmente ocorrerá o erro ?
                    váriavel desconhecida ? e o programa será abortado.

                    Segunda análise: A inicialização de variáveis

                    Quando declaramos uma variável, simplesmente estamos reservando um espaço de memória que
                    poderá conter qualquer valor no decorrer do algoritmo. Mas o endereço ao qual a nossa variável está
                    apontando provavelmente contém informações deixadas por outros programas ou se tivermos sorte
                    estará vazia. A inicialização de variáveis se faz necessária quando devemos conhecer previamente o
                    valor de uma variável.

                    É o caso dos contadores. Precisamos ter certeza de que o valor inicial de um contador é 0 (zero). Então
                    iniciamos seu valor utilizando o comando de atribuição "".

                          ContMulher 0
                          ContMFilhos 0
                          ContTPalmeiras           0



                    NOTA: Um detalhe muito importante que deve ser observado é o nome de uma variável. Devemos dar
                    preferência para nomes SIGNIFICATIVOS, isto é, ao criar uma variável, escolha um nome que
                    possibilite a vizualização de seu conteúdo simplesmente pela leitura do mesmo. Como no caso acima,
                    onde:


                          q   ContMulher é a variável que contará todas as mulheres da pesquisa;
                          q   ContMFilhos é a variável que contará todas as mulheres casadas e com mais de três filhos;
                          q   ContTPalmeiras é a variável que contará todos os torcedores do Palmeiras da pesquisa.


                    Terceira análise: A implementação do Para e tudo que se irá repetir em seu escopo

                          PARA i <-- 1 ATÉ 3000 FAÇA
                              escreva('Digite um nome: ')
                              leia (nome)
                              Escreva('Digite a idade: ')
                              leia(idade)
                              Escreva(Digite o Sexo (F para Feminino, M para Masculino):
                    ')
                                 leia(Sexo)
                                 Escreva('Digite o Estado Civil (Solteiro(a), Casado(a): ')
                                 Leia(EstCiv)

                                 SE (sexo = 'F') or (sexo = 'f')
                                     ENTÃO
                                         ContMulher ContMulher + 1
SE EstCiv = 'Casada'
                      ENTÃO
                          Escreva('Digite o Numero de filhos: ')
                          Leia(NumFilhos)
                          SE NumFilhos > 3
                              ENTÃO
                                  ContMFilhos ContMFilhos + 1
                          FIMSE
                 FIMSE
             //fim do então
             SENÃO
                 Escreva('Digite o Time para o qual Torce: ')
                 Leia(TimeQTorce)
                 SE TimeQTorce = 'Palmeiras'
                      ENTÃO
                          contTPalmeiras ContTPalmeiras +1
                 FIMSE
             //fim do senão
         FIMSE
         Escreva('Digite a Origem (BR,US,UC...): ')
         leia(Origem)

    FIMPARA



Muito bem, observando a estrutura acima, podemos notar: Todas as instruções entre o PARA e o
FIMPARA serão executadas 3000 vezes. A estrutura de SE utilizada será tratada na Quarta análise. Todo
o processamento do programa está dentro do para As primeiras oito linhas após o PARA são de leitura
das variáveis (NOME, IDADE, SEXO e ESTCIV). Os comandos Escreva que antecedem cada comando
Leia, são para informar o usuário quanto ao que o programa está esperando que ele digite.

A posição de implementação dos contadores dentro da estrutura é estratégica, e não poderia ser outra.
De acordo com a lógica do algoritmo, as leituras que estão dentro dos SE, mais internos, somente
ocorrerão se a condição de entrada do ENTÃO ou SENÃO correspondente forem satisfeitas. Isto é, para
o nosso algoritmo, se uma mulher não estiver com estado civil "Casada", o algoritmo não lerá número
de filhos para esta mulher.

Notamos que alguns valores recebidos não estão servindo para nenhum calculo especial, somente
sendo necessários se, forem ser guardados em um banco de dados.




Quarta análise: Estrutura SE ENTÃO SENÃO encadeadas

         SE (sexo = 'F') or (sexo = 'f')
             ENTÃO
                 ContMulher ContMulher + 1
                 SE EstCiv = 'Casada'
                     ENTÃO
                         Escreva('Digite o Numero de filhos: ')
                         Leia(NumFilhos)
                         SE NumFilhos > 3
                             ENTÃO
                                  ContMFilhos ContMFilhos + 1
                         FIMSE
                 FIMSE
             //fim do então
             SENÃO
                 Escreva('Digite o Time para o qual Torce: ')
                 Leia(TimeQTorce)
                 SE TimeQTorce = 'Palmeiras'
                     ENTÃO
                         contTPalmeiras ContTPalmeiras +1
                 FIMSE
             //fim do senão
         FIMSE



Observamos aqui, uma estrutura de SE's encadeados. NOTA: A indentação é muito importante na
estruturação visual do código para uma melhor leitura e entendimento do mesmo. INDENTAÇÃO É:
Tabulação de elementos semelhantes em um mesmo nível (COLUNA imaginária). Se você pegar uma
régua e colocar no início de um ENTÃO, encontrará seu SENÃO correspondente, e assim por diante.

Relembrando

Uma estrutura SE possui dois caminhos a serem seguidos, de acordo com o resultado da condição
estabelecida para o mesmo.

Sintaxe:

    SE CONDIÇÃO
        ENTÃO //comandos do então CASO A
CONDIÇÃO SEJA VERDADEIRA
        SENÃO //comandos do senão CASO A
CONDIÇÃO SEJA FALSA
    FIMSE



Então, se o resultado da condição: SE (sexo = 'F') or (sexo = 'f') , for VERDADEIRA, serão executados
todos os comandos que estão dentro do ENTÃO deste SE.

                  ContMulher ContMulher + 1
                  SE EstCiv = 'Casada'
                      ENTÃO
                          Escreva('Digite o Numero de filhos: ')
                          Leia(NumFilhos)
                          SE NumFilhos > 3
                              ENTÃO
                                  ContMFilhos ContMFilhos + 1
                          FIMSE
                  FIMSE
              //fim do então



Caso contrário, se o resultado da condição for FALSO, serão executados todos os comandos do SENÃO
correspondente.

                  Escreva('Digite o Time para o qual Torce: ')
                  Leia(TimeQTorce)
                  SE TimeQTorce = 'Palmeiras'
                      ENTÃO
                          contTPalmeiras ContTPalmeiras +1
                  FIMSE
              //fim do senão



E assim é para todos os SE's encadeados dentro deste último.

Quinta análise: Comandos de saída (resultado do processamento)

Nosso exemplo é muito simples, e sua saída não poderia ser diferente. Como utilizamos comente
estruturas de contagem (CONTADORES), após a leitura ser finalizadas, simplesmente escrevemos uma
frase elucidativa antes de mostrar o CONTEÚDO (somatória) das variáveis de contagem.

Sexta análise: Comentário sobre as deficiencias e possíveis refinamentos

Este código é um bom começo, mas apresenta algumas "falhas". Por exemplo: - Uma vez iniciada a
execução, será necessário digitar contínuamente todos as 3000 fichas. Sem interrupção, isto é, sem
fechar o programa. Agora, imagine se fossem 100.000 entradas!

Então, o PARA é uma estrutura falha?! De maneira alguma, é uma ótima estrutura de repetição, mas
devemos pensar muito bem aonde a utilizaremos dentro de um algoritmo.

Em nossa próxima implementação de solução para este mesmo problema, utilizaremos uma estrutura
de repetição mais flexível o ENQUANTO que nos traz mais um conceito importante em programação; as
FLAGs.


   Conclusão

O algoritmo está certo, mas a estrutura apresentada na resolução (PARA) não é adequada para esta
situação (isto foi feito propositalmente, para apresentar a você a estrutura). Na próxima aula
apresentaremos o mesmo algoritmo com a estrutura (ENQUANTO), mais adequada para este problema.

Entenda bem a leitura (interpretação) deste código, pois na próxima somente será analisada a nova
estrutura, sendo que o restante do código será o mesmo. Até a próxima!




                               Copyright (C) 1999- 2 0 0 0 Linux Solutions

Mais conteúdo relacionado

Mais procurados

ICC - Aula 05 - Estrutura de controle, sequencial e condicional
ICC - Aula 05 - Estrutura de controle, sequencial e condicionalICC - Aula 05 - Estrutura de controle, sequencial e condicional
ICC - Aula 05 - Estrutura de controle, sequencial e condicionalFelipe J. R. Vieira
 
Apostila de portugol_(algoritmo)
Apostila de portugol_(algoritmo)Apostila de portugol_(algoritmo)
Apostila de portugol_(algoritmo)Luiz Antonio Melo
 
Alg aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)
Alg   aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)Alg   aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)
Alg aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)Thalles Anderson
 
ICC – Aula 09 – Estrutura de Repetição
ICC – Aula 09 – Estrutura de RepetiçãoICC – Aula 09 – Estrutura de Repetição
ICC – Aula 09 – Estrutura de RepetiçãoFelipe J. R. Vieira
 
Lógica de programação 4
Lógica de programação 4Lógica de programação 4
Lógica de programação 4José Lopes
 
Estruturas de controle if/else switch PHP
Estruturas de controle if/else switch PHPEstruturas de controle if/else switch PHP
Estruturas de controle if/else switch PHPSedu
 
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Gercélia Ramos
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoMauro Pereira
 
Estrutura De Repetição Composta
Estrutura De Repetição CompostaEstrutura De Repetição Composta
Estrutura De Repetição CompostaHebert Alquimim
 
6. Estruturas de controlo de fluxo (decisao)
6. Estruturas de controlo de fluxo (decisao)6. Estruturas de controlo de fluxo (decisao)
6. Estruturas de controlo de fluxo (decisao)Eugenio Caetano
 
Algoritmos - Comandos de Repetição
Algoritmos - Comandos de RepetiçãoAlgoritmos - Comandos de Repetição
Algoritmos - Comandos de RepetiçãoElaine Cecília Gatto
 
Aula 04 Estruturas de repetição 02 - Para Faça
Aula 04  Estruturas de repetição 02 - Para FaçaAula 04  Estruturas de repetição 02 - Para Faça
Aula 04 Estruturas de repetição 02 - Para FaçaEder Samaniego
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidosCrishna Irion
 

Mais procurados (19)

ICC - Aula 05 - Estrutura de controle, sequencial e condicional
ICC - Aula 05 - Estrutura de controle, sequencial e condicionalICC - Aula 05 - Estrutura de controle, sequencial e condicional
ICC - Aula 05 - Estrutura de controle, sequencial e condicional
 
Apostila de portugol_(algoritmo)
Apostila de portugol_(algoritmo)Apostila de portugol_(algoritmo)
Apostila de portugol_(algoritmo)
 
Alg aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)
Alg   aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)Alg   aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)
Alg aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)
 
ICC – Aula 09 – Estrutura de Repetição
ICC – Aula 09 – Estrutura de RepetiçãoICC – Aula 09 – Estrutura de Repetição
ICC – Aula 09 – Estrutura de Repetição
 
Lógica de programação 4
Lógica de programação 4Lógica de programação 4
Lógica de programação 4
 
Estruturas de controle if/else switch PHP
Estruturas de controle if/else switch PHPEstruturas de controle if/else switch PHP
Estruturas de controle if/else switch PHP
 
Apostila de portugol (algoritmo)
Apostila de portugol (algoritmo)Apostila de portugol (algoritmo)
Apostila de portugol (algoritmo)
 
2832014 curso plsql
2832014 curso plsql2832014 curso plsql
2832014 curso plsql
 
Algoritmos - Pascal
Algoritmos - PascalAlgoritmos - Pascal
Algoritmos - Pascal
 
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
 
Dicas Excel
Dicas ExcelDicas Excel
Dicas Excel
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigo
 
Estrutura De Repetição Composta
Estrutura De Repetição CompostaEstrutura De Repetição Composta
Estrutura De Repetição Composta
 
Algop - aula 04 pascal 1
Algop - aula 04 pascal 1Algop - aula 04 pascal 1
Algop - aula 04 pascal 1
 
6. Estruturas de controlo de fluxo (decisao)
6. Estruturas de controlo de fluxo (decisao)6. Estruturas de controlo de fluxo (decisao)
6. Estruturas de controlo de fluxo (decisao)
 
Algoritmos - Comandos de Repetição
Algoritmos - Comandos de RepetiçãoAlgoritmos - Comandos de Repetição
Algoritmos - Comandos de Repetição
 
Aula 04 Estruturas de repetição 02 - Para Faça
Aula 04  Estruturas de repetição 02 - Para FaçaAula 04  Estruturas de repetição 02 - Para Faça
Aula 04 Estruturas de repetição 02 - Para Faça
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
 
Digitação
DigitaçãoDigitação
Digitação
 

Destaque

Deste Planalto Central - Poetas de Brasília
Deste Planalto Central - Poetas de BrasíliaDeste Planalto Central - Poetas de Brasília
Deste Planalto Central - Poetas de BrasíliaMarcos Sigismundo
 
Gema's Presentation
Gema's PresentationGema's Presentation
Gema's Presentationcgaliano
 
Quinto dia de festa são tiago tema
Quinto dia de festa são tiago temaQuinto dia de festa são tiago tema
Quinto dia de festa são tiago temajucrismm
 
Virtualização - Diego Zilli
Virtualização - Diego ZilliVirtualização - Diego Zilli
Virtualização - Diego ZilliDiego Zilli
 
A morte por Pedro Bial
A morte por Pedro BialA morte por Pedro Bial
A morte por Pedro Bialbilibiowebsite
 
Lançamento do jornal boas novas
Lançamento do jornal boas novasLançamento do jornal boas novas
Lançamento do jornal boas novasjucrismm
 
Ciências métodos anticoncepcionais- karolayne e evellin n° 12 e 03
Ciências   métodos anticoncepcionais- karolayne e evellin n° 12 e 03Ciências   métodos anticoncepcionais- karolayne e evellin n° 12 e 03
Ciências métodos anticoncepcionais- karolayne e evellin n° 12 e 03Rodrigo Exteca
 
Tugas Nirkabel Wireless security on mikrotik vivi olivia bayau
Tugas Nirkabel Wireless security on mikrotik vivi olivia bayauTugas Nirkabel Wireless security on mikrotik vivi olivia bayau
Tugas Nirkabel Wireless security on mikrotik vivi olivia bayauVivioliviabayau14
 
Festival internacional del globo 2010
Festival internacional del globo 2010Festival internacional del globo 2010
Festival internacional del globo 2010jorge moreno
 
Apresentacao Do Produto Expatriados
Apresentacao Do Produto ExpatriadosApresentacao Do Produto Expatriados
Apresentacao Do Produto Expatriadosscconsulting
 
Apresentação da Spin no SIMPASE 2013
Apresentação da Spin no SIMPASE 2013Apresentação da Spin no SIMPASE 2013
Apresentação da Spin no SIMPASE 2013SpinEngenharia
 
Apresentacao artrio atualizada
Apresentacao artrio atualizadaApresentacao artrio atualizada
Apresentacao artrio atualizadafelipediasartrio
 
Computação nas nuvens
Computação nas nuvensComputação nas nuvens
Computação nas nuvensmarqueswillian
 

Destaque (20)

Dia do livro
Dia do livroDia do livro
Dia do livro
 
Apresentação Creci 05 07 2013
Apresentação Creci 05 07 2013Apresentação Creci 05 07 2013
Apresentação Creci 05 07 2013
 
Deste Planalto Central - Poetas de Brasília
Deste Planalto Central - Poetas de BrasíliaDeste Planalto Central - Poetas de Brasília
Deste Planalto Central - Poetas de Brasília
 
Gema's Presentation
Gema's PresentationGema's Presentation
Gema's Presentation
 
Quinto dia de festa são tiago tema
Quinto dia de festa são tiago temaQuinto dia de festa são tiago tema
Quinto dia de festa são tiago tema
 
Introducao fisiogames
Introducao fisiogamesIntroducao fisiogames
Introducao fisiogames
 
Virtualização - Diego Zilli
Virtualização - Diego ZilliVirtualização - Diego Zilli
Virtualização - Diego Zilli
 
A morte por Pedro Bial
A morte por Pedro BialA morte por Pedro Bial
A morte por Pedro Bial
 
Lançamento do jornal boas novas
Lançamento do jornal boas novasLançamento do jornal boas novas
Lançamento do jornal boas novas
 
Sniffers Parte 2
Sniffers   Parte 2Sniffers   Parte 2
Sniffers Parte 2
 
Ciências métodos anticoncepcionais- karolayne e evellin n° 12 e 03
Ciências   métodos anticoncepcionais- karolayne e evellin n° 12 e 03Ciências   métodos anticoncepcionais- karolayne e evellin n° 12 e 03
Ciências métodos anticoncepcionais- karolayne e evellin n° 12 e 03
 
Tugas Nirkabel Wireless security on mikrotik vivi olivia bayau
Tugas Nirkabel Wireless security on mikrotik vivi olivia bayauTugas Nirkabel Wireless security on mikrotik vivi olivia bayau
Tugas Nirkabel Wireless security on mikrotik vivi olivia bayau
 
Festival internacional del globo 2010
Festival internacional del globo 2010Festival internacional del globo 2010
Festival internacional del globo 2010
 
Apresentacao Do Produto Expatriados
Apresentacao Do Produto ExpatriadosApresentacao Do Produto Expatriados
Apresentacao Do Produto Expatriados
 
Apresentação da Spin no SIMPASE 2013
Apresentação da Spin no SIMPASE 2013Apresentação da Spin no SIMPASE 2013
Apresentação da Spin no SIMPASE 2013
 
Os livros
Os livrosOs livros
Os livros
 
Localizarea traditionala a publicatiilor in biblioteca
Localizarea traditionala a publicatiilor in bibliotecaLocalizarea traditionala a publicatiilor in biblioteca
Localizarea traditionala a publicatiilor in biblioteca
 
Apresentacao artrio atualizada
Apresentacao artrio atualizadaApresentacao artrio atualizada
Apresentacao artrio atualizada
 
Computação nas nuvens
Computação nas nuvensComputação nas nuvens
Computação nas nuvens
 
Moinho
MoinhoMoinho
Moinho
 

Semelhante a Curso De Algoritmo Aula 5

Capítulo 07 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 07 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 07 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 07 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Os Fantasmas !
 
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdfAlgoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdfEnio Filho
 
Programar Em Pascal
Programar Em PascalProgramar Em Pascal
Programar Em PascalPepe Rocker
 
15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticao15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticaoLee Aragão
 
DOJO - TDD com C++
DOJO - TDD com C++DOJO - TDD com C++
DOJO - TDD com C++thiagodp
 
TDD em C++
TDD em C++TDD em C++
TDD em C++thiagodp
 
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdfAlgoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdfEnio Filho
 
Aplicacao If
Aplicacao IfAplicacao If
Aplicacao Ifcubres
 
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdfAlgoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdfEnio Filho
 
Guia prático para criar algoritmos
Guia prático para criar algoritmosGuia prático para criar algoritmos
Guia prático para criar algoritmosMauro Pereira
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9Felipe Santos
 
Logica programar
Logica programarLogica programar
Logica programarManawydan
 
Estrutura de linguagem C++
Estrutura de linguagem C++Estrutura de linguagem C++
Estrutura de linguagem C++Verônica Veiga
 

Semelhante a Curso De Algoritmo Aula 5 (20)

Capítulo 07 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 07 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 07 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 07 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
 
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdfAlgoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
 
Programar Em Pascal
Programar Em PascalProgramar Em Pascal
Programar Em Pascal
 
15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticao15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticao
 
Lógica de programação
Lógica de programaçãoLógica de programação
Lógica de programação
 
Comandos em python
Comandos em pythonComandos em python
Comandos em python
 
Dicas de Excel
Dicas de ExcelDicas de Excel
Dicas de Excel
 
DOJO - TDD com C++
DOJO - TDD com C++DOJO - TDD com C++
DOJO - TDD com C++
 
TDD em C++
TDD em C++TDD em C++
TDD em C++
 
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdfAlgoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
 
Aplicacao If
Aplicacao IfAplicacao If
Aplicacao If
 
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdfAlgoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdf
 
Excelavancado
ExcelavancadoExcelavancado
Excelavancado
 
Guia prático para criar algoritmos
Guia prático para criar algoritmosGuia prático para criar algoritmos
Guia prático para criar algoritmos
 
Algoritmos Aula 11
Algoritmos Aula 11Algoritmos Aula 11
Algoritmos Aula 11
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9
 
Cap3 icc final
Cap3 icc finalCap3 icc final
Cap3 icc final
 
Exercicios facebook
Exercicios facebookExercicios facebook
Exercicios facebook
 
Logica programar
Logica programarLogica programar
Logica programar
 
Estrutura de linguagem C++
Estrutura de linguagem C++Estrutura de linguagem C++
Estrutura de linguagem C++
 

Mais de Felipe Santos

ConheçA O Apache 2.0 Parte 2
ConheçA O Apache 2.0   Parte 2ConheçA O Apache 2.0   Parte 2
ConheçA O Apache 2.0 Parte 2Felipe Santos
 
SegurançA BáSica Do Apache
SegurançA BáSica Do ApacheSegurançA BáSica Do Apache
SegurançA BáSica Do ApacheFelipe Santos
 
Quero Slack! (Parte 3)
Quero Slack! (Parte 3)Quero Slack! (Parte 3)
Quero Slack! (Parte 3)Felipe Santos
 
Quero Slack! (Parte 1)
Quero Slack! (Parte 1)Quero Slack! (Parte 1)
Quero Slack! (Parte 1)Felipe Santos
 
Quero Arch! (Parte 2)
Quero Arch! (Parte 2)Quero Arch! (Parte 2)
Quero Arch! (Parte 2)Felipe Santos
 
Quero Arch! (Parte 1)
Quero Arch! (Parte 1)Quero Arch! (Parte 1)
Quero Arch! (Parte 1)Felipe Santos
 
Conceitos BáSicos Sobre SegurançA Parte 6
Conceitos BáSicos Sobre SegurançA   Parte 6Conceitos BáSicos Sobre SegurançA   Parte 6
Conceitos BáSicos Sobre SegurançA Parte 6Felipe Santos
 
Conceitos BáSicos Sobre SegurançA Parte 4
Conceitos BáSicos Sobre SegurançA   Parte 4Conceitos BáSicos Sobre SegurançA   Parte 4
Conceitos BáSicos Sobre SegurançA Parte 4Felipe Santos
 
Conceitos BáSicos Sobre SegurançA Parte 3
Conceitos BáSicos Sobre SegurançA   Parte 3Conceitos BáSicos Sobre SegurançA   Parte 3
Conceitos BáSicos Sobre SegurançA Parte 3Felipe Santos
 
Conceitos BáSicos Sobre SegurançA Parte 2
Conceitos BáSicos Sobre SegurançA   Parte 2Conceitos BáSicos Sobre SegurançA   Parte 2
Conceitos BáSicos Sobre SegurançA Parte 2Felipe Santos
 
Curso De Shell Aula 6
Curso De Shell   Aula 6Curso De Shell   Aula 6
Curso De Shell Aula 6Felipe Santos
 
Curso De Shell Aula 5
Curso De Shell   Aula 5Curso De Shell   Aula 5
Curso De Shell Aula 5Felipe Santos
 
Curso De Shell Aula 3
Curso De Shell   Aula 3Curso De Shell   Aula 3
Curso De Shell Aula 3Felipe Santos
 
Curso De Shell Aula 1
Curso De Shell   Aula 1Curso De Shell   Aula 1
Curso De Shell Aula 1Felipe Santos
 
Compartilhando Internet Via Rádio entre m servidor linux e clientes windows
Compartilhando Internet Via Rádio entre m servidor linux e clientes windowsCompartilhando Internet Via Rádio entre m servidor linux e clientes windows
Compartilhando Internet Via Rádio entre m servidor linux e clientes windowsFelipe Santos
 
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...Felipe Santos
 
Acesso Remoto Para Principiantes
Acesso Remoto Para PrincipiantesAcesso Remoto Para Principiantes
Acesso Remoto Para PrincipiantesFelipe Santos
 

Mais de Felipe Santos (20)

ConheçA O Apache 2.0 Parte 2
ConheçA O Apache 2.0   Parte 2ConheçA O Apache 2.0   Parte 2
ConheçA O Apache 2.0 Parte 2
 
SegurançA BáSica Do Apache
SegurançA BáSica Do ApacheSegurançA BáSica Do Apache
SegurançA BáSica Do Apache
 
Quero Slack! (Parte 3)
Quero Slack! (Parte 3)Quero Slack! (Parte 3)
Quero Slack! (Parte 3)
 
Quero Slack! (Parte 1)
Quero Slack! (Parte 1)Quero Slack! (Parte 1)
Quero Slack! (Parte 1)
 
Quero Arch! (Parte 2)
Quero Arch! (Parte 2)Quero Arch! (Parte 2)
Quero Arch! (Parte 2)
 
Quero Arch! (Parte 1)
Quero Arch! (Parte 1)Quero Arch! (Parte 1)
Quero Arch! (Parte 1)
 
Conceitos BáSicos Sobre SegurançA Parte 6
Conceitos BáSicos Sobre SegurançA   Parte 6Conceitos BáSicos Sobre SegurançA   Parte 6
Conceitos BáSicos Sobre SegurançA Parte 6
 
Conceitos BáSicos Sobre SegurançA Parte 4
Conceitos BáSicos Sobre SegurançA   Parte 4Conceitos BáSicos Sobre SegurançA   Parte 4
Conceitos BáSicos Sobre SegurançA Parte 4
 
Conceitos BáSicos Sobre SegurançA Parte 3
Conceitos BáSicos Sobre SegurançA   Parte 3Conceitos BáSicos Sobre SegurançA   Parte 3
Conceitos BáSicos Sobre SegurançA Parte 3
 
Conceitos BáSicos Sobre SegurançA Parte 2
Conceitos BáSicos Sobre SegurançA   Parte 2Conceitos BáSicos Sobre SegurançA   Parte 2
Conceitos BáSicos Sobre SegurançA Parte 2
 
Curso De Shell Aula 6
Curso De Shell   Aula 6Curso De Shell   Aula 6
Curso De Shell Aula 6
 
Curso De Shell Aula 5
Curso De Shell   Aula 5Curso De Shell   Aula 5
Curso De Shell Aula 5
 
Curso De Shell Aula 3
Curso De Shell   Aula 3Curso De Shell   Aula 3
Curso De Shell Aula 3
 
Curso De Shell Aula 1
Curso De Shell   Aula 1Curso De Shell   Aula 1
Curso De Shell Aula 1
 
Sniffers Parte 3
Sniffers   Parte 3Sniffers   Parte 3
Sniffers Parte 3
 
Sniffers Parte 1
Sniffers   Parte 1Sniffers   Parte 1
Sniffers Parte 1
 
Introdução ao Ssh
Introdução ao SshIntrodução ao Ssh
Introdução ao Ssh
 
Compartilhando Internet Via Rádio entre m servidor linux e clientes windows
Compartilhando Internet Via Rádio entre m servidor linux e clientes windowsCompartilhando Internet Via Rádio entre m servidor linux e clientes windows
Compartilhando Internet Via Rádio entre m servidor linux e clientes windows
 
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...
Block Hosts: Bloqueando Ataques De ForçA Bruta (Brute Force) Em Ftp, Ssh E Ou...
 
Acesso Remoto Para Principiantes
Acesso Remoto Para PrincipiantesAcesso Remoto Para Principiantes
Acesso Remoto Para Principiantes
 

Último

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
 
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.keislayyovera123
 
ALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolaresALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolaresLilianPiola
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Mary Alvarenga
 
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.
 
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
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADOcarolinacespedes23
 
Caixa jogo da onça. para imprimir e jogar
Caixa jogo da onça. para imprimir e jogarCaixa jogo da onça. para imprimir e jogar
Caixa jogo da onça. para imprimir e jogarIedaGoethe
 
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaAula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaaulasgege
 
UFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfUFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfManuais Formação
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditaduraAdryan Luiz
 
Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Centro Jacques Delors
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxLuizHenriquedeAlmeid6
 
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
 
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
 
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
 

Último (20)

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
 
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.
 
ALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolaresALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolares
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
 
Em tempo de Quaresma .
Em tempo de Quaresma                            .Em tempo de Quaresma                            .
Em tempo de Quaresma .
 
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
 
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
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
 
Caixa jogo da onça. para imprimir e jogar
Caixa jogo da onça. para imprimir e jogarCaixa jogo da onça. para imprimir e jogar
Caixa jogo da onça. para imprimir e jogar
 
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
 
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaAula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
 
UFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfUFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdf
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditadura
 
Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
 
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
 
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
 
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
 

Curso De Algoritmo Aula 5

  • 1. http://olinux.uol.com.br/artigos/352/print_preview.html Curso de Algoritmo - Aula V Por: Jorge Luiz E. de Souza ( 17/07/2001 ) Introdução Como prometido aqui está a análise do algoritmo da aula anterior . Vamos entender o código! Análise da estrutura PARA Primeira análise: A seção de declaração de variáveis Declare Nome, EstCiv, TimeQTorce, Origem: texto Sexo: caracter i, Idade, contMulher, contMFilhos, ContTPalmeiras: inteiro A primeira seção de um algoritmo é sempre a DECLARAÇÃO DE VARIÁVEIS. Variáveis estas, que serão utilizadas no decorrer do algoritmo. É necessária a declaração, pois se uma variável utilizada no corpo do algoritmo não estiver declarada, o algoritmo não será executado. Provavelmente ocorrerá o erro ? váriavel desconhecida ? e o programa será abortado. Segunda análise: A inicialização de variáveis Quando declaramos uma variável, simplesmente estamos reservando um espaço de memória que poderá conter qualquer valor no decorrer do algoritmo. Mas o endereço ao qual a nossa variável está apontando provavelmente contém informações deixadas por outros programas ou se tivermos sorte estará vazia. A inicialização de variáveis se faz necessária quando devemos conhecer previamente o valor de uma variável. É o caso dos contadores. Precisamos ter certeza de que o valor inicial de um contador é 0 (zero). Então iniciamos seu valor utilizando o comando de atribuição "". ContMulher 0 ContMFilhos 0 ContTPalmeiras 0 NOTA: Um detalhe muito importante que deve ser observado é o nome de uma variável. Devemos dar preferência para nomes SIGNIFICATIVOS, isto é, ao criar uma variável, escolha um nome que possibilite a vizualização de seu conteúdo simplesmente pela leitura do mesmo. Como no caso acima, onde: q ContMulher é a variável que contará todas as mulheres da pesquisa; q ContMFilhos é a variável que contará todas as mulheres casadas e com mais de três filhos; q ContTPalmeiras é a variável que contará todos os torcedores do Palmeiras da pesquisa. Terceira análise: A implementação do Para e tudo que se irá repetir em seu escopo PARA i <-- 1 ATÉ 3000 FAÇA escreva('Digite um nome: ') leia (nome) Escreva('Digite a idade: ') leia(idade) Escreva(Digite o Sexo (F para Feminino, M para Masculino): ') leia(Sexo) Escreva('Digite o Estado Civil (Solteiro(a), Casado(a): ') Leia(EstCiv) SE (sexo = 'F') or (sexo = 'f') ENTÃO ContMulher ContMulher + 1
  • 2. SE EstCiv = 'Casada' ENTÃO Escreva('Digite o Numero de filhos: ') Leia(NumFilhos) SE NumFilhos > 3 ENTÃO ContMFilhos ContMFilhos + 1 FIMSE FIMSE //fim do então SENÃO Escreva('Digite o Time para o qual Torce: ') Leia(TimeQTorce) SE TimeQTorce = 'Palmeiras' ENTÃO contTPalmeiras ContTPalmeiras +1 FIMSE //fim do senão FIMSE Escreva('Digite a Origem (BR,US,UC...): ') leia(Origem) FIMPARA Muito bem, observando a estrutura acima, podemos notar: Todas as instruções entre o PARA e o FIMPARA serão executadas 3000 vezes. A estrutura de SE utilizada será tratada na Quarta análise. Todo o processamento do programa está dentro do para As primeiras oito linhas após o PARA são de leitura das variáveis (NOME, IDADE, SEXO e ESTCIV). Os comandos Escreva que antecedem cada comando Leia, são para informar o usuário quanto ao que o programa está esperando que ele digite. A posição de implementação dos contadores dentro da estrutura é estratégica, e não poderia ser outra. De acordo com a lógica do algoritmo, as leituras que estão dentro dos SE, mais internos, somente ocorrerão se a condição de entrada do ENTÃO ou SENÃO correspondente forem satisfeitas. Isto é, para o nosso algoritmo, se uma mulher não estiver com estado civil "Casada", o algoritmo não lerá número de filhos para esta mulher. Notamos que alguns valores recebidos não estão servindo para nenhum calculo especial, somente sendo necessários se, forem ser guardados em um banco de dados. Quarta análise: Estrutura SE ENTÃO SENÃO encadeadas SE (sexo = 'F') or (sexo = 'f') ENTÃO ContMulher ContMulher + 1 SE EstCiv = 'Casada' ENTÃO Escreva('Digite o Numero de filhos: ') Leia(NumFilhos) SE NumFilhos > 3 ENTÃO ContMFilhos ContMFilhos + 1 FIMSE FIMSE //fim do então SENÃO Escreva('Digite o Time para o qual Torce: ') Leia(TimeQTorce) SE TimeQTorce = 'Palmeiras' ENTÃO contTPalmeiras ContTPalmeiras +1 FIMSE //fim do senão FIMSE Observamos aqui, uma estrutura de SE's encadeados. NOTA: A indentação é muito importante na estruturação visual do código para uma melhor leitura e entendimento do mesmo. INDENTAÇÃO É: Tabulação de elementos semelhantes em um mesmo nível (COLUNA imaginária). Se você pegar uma
  • 3. régua e colocar no início de um ENTÃO, encontrará seu SENÃO correspondente, e assim por diante. Relembrando Uma estrutura SE possui dois caminhos a serem seguidos, de acordo com o resultado da condição estabelecida para o mesmo. Sintaxe: SE CONDIÇÃO ENTÃO //comandos do então CASO A CONDIÇÃO SEJA VERDADEIRA SENÃO //comandos do senão CASO A CONDIÇÃO SEJA FALSA FIMSE Então, se o resultado da condição: SE (sexo = 'F') or (sexo = 'f') , for VERDADEIRA, serão executados todos os comandos que estão dentro do ENTÃO deste SE. ContMulher ContMulher + 1 SE EstCiv = 'Casada' ENTÃO Escreva('Digite o Numero de filhos: ') Leia(NumFilhos) SE NumFilhos > 3 ENTÃO ContMFilhos ContMFilhos + 1 FIMSE FIMSE //fim do então Caso contrário, se o resultado da condição for FALSO, serão executados todos os comandos do SENÃO correspondente. Escreva('Digite o Time para o qual Torce: ') Leia(TimeQTorce) SE TimeQTorce = 'Palmeiras' ENTÃO contTPalmeiras ContTPalmeiras +1 FIMSE //fim do senão E assim é para todos os SE's encadeados dentro deste último. Quinta análise: Comandos de saída (resultado do processamento) Nosso exemplo é muito simples, e sua saída não poderia ser diferente. Como utilizamos comente estruturas de contagem (CONTADORES), após a leitura ser finalizadas, simplesmente escrevemos uma frase elucidativa antes de mostrar o CONTEÚDO (somatória) das variáveis de contagem. Sexta análise: Comentário sobre as deficiencias e possíveis refinamentos Este código é um bom começo, mas apresenta algumas "falhas". Por exemplo: - Uma vez iniciada a execução, será necessário digitar contínuamente todos as 3000 fichas. Sem interrupção, isto é, sem fechar o programa. Agora, imagine se fossem 100.000 entradas! Então, o PARA é uma estrutura falha?! De maneira alguma, é uma ótima estrutura de repetição, mas devemos pensar muito bem aonde a utilizaremos dentro de um algoritmo. Em nossa próxima implementação de solução para este mesmo problema, utilizaremos uma estrutura de repetição mais flexível o ENQUANTO que nos traz mais um conceito importante em programação; as FLAGs. Conclusão O algoritmo está certo, mas a estrutura apresentada na resolução (PARA) não é adequada para esta
  • 4. situação (isto foi feito propositalmente, para apresentar a você a estrutura). Na próxima aula apresentaremos o mesmo algoritmo com a estrutura (ENQUANTO), mais adequada para este problema. Entenda bem a leitura (interpretação) deste código, pois na próxima somente será analisada a nova estrutura, sendo que o restante do código será o mesmo. Até a próxima! Copyright (C) 1999- 2 0 0 0 Linux Solutions