Java - WordPress.com

Propaganda
Bacharelado em Ciência e Tecnologia
BC0505 – Processamento da Informação
GABARITO EXERCÍCIOS - Java
REPETIÇÃO / VALIDAÇÃO DE DADOS / TESTE DE MESA
1.
Escreva um programa que solicita ao usuário dois valores inteiros e positivos que serão a base e o expoente. O
programa deve calcular e escrever o resultado da base elevado à potência.
OBS: Não utilizar nenhuma função ou operador que faça o cálculo de potenciação. A ideia é escrever um
programa que calcule a potenciação.
Exemplo:
base = 2 expoente = 5 resultado = 2 x 2 x 2 x 2 x 2 = 32
ATENÇÃO : seu programa deve validar a entrada de dados de modo que sejam informados números positivos.
import java.util.Scanner;
public class CalculoPotencia {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int base, expoente;
int resultado=1;
Scanner entrada = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Escreva um valor inteiro e positivo para a base: ");
base=entrada.nextInt();
System.out.println("Escreva um valor inteiro e positivo para o expoente: ");
expoente=entrada.nextInt();
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- *
for(int i=0; i<expoente; i++){
resultado=resultado*base;
}
System.out.println("Resultado= "+resultado);
}
}
2.
Escreva um programa para imprimir uma Progressão Aritmética (PA), sendo que serão fornecidos o primeiro termo,
a razão e a quantidade de termos desejada. P or exemplo, para primeiro termo = 13, razão = 5 e quantidade de
termos = 8 o programa deverá exibir: 13, 18, 23, 28, 33, 38, 43, 48
import java.util.Scanner;
public class ProgressaoAritmetica {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int A1, r, n, An;
Scanner scan = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Digite o primeiro termo da PA: ");
A1 = scan.nextInt();
System.out.println("Digite a razão da PA: " );
r = scan.nextInt();
System.out.println("Digite a quantidade de termos da PA: ");
n = scan.nextInt();
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- *
for (int i = 1; i <= n; i++) {
An = A1 + (i -1)*r; //Fórmula geral da PA
System.out.println(An);
}
}
}
3.
A série de Fibonacci é formada pela seguinte sequência; 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ..., etc. Escreva um
algoritmo que gere a série de Fibonacci até o eNésimo termo. O valor de N (enésimo) deverá ser solici tado pelo
usuário e deverá ser maior que 10.
import java.util.Scanner;
public class SerieFibonacci {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int n, anterior=0, fibonacci=1;
Scanner entrada = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Insira o valor de n: ");
n=entrada.nextInt();
/* ------------------- VALIDAÇÃO DE DADOS --------------------------- */
while (n<10){
System.out.println("Insira um valor maior do que 10: ");
n=entrada.nextInt();
}
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
for(int i=1; i<=n; i++){
if (i==1){
System.out.println(fibonacci);
}
else{
fibonacci+=anterior;
anterior=fibonacci-anterior;
System.out.println(fibonacci);
}
}
}
}
4.
Escreva um algoritmo para informar se um número N, é primo ou não. Faça a validação de dados de forma que
N seja positivo.
import java.util.Scanner;
public class NumeroPrimo {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int n, soma = 0;
Scanner scan = new Scanner(System.in);
/*
------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Digite um número positivo:");
n = scan.nextInt();
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS ---------------------------
*/
if (n > 0) {
for (int i = 1; i <= n; i++) {
//Números primos são os números naturais que têm apenas dois divisores diferentes:
o 1 e ele mesmo.
//Portanto, 1 + ele mesmo = 2 (se for divisível por mais de 2 números, n não é
primo)
if (n%i == 0) {
soma = soma + 1;
}
}
if (soma <= 2) {
System.out.println("O número é primo");
}
else {
System.out.println("O número não é primo");
}
}
else { System.out.println("O
número não é positivo");
}
}
}
5.
Escreva um algoritmo que calcule N! (fatorial de N), sendo que o valor inteiro de N é fornecido pelo usuário. Faça a
validação de dados de forma que N seja positivo . Sabe-se que:
5! = 5 x 4 x 3 x 2 x 1 = 120
0! = 1, por definição
import java.util.Scanner;
public class CalculoFatorial {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int n, fatorial=1;
Scanner entrada = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Insira um valor n para calcular seu fatorial: ");
n=entrada.nextInt();
/* ------------------- VALIDAÇÃO DE DADOS --------------------------- */
while (n<0){
System.out.println("Insira um valor positivo: ");
n=entrada.nextInt();
}
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
if (n==0 || n==1){
fatorial=1;
System.out.println("O fatorial de n é "+fatorial);
}else{
for(int i=2; i<=n; i++){
fatorial=fatorial*i;
}
System.out.println("O fatorial de n é "+fatorial);
}
}
}
6.
Escreva um programa que exiba 30 vezes na tela a mensagem “Vou ser aprovado com A em Processamento da
Informação!”.
import java.util.Scanner;
public class ImprimeMensagem {
public static void main(String[] args) {
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
for (int i = 0; i < 30; i++) {
System.out.println(i+1 + ": Vou ser aprovado com A em Processamento da
Informação!");
}
}
}
7. Escreva um programa que exiba na tela os números inteiros de 100 até 1.
import java.util.Scanner;
public class SequenciaDecrescente {
public static void main(String[] args) {
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
for(int i=100; i>0; i--){
System.out.println(i);
}
}
}
8. Escreva um programa que exiba na tela os números inteiros de 50 até 200.
import java.util.Scanner;
public class Ex8 {
public static void main(String[] args) {
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
for (int i = 50; i <= 200; i++) {
System.out.println(i);
}
}
}
9.
Escreva um programa que exiba na tela os números inteiros de A até Z, sendo que A e Z deverão ser informados
pelo usuário.
import java.util.Scanner;
public class AaZ{
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int A,Z;
Scanner entrada = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Insira o valor de A: ");
A=entrada.nextInt();
System.out.println("Insira o valor de Z: ");
Z=entrada.nextInt();
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
for(int i=A; i<=Z; i++){
System.out.println(i);
}
}
}
10. Escreva um programa que exiba na tela a soma dos números inteiros do intervalo [A, Z]. Faça a validação de
dados de modo que não seja aceito A > Z
import java.util.Scanner;
public class SomaAaZ {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int A, Z, soma = 0;
Scanner scan = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Digite A:");
A = scan.nextInt();
System.out.println("Digite Z:");
Z = scan.nextInt();
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
if (Z > A) {
for (int i = A; i <= Z; i++) {
soma = soma + i;
}
System.out.println("A soma dos números inteiros do intervalo [A, Z] é: " + soma);
} else {
System.out.println("Z deve ser maior que A");
}
}
}
11. Dado um limite inferior e superior, calcule a soma de todos os números pares contidos nesse intervalo. Faça a
validação de dados de forma que o segundo número in formado seja maior que o primeiro
(inferior,superior)
import java.util.Scanner;
public class SomaPares{
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int inferior,superior, soma;
Scanner entrada = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Insira o valor inferior: ");
inferior=entrada.nextInt();
System.out.println("Insira o valor superior: ");
superior=entrada.nextInt();
/* ------------------- VALIDAÇÃO DE DADOS --------------------------- */
while (inferior>=superior){
System.out.println("O valor inferior deve ser menor do que o superior. Insira novos valores: ");
System.out.println("Insira o valor inferior: ");
inferior=entrada.nextInt();
System.out.println("Insira o valor superior: ");
superior=entrada.nextInt();
}
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
soma=0;
for(int i=inferior; i<=superior; i++){
if (i%2)==0{
soma=soma+i;
}
}
System.out.println("A soma dos números pares contidos no intervalo dado é "+soma);
}
}
12. Escreva um programa que solicita ao usuário uma quantidade indeterminada de números inteiros positivos (faça a
validação de dados de forma que o número informado seja positivo). O programa deve calcular e escrever a
média aritmética apenas dos números pares. A entrada de dados deve ser encerrada quando o número ZERO for
digitado.
import java.util.Scanner;
public class MediaPares {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int n = 1, soma = 0, média=0, c = 0; //c conta quantos números positivos e pares já foram
digitados
Scanner scan = new Scanner(System.in);
/* -------------------ENTRADA / VALIDAÇÃO DE DADOS --------------------------- */
while (n != 0) {
System.out.println("Digite um número positivo:");
n = scan.nextInt();
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
if (n > 0) {
if (n % 2 == 0) {
c = c + 1;
soma = soma + n;
}
} else if (n < 0) {
System.out.println("O número é negativo, digite um número positivo");
}
}
if(c!=0){
média = soma / c;
}
System.out.println("A média dos números positivos e pares já digitados é: " +
média);
}
}
13. Imprima uma tabela de conversão de polegadas para centímetros, de 1 a 20. Considere que Polegada = Centímetro
* 2,54. Recomenda-se utilizar o comando PARA.
import java.util.Scanner;
public class TabelaConversao{
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
double resultado;
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
for(int i=1; i<=20; i++){
resultado=i*2.54;
System.out.println(i+" centímetros= "+resultado+" polegadas");
}
}
}
14. Escreva um programa que solicita a idade de 20 pessoas e exiba a quantidade de pessoas que possui idade maior
ou igual a 18 anos. Exibir também a média da idade das 20 pessoas.
import java.util.Scanner; public
class QuantMaioridade {
public static void main(String[] args) {
---------------------------------------------DECLARAÇÃODEVARIÁVEIS
/*
*/
int idade, soma = 0, média, maior = 0;
Scanner scan = new Scanner(System.in);
/* ------------------- ENTRADA / PROCESSAMENTO / SAÍDA DE DADOS ---------------------------
for (int i = 1; i <= 20; i++) {
System.out.println("Digite a idade da pessoa " + i + ":");
idade = scan.nextInt();
soma = soma + idade;
if (idade >= 18) {
maior = maior + 1;
}
}
System.out.println("Existem " + maior + " maior de idade");
média = soma / 20;
System.out.println("A média das idades é: " + média);
}
*/
}
15. A série de RICCI difere da série de FIBONACCI porque os dois primeiros termos podem ser definidos pelo usuário.
Imprima os n primeiros termos da série de RICCI.
import java.util.Scanner;
public class SerieRicci {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int n, i1, i2, anterior, ricci;
Scanner entrada = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Insira o valor de n: ");
n=entrada.nextInt();
System.out.println("Insira o primeiro termo: ");
i1=entrada.nextInt();
System.out.println("Insira o segundo termo: ");
i2= entrada.nextInt();
/* ------------------- VALIDAÇÃO DE DADOS --------------------------- */
while (n<=2){
System.out.println("Insira um valor maior do que 2: ");
n=entrada.nextInt();
}
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
ricci=i2;
anterior=i1;
System.out.println(i1);
System.out.println(i2);
for(int i=3; i<=n; i++){
ricci+= anterior;
anterior=ricci-anterior;
System.out.println(ricci);
}
}
}
16. A série de FETUCCINE difere da série de RICCI porque o termo de posição par é resultado da subtração dos dois
anteriores. Os termos ímpares continuam sendo o resultado da soma dos dois elementos anteriores. Imprima os n
primeiros termos da série de FETUCCINE.
import java.util.Scanner;
public class Ex16 {
public static void main(String[] args) {
//A Serie de FETUCCINE é gerada da seguinte forma: os 2 primeiros termos são fornecidos
pelo usuario.
//A partir daí, os termos são gerados com a soma ou subtração dos 2 termos anteriores, ou
seja:
//- 1º caso: a posição do termo seja ímpar, obedeça a seguinte condição: Ai=Ai-1 + Ai-2, para
posição ímpar:
//- 2º caso: a posição do termo seja par, obedeça a seguinte condição: Ai=Ai-1 - Ai-2, para
posição par.
//Exemplo: termo 1 = 1; termo 2 = 2 serie da FETUCCINE: 1-2-3-1-4-3-7-4-11-7
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int n;
Scanner scan = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Digite a quantidade de termos desejada:");
n = scan.nextInt();
int fetuccine[] = new int[n + 1];
System.out.println("Digite o primeiro termo:");
fetuccine[1] = scan.nextInt();
System.out.println("Digite o segundo termo:");
fetuccine[2] = scan.nextInt();
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
for (int i = 3; i < n + 1; i++) {
if (i % 2 != 0) {
fetuccine[i] = fetuccine[i - 1] + fetuccine[i - 2];
} else if (i % 2 == 0) {
fetuccine[i] = fetuccine[i - 1] - fetuccine[i - 2];
}
}
for (int i = 1; i < n + 1; i++) {
System.out.println(fetuccine[i]);
}
}
}
OU
import java.util.Scanner;
public class Ex162 {
public static void main(String[] args) {
//A Serie de FETUCCINE é gerada da seguinte forma: os 2 primeiros termos são fornecidos
pelo usuario.
//A partir daí, os termos são gerados com a soma ou subtração dos 2 termos anteriores, ou
seja:
//- 1º caso: a posição do termo seja ímpar, obedeça a seguinte condição: Ai=Ai-1 + Ai-2, para
posição ímpar:
//- 2º caso: a posição do termo seja par, obedeça a seguinte condição: Ai=Ai-1 - Ai-2, para
posição par.
//Exemplo: termo 1 = 1; termo 2 = 2 serie da FETUCCINE: 1-2-3-1-4-3-7-4-11-7
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int a, b, n, resp;
int x=3;
Scanner scan = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Digite o primeiro termo:");
a= scan.nextInt();
System.out.println("Digite o segundo termo:");
b=scan.nextInt();
System.out.println("Digite a quantidade de termos desejada:");
n=scan.nextInt();
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
System.out.print(a+" ");
System.out.print(b+" ");
while (x<=n){
if(x%2!=0){
resp = a+b;
System.out.print(resp + " ");}
else {
resp = b-a;
System.out.print(resp + " ");}
a=b;
b=resp;
x=x+1;
}
}
}
17. Dado um limite inferior e superior, imprima todos os números primos contidos nesse intervalo. Faça a validação
de dados de forma que o segundo número informado seja maior que o primeiro (inferior,superior)
import java.util.Scanner;
public class SequenciaPrimos {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int inferior, superior, soma;
Scanner entrada = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Insira o valor inferior: ");
inferior = entrada.nextInt();
System.out.println("Insira o valor superior: ");
superior = entrada.nextInt();
/* ------------------- VALIDAÇÃO DE DADOS --------------------------- */
while (inferior >= superior) {
System.out.println("O valor inferior deve ser menor do que o superior. Insira novos
valores: ");
System.out.println("Insira o valor inferior: ");
inferior = entrada.nextInt();
System.out.println("Insira o valor superior: ");
superior = entrada.nextInt();
}
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
for (int i = inferior; i <= superior; i++) {
soma = 0;
for (int j = 1; j <= i; j++) {
if (i % j == 0) {
soma = soma + 1;
}
}
if (soma <= 2) {
System.out.println(i);
}
}
}
}
18. Escreva um programa para ler vários números até obter o finalizador 0. Indicar quantos números quadrados
perfeitos foram lidos. Um quadrado perfeito é aquele que tem raiz quadrada inteira.
import java.util.Scanner;
public class QuadradoPerfeito {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int n = 1, soma = 0;
Scanner scan = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
while (n != 0) {
System.out.println("Digite um número positivo:");
n = scan.nextInt();
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
if ((Math.sqrt(n) % 1 == 0) && (n != 0)) {
soma = soma + 1;
}
}
System.out.println("Existem " + soma + " quadrados perfeitos");
}
}
19. Considere que não exista o operador de divisão. Dados dois números, obter o quociente inteiro através de
subtrações sucessivas. Faça a validação de dados de forma que o DIVISOR não seja zero.
import java.util.Scanner;
public class Quociente{
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int dividendo, divisor, cont, temp;
Scanner entrada = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Insira o dividendo: ");
dividendo=entrada.nextInt();
System.out.println("Insira o divisor: ");
divisor=entrada.nextInt();
/* ------------------- VALIDAÇÃO DE DADOS --------------------------- */
while (divisor==0){
System.out.println("Insira um valor não nulo para o divisor: ");
divisor=entrada.nextInt();
}
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
temp = dividendo;
for(cont=0; divisor<=temp; cont++){
temp-=divisor;
}
System.out.println(dividendo+" dividido por "+divisor+" é igual a "+ cont);
}
}
20. Uma das maneiras de se conseguir calcular a raiz quadrada de um número é subtrair dele os números ímpares
consecutivos a partir de 1, até que o resultado seja menor ou igual a zero. O número de vezes que se conseguir
fazer as subtrações é a raiz quadrada. Faça um algoritmo que calcule a raiz quadrada de dado numero conforme
essa regra.
Exemplo: 16 – 1 = 15; 15 – 3 = 12 – 5 = 7 – 7 = 0 { foram feitas 4 subtrações}
import java.util.Scanner;
public class RaizQuadrada {
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
int x = 1, cont = 0, sub = 1;
Scanner scan = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Digite o número que deseja obter a raiz:");
int n = scan.nextInt();
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
while (n > 0) {
n = n - x;
x = x + 2;
cont = cont + 1;
}
if (n < 0) {
System.out.println("Raiz não natural");
} else {
System.out.println("A raiz do número é: " + cont);
}
}
}
21. Um vendedor de cachorro quente decidiu fazer um levantamento com seus clientes a fim de planejar as vendas.
Fez duas perguntas: Q1 – Gosta de Milho no seu hot dog? (S ou N); Q2 – qual sua idade?
Escreva um programa para processar a pesquisa. Calcule e mostre: a quantidade de clientes que preferem milho no
hot dog, a idade média dos que não gostam de milho no hot dog. Foram pesquisados 50 clientes. É necessário fazer a
validação de dados nas duas questões (S ou N na Q1 e idade não pode ser menor que 10 na Q2).
import java.util.Scanner;
public class PesquisaHotdog{
public static void main(String[] args) {
/* ------------------- DECLARAÇÃO DE VARIÁVEIS --------------------------- */
char milho;
int idade, contador=0, soma=0, resultado;
Scanner entrada = new Scanner(System.in);
/* ------------------- ENTRADA DE DADOS --------------------------- */
for(int i=1; i<=50; i++){
System.out.println("Você gosta de milho no seu hot dog? Resposta S ou N:");
milho= entrada.nextLine().charAt(0);
/* ------------------- VALIDAÇÃO DE DADOS --------------------------- */
while (milho != 'S' and milho != 'N'){
System.out.println("Responda S ou N:");
milho= entrada.nextLine().charAt(0);
}
/* ------------------- ENTRADA DE DADOS --------------------------- */
System.out.println("Qual é a sua idade?");
idade= entrada.nextInt();
/* ------------------- VALIDAÇÃO DE DADOS --------------------------- */
while (idade<10){
System.out.println("Insira uma idade maior ou igual a 10 anos");
idade= entrada.nextInt();
}
/* ------------------- PROCESSAMENTO / SAÍDA DE DADOS --------------------------- */
if (milho=='S'){
contador+=1;
}
else{
soma+=idade;
}
}
System.out.println("O número de pessoas que gostam de milho no Hotdog é"+contador);
System.out.println("A idade média das pessoas que não gostam de milho no Hotdog é"+(soma/(50contador)));
}
}
TESTE DE MESA
22. (20%) Simule a execução do algoritmo SEGREDO através de “teste de mesa” e preencha o(s) valor(es) na tabela
TESTE DE MESA” anotando os novos valores de cada variável e as linhas que as modificam. Note que as primeiras
linhas estão anotadas como exemplo, mas é obrigatório anotar todas as linhas que modifiquem um dos valores
contidos na variável a, b ou c até que o algoritmo seja encerrado. Simultaneamente, anote na
tabela SAÍDA DE DADOS todas as saídas (comando escreva) do programa e as linhas que fazem a saída.
Considere que nas linhas 8 e 10 o usuário digitará como entrada de dados, respectivamente 5 e 3.
ALGORITMO “SEGREDO”
TESTE DE MESA
LINHA
a
b
8
5
10
3
14
3
15
14
1
15
14
-1
15
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
LINHA
13
21
13
21
13
21
SAÍDA DE DADOS
C
A
C
A
C
A
c
0
-2
-4
Download