Professional Documents
Culture Documents
ÍNDICE
TÓPICO
2
Exercício 1 – Torre de Hanói
São dadas três hastes (a), (b), e (c). Na haste (a) são colocados três discos
numerados de 1 a 3, de tamanhos diferentes, conforme desenho abaixo. Desenvolva
um algoritmo que permita passar os três discos, na mesma disposição, para a haste
(c), sabendo que apenas um disco de cada vez pode ser movido e que um disco nunca
pode ser colocado sobre outro menor. A haste (b) é utilizada como auxiliar para
efetuar as passagens.
3
Exercício 2 - O dilema do barqueiro
Um barqueiro tem que atravessar uma onça, uma cabra e uma caixa com alface da
margem esquerda para a margem direita de um rio. Só que, como seu barco é muito
pequeno, ele só pode atravessar uma coisa de cada vez. Escreva um algoritmo
descrevendo em que seqüência ele deve fazer a travessia, de modo que a onça não
coma a cabra e a cabra não coma a alface?
4
Exercício 3 – Identificando as 3 fases de um programa
5
Exercício 4 – LOGICA04 – Calculando a média do aluno
NOTA1 = 8,0
NOTA2 = 6,0
NOTA3 = 10,0
NOTA4 = 8,0
Efetue o Teste de Mesa para validação da solução planejada, a partir dos dados
fornecidos na tabela abaixo. Comente os resultados.
6
Exercício 5 – LOGICA05 - A rainha e o monge
7
Exercício 6 – LOGICA06 – Calculando a multa
REGULAMENTO
PESO MULTA
Até 50kgs n/a
Até 60kgs R$ 1,00 por quilo excedente
Até 70kgs R$ 1,50 por quilo excedente
Acima de 70kgs R$ 3,00 por quilo excedente
Elabore um diagrama de blocos para classificar o peso dos peixes entregue por um
pescador, indicando o peso excedente e a multa que será aplicada.
8
Exercício 7 – LOGICA07 – Alunos aprovados
ENTRADA – CADALUNO
SAIDA – APROVADOS
9
Exercício 8 – LOGICA08 – Calculando a reposição do estoque
ENTRADA – ESTOQUE
SAIDA – REPOSICAO
10
Exercício 9 – LOGICA09 – Verificação de idades limites
ENTRADA – CADALUNO
SAIDA – NOTURNO
11
Exercício 10 – LOGICA10 – Comparando datas
ENTRADA – CLIENTES
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
DD/MM/AAAA EMPRESA S/A - RELACAO ALFABETICA DOS CLIENTES PAG. 99
CB-DATA CB-PAG
NOME DO CLIENTE CODIGO OCORRENCIA
x......................................x ZZZ9 x.............x
x......................................x ZZZ9 x.............x
x......................................x ZZZ9 x.............x
x......................................x ZZZ9 x.............x
x......................................x ZZZ9 x.............x
LD-NOME LD-CODCLI LD-OCOR
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
12
Exercício 11 – NxxC0050 – Cálculo de Folha de Pagamento
SAIDA – RELPAG
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
FOLHA DE PAGAMENTO DA INDUSTRIA S/A PAG. 99
CD-PAG
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
13
Exercício 12 – LOGICA12 – Atualizando o cadastro de funcionários
Fluxo do processamento
Descrição do Processamento
Gravar versão atualizada do Cadastro de Funcionários – CADFUNCN - a partir do
processamento dos arquivos CADFUNCA e CADMOVTO, gerando relatório com as
ocorrências encontradas durante a execução.
Regras para atualização
Todos os registros nos arquivos CADFUNCA e CADMOVTO estão classificados em ordem
ascendente pelo código do funcionário CODFUN;
O campo TIPO-M, no arquivo CADMOVTO indica a operação que deverá ser realizada:
TIPO-M = ‘A’ Atualização de dados cadastrais;
TIPO-M = ‘I’ Inclusão de registro de novo funcionário;
TIPO-M = ‘E’ Exclusão de registro do arquivo CADFUNCA.
14
CODFUN-A < CODFUN-M Permanência (registro sem alteração)
Gravar o registro do arquivo CADFUNCA no arquivo CADFUNCN, sem qualquer
alteração. Não listar o registro.
Ler novo registro do arquivo CADFUNCA.
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
DD/MM/AA RELATORIO DAS ATUALIZACOES NO CAD DE FUNCIONARIOS PAG. 99
CB-DATA CB-PAG
IMAGEM DO REGISTRO OCORRENCIA
x......................................................x x.............x
x......................................................x x.............x
x......................................................x x.............x
Mensagens (ocorrências)
ANTES ALTERACAO
APOS ALTERACAO
EXCL. EFETUADA
INCL. EFETUADA
TIPO INVALIDO
15
Exercício 13 – LOGICA13 – Atualizando o cadastro de produtos
Fluxo do processamento
Descrição do Processamento
Atualizar o cadastro de produtos – PRODUTOS – a partir das informações contidas no
arquivo MOVIMENTO (já consistido) e com base no conteúdo do campo TIPO-M. Gerar
relatório com as ocorrências encontradas durante a execução.
Regras para atualização
O campo TIPO-M, no arquivo MOVIMENTO indica a operação que deverá ser realizada:
TIPO-M = ‘A’ Atualização de dados cadastrais;
TIPO-M = ‘I’ Inclusão de registro de novo funcionário;
TIPO-M = ‘E’ Exclusão de registro do arquivo CADFUNCA.
16
Se TIPO-M = ‘E’ – Exclusão do registro
Excluir o registro do arquivo de produtos PRODUTOS – utilizando o conteúdo do
campo CODPROD-E como chave. Listar o registro eliminado com a mensagem
correspondente.
Se TIPO-M <> ‘A’, ‘E’ ou ‘I’ listar o registro do arquivo MOVIMENTO com a mensagem
correspondente.
Ler novo registro do arquivo MOVIMENTO.
ENTRADA – MOVIMENTO
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
DD/MM/AA ATUALIZACOES REALIZADAS NO CADASTRO DE PRODUTOS PAG. 99
CB-DATA CB-PAG
IMAGEM DO REGISTRO OCORRENCIA
x......................................................x x.............x
x......................................................x x.............x
x......................................................x x.............x
x......................................................x x.............x
x......................................................x x.............x
x......................................................x x.............x
x......................................................x x.............x
x......................................................x x.............x
x......................................................x x.............x
x......................................................x x.............x
LD-REGISTRO LD-OCORRENCIA
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
Mensagens (ocorrências)
ANTES ALTERACAO
APOS ALTERACAO
EXCL. EFETUADA
INCL. EFETUADA
NAO CADASTRADO
JÁ CADASTRADO
TIPO INVALIDO
17
Exercício 14 – LOGICA14 – Distribuição de duplicatas por banco
Fluxo do processamento
Descrição do Processamento
Emitir relatório de duplicadas vencidas por banco, emitindo a quantidade de duplicatas
e o valor total das duplicatas vencidas, antes de começar a listar dados de novo banco.
Iniciar novo banco em nova página.
O arquivo COBRANCA está classificado pelos campos BANCO e DUPLICATA.
Um registro conterá dados de uma duplicata vencida – e deverá ser listado - quando a
DATA-VENCTO (AAAAMMDD) for menor que a data do processamento, caso contrário
desprezar o registro.
Utilizar a Tabela de Bancos abaixo para obter o nome do banco a ser exibido no
relatório. Se o código do banco não constar na tabela, desprezar o registro.
18
SAIDA – VENCIDAS – imprimir 50 linhas por pagina
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
RELACAO DE DUPLICADAS VENCIDAS NO x.....................x PAG. 99
CB-NOMEBANCO CD-PAG
DUPLICATA NOME CLIENTE VENCIMENTO VALOR
ZZ.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99
ZZ.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99
ZZ.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99
ZZ.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99
ZZ.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99
ZZ.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99
ZZ.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99
ZZ.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99
LD-DUPLICATA LD-NOME-CLIENTE LD-VENCTO LD-VALOR
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
Tabela de Bancos
01 BANCO DO BRASIL
02 RURAL
03 BANCO ITAU
04 BRADESCO
05 CAIXA ECONOMICA FEDERAL
06 NOSSA CAIXA
07 SANTANDER
08 REAL – ABN
09 HSBC
10 PAN AMERICANO
19
Exercício 14 – LOGICA14 – Distribuição de duplicatas por banco
Fluxo do processamento
Descrição do Processamento
Emitir a relação dos clientes do banco, separada por agencia, imprimindo ao final de
cada agencia, os dez maiores saldos da agencia.
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
CLIENTES DO BANCO MIDAS EM dd/mm/aaaa – AG. xxxx PAG. 99
DATA-CAB AGE-CAB PAG-CAB
NRO CONTA NOME CLIENTE ULT. MOVTO SALDO
Z.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99-
Z.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99-
Z.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99-
Z.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99-
Z.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99-
Z.ZZ9 x..................................x DD/MM/AAAA ZZ.ZZ9,99-
CONTA-DET NOME-DET DATMOV-DET SALDO-DET
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
20
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
CLIENTES DO BANCO MIDAS EM dd/mm/aaaa – AG. xxxx PAG. 99
DATA-CAB AGE-CAB PAG-CAB
DEZ MAIORES SALDOS EM CONTA-CORRENTE
21