This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
exercicios [2019/04/30 10:25] castilho |
exercicios [2019/04/30 10:44] castilho |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | * Para compilar este programa em //Pascal//, descubra os erros e os corrija. | ||
+ | |||
+ | <code pascal> | ||
+ | (* programa que le um numero e retorna o ultimo algarismo *) | ||
+ | (* escrito por Marcos Castilho em 22/10/2002, com erros. *) | ||
+ | program ultalgarismo; | ||
+ | begin | ||
+ | read (A) | ||
+ | writeln (A mod 10); | ||
+ | end. | ||
+ | </code> | ||
+ | |||
+ | * Seja o seguinte programa em //Pascal//: | ||
+ | |||
+ | <code pascal> | ||
+ | program Misterio; | ||
+ | var nota1,nota2,media: integer; | ||
+ | begin | ||
+ | readln(nota1,nota2) | ||
+ | while nota1 <> 0 do | ||
+ | media:=nota1+nota2/2; | ||
+ | writeln(nota1,nota2,media); | ||
+ | readln(nota1,nota2); | ||
+ | end. | ||
+ | </code> | ||
+ | |||
+ | * Quantos são, e quais são, os erros de compilação deste programa? | ||
+ | * Considerando que você corrigiu os erros de compilação corretamente, o que faz este programa? Por exemplo, tente entrar com as notas 5 e 5. Depois tente com 0, 5. Rode o programa e veja se você acertou. | ||
+ | * Considerando a estrutura do programa, os nomes das variáveis e a endentação usada, podemos afirmar que o programador cometeu alguns erros de lógica. Quantos são e quais são estes erros? | ||
+ | * O que faz o programa faz após estas correções? Rode novamente com as notas 5 e 5 e depois 0 e 5 e confira se você acertou. | ||
+ | |||
+ | * Enumere e explique todos os erros contidos no seguinte código //Pascal//: | ||
+ | |||
+ | <code pascal> | ||
+ | program misterio2; | ||
+ | var | ||
+ | m, g: real; | ||
+ | N1, N2: integer; | ||
+ | begin | ||
+ | readln(N1, N2); | ||
+ | if (N1 > N2) then | ||
+ | m := N2 | ||
+ | else | ||
+ | m := N1; | ||
+ | g:= 1; | ||
+ | while g do | ||
+ | begin | ||
+ | if (N1 mod m = 0) AND (N2 mod m = 0) then | ||
+ | g := 0; | ||
+ | else | ||
+ | m := m - 1; | ||
+ | end; | ||
+ | if (m := N1) then | ||
+ | writeln('O valor resultante eh: ' m); | ||
+ | end. | ||
+ | </code> | ||
+ | |||
* Considere o seguinte programa em //Pascal//. | * Considere o seguinte programa em //Pascal//. | ||
- | <code> | + | <code pascal> |
program soma_dois; | program soma_dois; | ||
var a, b, soma: longint; | var a, b, soma: longint; | ||
Line 28: | Line 85: | ||
* No programa abaixo, determine o tipo de dados das variáveis. Algumas delas podem ser tanto inteiras como reais, enquanto que algumas só podem ser de um tipo específico. Se puder, prefira um tipo ordinal. | * No programa abaixo, determine o tipo de dados das variáveis. Algumas delas podem ser tanto inteiras como reais, enquanto que algumas só podem ser de um tipo específico. Se puder, prefira um tipo ordinal. | ||
| | ||
- | <code> | + | <code pascal> |
Program ex1; | Program ex1; | ||
var | var | ||
Line 76: | Line 133: | ||
0 graus, 58 minutos e 20 segundos | 0 graus, 58 minutos e 20 segundos | ||
- | * | + | * Fazer um programa em Free Pascal que leia seis números (a11, a12, b1, a21, a22, b2) e imprima uma solução para o sistema de equações lineares abaixo: |
- | + | ||
- | Fazer um programa em Free Pascal que leia seis números (a11, a12, b1, a21, a22, b2) e imprima uma solução para o sistema de equações lineares abaixo: | + | |
<code> | <code> |