ALGORITMOS APLICADOS À ENGENHARIA I A2 – Exercícios

Propaganda
ALGORITMOS APLICADOS À ENGENHARIA I
A2 – Exercícios preparatórios
Fluxograma, Pseudocódigo e Pascal
1. Problema: Montar um algoritmo capaz de ler os dois lados de um retângulo e calcular sua área e apresentar o
resultado na tela:
Fluxograma
Pseudocódigo (Portugol)
Código Pascal
Programa AreaDoRet
{cabeçalho do programa}
Program AreaDoRet;
Início
“Digite a medida do lado 1”
Var L1, L2, AreaRe:Real
{área de declarações}
Var L1, L2, AreaRe:Real;
Início
Escreva “Digite a medida de lado
1”
Leia L1
Escreva “Digite a medida do lado
2”
Leai L2
AreaRe L1 * L2
Escreva “A área do retângulo é”,
AreaRe
{corpo do programa}
Begin
Writeln(‘Digite a medida de lado
1’);
Readln(L1);
Writeln(‘Digite a medida do lado
2’);
Readln(L2);
AreaRe := L1 * L2;
Writeln(‘A área do retângulo é’,
AreaRe);
L1
“Digite a medida do lado 2”
L2
AreaRe L1 * L2
“A área do retângulo é”,
AreaRe
End.
FIM
Fim.
Observações:
1. Percebam que a diferença entre o Pseudocódigo e o código Pascal é mínima.
2. E que a lógica (raciocínio) realizada para um, é a mesma utilizada para o outro.
3. Todo conteúdo entre chaves {comentário} no código Pascal é identificado como comentário, e não altera
em nada a compilação ou lógica do programa. Seu único objetivo é facilitar o entendimento do código.
4. Diferentemente do Fluxograma e do Pseudocódigo, toda representação de texto em código Pascal vem
entre aspas simples ‘texto ‘.
5. O símbolo de atribuição (←) em código Pascal é representado por (:=).
ALGORITMOS APLICADOS À ENGENHARIA I
2. Problema: Montar um algoritmo capaz de ler os dois números inteiros e escrevê-los na tela (um em cada linha):
Fluxograma
Pseudocódigo (Portugol)
Código Pascal
Programa N1N2
{cabeçalho do programa}
Program N1N2;
Var
{área de declarações}
Var
N1, N2: Integer;
Início
“Digite o primeiro número: ”
N1, N2: Inteiro
N1
“Digite o segundo número: ”
N2
N1
Início
Escreva “Digite o primeiro
número: ”
Leia N1
Escreva “Digite o segundo
número: ”
Leai N2
Escreva N1
Escreva N2
{corpo do programa}
Begin
Write(‘Digite o primeiro número:
’);
Readln(N1);
Writeln(‘Digite o segundo
número: ’);
Readln(N2);
Writeln(N1);
Writeln(N2);
Fim.
End.
N2
FIM
ALGORITMOS APLICADOS À ENGENHARIA I
3. Problema: Montar um algoritmo capaz de ler os dois números inteiros e escrevê-los na tela (na mesma linha):
Fluxograma
Pseudocódigo (Portugol)
Código Pascal
Início
“Digite o primeiro número: ”
Programa N1N2
{cabeçalho do programa}
Program N1N2;
Var
{área de declarações}
Var
N1, N2: Integer;
N1, N2: Inteiro
N1
“Digite o segundo número: ”
N2
Início
Escreva “Digite o primeiro
número: ”
Leia N1
Escreva “Digite o segundo
número: ”
Leai N2
Escreva N1,N2
N1,N2
FIM
{corpo do programa}
Begin
Write(‘Digite o primeiro número:
’);
Readln(N1);
Write(‘Digite o segundo número:
’);
Readln(N2);
Writeln(N1, ’,’ ,N2); {Aparece na
tela o valor de N1,N2}
Fim.
End.
ALGORITMOS APLICADOS À ENGENHARIA I
4. Problema: Montar um algoritmo capaz de ler os dois números inteiros e somá-los e escrever o resultado na tela:
Fluxograma
Pseudocódigo (Portugol)
Início
Programa SomaNum
“Digite o primeiro número”
Código Pascal
{cabeçalho do programa}
Program SomaNum;
Var N1, N2, Soma:Inteiro
{área de declarações}
Var N1, N2, Soma:Inteiro;
Início
Escreva “Digite o primeiro
número”
Leia N1
Escreva “Digite o segundo
número”
Leai N2
Soma N1 + N2
Escreva “A soma de N1 com N2 é
”, Soma
{corpo do programa}
Begin
Writeln(‘Digite o primeiro
número’);
Readln(N1);
Writeln(‘Digite o segundo
número’);
Readln(N2);
Soma := N1 + N2
Writeln(‘A soma de N1 com N2 é
‘, Soma);
N1
“Digite o segundo número”
N2
Soma N1 + N2
“A soma de N1 com N2 é ”,
Soma
End.
FIM
Fim.
ALGORITMOS APLICADOS À ENGENHARIA I
5.
Problema: Montar um programa que leia dois números inteiros, identifica o maior e escreve ele na tela
novamente:
Fluxograma
Pseudocódigo (Portugol)
Código Pascal
Início
Programa Omaior
“Digite o primeiro número”
Var N1, N2, Soma:Inteiro
{cabeçalho do programa}
Program Omaior;
{área de declarações}
Var N1, N2, Soma:Inteiro;
N1
“Digite o segundo número”
N2
SIM
NÃO
N1>N2 ?
N1
Início
Escreva “Digite o primeiro
número”
Leia N1
Escreva “Digite o segundo
número”
Leai N2
Se N1 > N2
Então
Escreva N1
Senão
Escreva N2
{corpo do programa}
Begin
Writeln(‘Digite o primeiro
número’);
Readln(N1);
Writeln(‘Digite o segundo
número’);
Readln(N2);
If (N1>N2)
Then
Writeln(N1) {sem ;}
Else
Writeln(N2);
N2
Fim.
FIM
End.
ALGORITMOS APLICADOS À ENGENHARIA I
6.
Problema: Montar um algoritmo que calcule o perímetro e a área de um círculo, baseado no raio digitado pelo
usuário. Escrever os resultados na tela: (P := 2 * PI * R A:= PI * R ^ 2)
7. Problema: Montar um algoritmo que leia 4 notas (A1,A2,A3 e A4), escolha a maior entre A1 e A2, e calcule a
média de acordo os critérios da Uninove (Media := (A1+A3+A4)/3 ou Media := (A2+A3+A4)/3). Escrever a média
na tela:
8. Problema: Pretende-se elaborar um programa que permita ler um número a partir do teclado, e
apresentar a indicação de que é positivo, negativo ou nulo.
Entradas: Num
Saídas: mensagens
Descrição do problema:
Se N = 0 então  N é nulo
Se N > 0 então  N é positivo;
senão  N é negativo
Este problema faz então uso de estruturas condicionais (estruturas de seleção).
9. Problema: Montar um algoritmo capaz de ler um caractere do teclado e escrevê-lo na tela duas vezes seguidas
(na linha de baixo):
10. Problema: Escrever um programa que peça para digitar M se o sexo é feminino ou H se o sexo é masculino.
Baseado na letra digitada escrever na tela ‘Seu sexo é masculino’ ou ‘Seu sexo é feninimo’.
11. Problema: Montar um algoritmo capaz de ler a base maior, a base menor e a altura de um trapézio. Em seguida
calcular sua área e escrever o resultado na tela: (AreaTrapezio := (Bmaior + Bmenor) * Altura /2)
12. Problema: Montar um algoritmo capaz de ler os dois números reais, calcular a multiplicação entre eles, somar 80
ao resultado e escrevê-lo na tela:
13. Problema: Montar um programa que leia dois números e escreva na tela qual é o maior:
14. Problema: Montar um programa que leia três números e escreva na tela qual é o maior:
15. Problema: Montar um programa que leia o lado de um quadrado e o raio de uma circunferência, calcule e área de
cada um deles e diga qual tem área maior:
Download