algoritmos. estruturas condicionais os algoritmos criados até agora só utilizaram, entrada,...
TRANSCRIPT
Algoritmos
Estruturas Condicionais
Os algoritmos criados até agora só utilizaram, ENTRADA, PROCESSAMENTO E SAIDA.As estruturas condicionais permitem que o sistema faça analises ou que o usuário faça escolhas.Elas permitem a execução de ações dependendo de determinadas condições.
Fluxograma
Os fluxogramas ou diagramas de bloco são:Forma gráfica para representar os passos
lógicos de um determinado algoritmo.Com o diagrama pode-se definir e facilitar a
visualização dos passos em um problema.
Entendo as formas do fluxograma convencional (deve-se saber bem o que é cada símbolo dentro de um fluxograma) então anotem.
Analisando algoritmo e criando o fluxograma
Algoritmo mediaVar nota1, nota2, media de Real;Inicio
nota1<=5;nota2<=7;media <=(nota1+nota2)/2;Mostrar media;
Fim
Fluxograma do algoritmo
da média montado:
Estrutura condicional SE
Um exemplo seria, o sistema ler 2 números e coloca-los em ordem crescente. Para fazer isso, o sistema teria que verificar qual número maior e coloca-lo depois do numero menor.Para fazer isso utilizamos:
Se <condição> for verdadeira faça
senão forfaça
Para entender o funcionamento dessas condições,vamos analisar o seguinte problema:
Crie 2 variáveis (A e B) e leia 1 valor para cada uma delas. Disponibilize esses valores de forma crescente.Para conseguir solucionar este problema teremos que criar uma condicional, veja o algoritmo.
“Algoritmando” o problema
Algoritmo crescenteAB;Var A, B de inteiro;A <=2;B <=1;
SE A>B entãoMostre “Em ordem crescente ”,B, “-”,A;
SENAOMostre “Em ordem crescente ”,A, “-”,B;
Fim.
No exemplo o B deveria vir antes do A, dessa forma utilizamos a condição SE, e analisamos quem é maior. Isso indicou que Se o A for maior que B, ele mostra o B primeiro que é menor e em seguida o A. Caso contrario ele irá mostrar o A e em seguida o B, finalizando assim o algoritmo.
A=2 e B=1
Em ordem crescente 1 - 2
Algoritmo2 (Fazendo a leitura dos dados digitados)
Algoritmo crescenteAB;Var A, B de inteiro;Mostre “Digite o valor para A”
Ler(A); Mostre “Digite o valor para B” Ler(B); SE a>b então
Mostre “Em ordem crescente ”,B, “-”,A;SENAO
Mostre “Em ordem crescente ”,A, “-”,B;Fim.
Nos casos de condições devemos fazer o teste de mesa quantas vezes for necessário.
Teste de Mesa1A = 2B =72>7 (não. Irá executar o senão)Em ordem crescente 2 – 7
Teste de Mesa2A = 8B =58>5 (sim. Irá executar o então)Em ordem crescente 5 - 8
A=2 e B=1
Digite o valor de A: 5Digite o valor de B:2Em ordem crescente 2 - 5
A=2 e B=1
Digite o valor de A: 1Digite o valor de B:8Em ordem crescente 1 - 8
Fluxograma do Algoritmo CrescenteAB
Operadores Relacionais
Agora que aprendemos um pouco sobre estruturas condicionais, vamos entender melhor sobre os operadores relacionais existentes:Nos exemplos utilizados, já utilizamos alguns operadores relacionais o >. Observe a tabela abaixo com operadores e seu significado:
AnotarOperadores Relacionais
Símbolo Significado
= Igual
<> Diferente de
> Maior que
< Menor que
>= Maior ou igual que
<= Menor ou igual que
Explicação
O = compara de os elementos são idênticos: Kelly = Kelly. Em java devemos colocar 2 iguais: = =;O <> compara se os elementos são diferentes: Damião <> Kelly.O > indica se o numero é maior que outro: 10 > 4;O < indica se o numero é maior que outro: 5 < 9;O >= indica se o numero é maior ou igual que outro: 10 > 4; ou 10= 10;O <= indica se o numero é maior ou igual que outro: 5 < 9; ou 5= 5;A medida que os problema vão evoluindo, iremos cada vez mais utilizar esses operadores relacionais, vocês verão que é muito difícil não usá-los.
Utilizando o SE aplicação na média
O sistema de avaliação de determinada disciplina, é composto por três provas. A primeira prova tem peso 2, a Segunda tem peso 3 e a terceira prova tem peso 5. Faça um algoritmo para calcular a média final de um aluno desta disciplina. Caso a media seja maior ou igual a 6 mostre APROVADO, se a media for entre 4 e 6, mostre em RECUPERAÇÃO, e se for menor do que 4 mostre REPROVADO.
Observe como fica o
fluxograma do problema:
Resposta do Algoritmo
Algoritmo avaliacao;Var prova1, prova2, prova3, media de real; Inicio Mostrar “digite a nota1”; Ler(prova1); Mostrar “digite a nota2”; Ler(prova2); Mostrar “digite a nota3”; Ler(prova3);
Prova1 prova1 * 2 /10; Prova2 prova2 * 3 /10; Prova3 prova3 * 5 /10; Media (prova1 + prova2 + prova3); Se media >= 6 entao Mostrar “Aprovado com media “+media; Se media >= 4 entao Mostrar “Recuperacao com media “+media; Senao Mostrar “Reprovado com media “+media;Fim.