Algoritmos x Pascal
-
Upload
michael-douglas -
Category
Documents
-
view
231 -
download
0
Transcript of Algoritmos x Pascal
-
8/18/2019 Algoritmos x Pascal
1/21
Algoritmos
Pascal/Delphi
Luciano TopolniakNoções de Programação I
-
8/18/2019 Algoritmos x Pascal
2/21
Desvio condicional simples –seleção simples
Para solucionar este problema, vamos aprenderuma nova instrução de algoritmos, chamada desviocondicional simples ou seleção simples .
Este tipo de estrutura de controle tem porfinalidade tomar uma decisão com base nasavaliações das expressões passadas.
A avaliação de uma expressão sempre retornará
apenas um valor válido, podendo ser: verdadeiroou falso .
-
8/18/2019 Algoritmos x Pascal
3/21
Algoritmos: Se .. entao
Se entao< Instrução I >
fimse se (10 >= 5) entaoA 10 * 5
fimse
Se entao< Instrução I >< Instrução II >
fimsese (10 >= 5) entao
A 10 * 5b 10 + 10
fimse
-
8/18/2019 Algoritmos x Pascal
4/21
Pascal/Delphi: If .. ThenIf Then
< Instrução I >If (10 >= 5) Then
A:= 10 * 5;
If ThenBegin
< Instrução I >< Instrução II >< Instrução III >
End ;
If (10 >= 5) ThenBegin
A:= 10 * 5;B:= 10 + 5;C:= 10 - 5;
End;
-
8/18/2019 Algoritmos x Pascal
5/21
Algoritmos: se .. entao .. senao
se (10 >= 5) entaoA 10 * 5b 10 + 10
senaoA 10 / 5b 10 - 10
fimse
Se entao< Instrução I >< Instrução II >
Senao< Instrução III >
< Instrução IV >Fimse
-
8/18/2019 Algoritmos x Pascal
6/21
Pascal/Delphi: if .. then .. else
If (10 >= 5) ThenA:= 10 * 5
ElseA:= 10 / 5
If (10 >= 5) ThenBegin
A:= 10 * 5;B:= 10 + 5;C:= 10 - 5;
End ElseBegin
A:= 10 * 2;B:= 10 + 2;C:= 10 - 2;
End;
-
8/18/2019 Algoritmos x Pascal
7/21
Algoritmos: escolha .. casoescolha < expressão-de-seleção >
caso ,,...,
caso ,,...,
outrocaso
< lista-de-comandos-3 >
fimescolha
-
8/18/2019 Algoritmos x Pascal
8/21
ExemploInício da execuçãoNome do Atleta = Luciano Topolniak Idade do Atleta = 25Categoria = ProfissionalFim da execução.
Início da execução
Nome do Atleta = GasparIdade do Atleta = 7Categoria = InfantilFim da execução.
Início da execução
Nome do Atleta = JúniorIdade do Atleta = 15Categoria = JuvenilFim da execução.
-
8/18/2019 Algoritmos x Pascal
9/21
Pascal/Delphi: Case .. Of Case of
,,...,:
,,...,:
else
< lista-de-comandos-3 >
End;
-
8/18/2019 Algoritmos x Pascal
10/21
ExemploNome do Atleta = Luciano Topolniak Idade do Atleta = 25Categoria = Profissional
Nome do Atleta = GasparIdade do Atleta = 7Categoria = Infantil
Nome do Atleta = JúniorIdade do Atleta = 15Categoria = Juvenil
-
8/18/2019 Algoritmos x Pascal
11/21
Estruturas de Repetição
Laços
-
8/18/2019 Algoritmos x Pascal
12/21
Na estrutura para..faca , a variável decontrole é inicializada com e noinício de cada iteração, seu valor é comparadocom . Se o valor da variável formenor ou igual a , a lista de
comandos é executada e após ser executado oúltimo comando da lista, a variável de controle éincrementada. Isto repete-se até que o valor davariável de controle seja maior que , quando então é executado o comando
imediatamente após a palavra fimpara .
Laços • Laço Para .. Faca / For .. Do
-
8/18/2019 Algoritmos x Pascal
13/21
Para .. Faca / For .. Do
Pascal/Delphi
Pascal/Delphi
Algoritmos
-
8/18/2019 Algoritmos x Pascal
14/21
Exemplo Para ..facaEscrever a tabuada de um número qualquer.
Qual tabuada vocêdeseja fazer?55 x 1 = 55 x 2 = 105 x 3 = 155 x 4 = 205 x 5 = 255 x 6 = 305 x 7 = 355 x 8 = 40
5 x 9 = 455 x 10 = 50
Fim da execução.
-
8/18/2019 Algoritmos x Pascal
15/21
Exemplo For.. DoEscrever a tabuada de um número qualquer.
Qual tabuada vocêdeseja fazer?55 x 1 = 55 x 2 = 105 x 3 = 155 x 4 = 205 x 5 = 255 x 6 = 305 x 7 = 355 x 8 = 40
5 x 9 = 455 x 10 = 50
program LacoFor;var
tab,i: integer; begin
Writeln('Qual tabuada voce deseja fazer?');Readln(tab);
for i := 1 to 10 doWriteln(tab, ' x ',i,' = ', tab * i);
readln;end .
Pascal/Delphi
Resultado
-
8/18/2019 Algoritmos x Pascal
16/21
enquanto faca
fimenquanto
Enquanto .. Faca / While .. Do• Teste no início.• Nem sempre entra no laço.• Executa enquanto a condição for verdadeira.
Sintaxe:
While Do While Do
Begin
End ;
-
8/18/2019 Algoritmos x Pascal
17/21
Qual tabuada vocêdeseja fazer?55 x 1 = 55 x 2 = 105 x 3 = 155 x 4 = 205 x 5 = 255 x 6 = 305 x 7 = 355 x 8 = 40
5 x 9 = 455 x 10 = 50
Fim da execução.
Exemplo: Enquanto .. Faca
-
8/18/2019 Algoritmos x Pascal
18/21
Qual tabuada vocêdeseja fazer?55 x 1 = 55 x 2 = 105 x 3 = 155 x 4 = 205 x 5 = 255 x 6 = 305 x 7 = 355 x 8 = 40
5 x 9 = 455 x 10 = 50
Exemplo: While .. Do
program LacoWhile;var
tab,i: integer; begin
Writeln('Qual tabuada voce deseja fazer?');Readln(tab);i:=1;
While i
-
8/18/2019 Algoritmos x Pascal
19/21
Comando Repita .. Ate / Repeat .. Until • Teste no final.• O laço sempre é executado pelo menos uma vez.• Executa até que a condição se torne verdadeira.
repita
ate
Repeat
Until
-
8/18/2019 Algoritmos x Pascal
20/21
Exemplo: Repita .. Ate
Qual tabuada vocêdeseja fazer?55 x 1 = 55 x 2 = 105 x 3 = 155 x 4 = 205 x 5 = 255 x 6 = 305 x 7 = 355 x 8 = 40
5 x 9 = 455 x 10 = 50
Fim da execução.
-
8/18/2019 Algoritmos x Pascal
21/21
Exemplo: Repeat .. Until
Qual tabuada vocêdeseja fazer?55 x 1 = 55 x 2 = 105 x 3 = 155 x 4 = 205 x 5 = 255 x 6 = 305 x 7 = 355 x 8 = 40
5 x 9 = 455 x 10 = 50
Fim da execução.
program LacoRepeat;var
tab,i: integer;
beginWriteln('Qual tabuada voce deseja fazer?');Readln(tab);i:=1;Repeat
Writeln(tab, ' x ',i,' = ', tab * i);i := i +1;
Until (i > 10);readln;
end .
Delphi