SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Algoritmos e 
Programação 
Prof. Marcos Saúde 
marcosr@pitagoras.com.br
Respostas dos Exercícios 
 As respostas a seguir referem-se aos 
exercícios propostos na aula 06 de 
Algoritmos e Programação e estão 
apresentadas na linguagem Pascal, 
preparando-os para o teste a ser aplicado na 
semana de 04 a 08 de outubro de 2010; 
 Bons estudos !
Exercícios 
 1) 
Program Contagem; 
uses CRT; 
var inicio, fim:integer; 
Begin 
write('Digite o número inicial da contagem:'); 
readln(inicio); 
write('Digite o número final da contagem:'); 
readln(fim); 
while (inicio <= fim) do 
begin 
writeln(inicio); 
inicio := inicio + 1; 
end; 
End.
Exercícios 
 2) 
Program Media; 
uses CRT; 
var nome:string; 
nota1, nota2, media:real; 
contador:integer; 
Begin 
contador := 1; 
while (contador <= 3) do 
begin 
write('Digite o nome do aluno:'); 
readln(nome); 
write('Digite a primeira nota:'); 
readln(nota1); 
write('Digite a segunda nota:'); 
readln(nota2); 
media := ((nota1 + nota2*2)/3); 
writeln('O aluno ', nome, ' teve média ', media:10:2); 
contador := contador + 1; 
end; 
End. 
Obs: a notação media:10:2 é usada no Pascal para indicar que o número contido na variável media deve ser escrito com 
precisão de até 10 números e 2 casas decimais (se, por exemplo, o número for 6,66666..., ele mostra 6,67);
Exercícios 
 3) 
Program Fatorial; 
uses CRT; 
var numero, resultado:integer; 
resposta:string; 
Begin 
repeat 
write('Digite um numero:'); 
readln(numero); 
resultado := 1; 
while (numero > 1) do 
begin 
resultado := resultado * numero; 
numero := numero - 1; 
end; 
writeln('Fatorial:',resultado); 
write('Outro numero (sim/não) ?'); 
readln(resposta); 
until (resposta = 'não'); 
End.
Exercícios 
 4) 
Program Operacoes_Aritmeticas; 
uses CRT; 
var n1,n2,opcao:integer; 
Begin 
write('Digite um numero:'); 
readln(n1); 
write('Digite outro numero:'); 
readln(n2); 
repeat 
clrscr; {comando que limpa a tela} 
writeln('1 - Soma dos números;'); 
writeln('2 - Multiplicação dos números;'); 
writeln('3 - Média dos números;'); 
writeln('4 - Finalizar;'); 
write('Digite uma opção:'); 
readln(opcao); 
case opcao of 
1: writeln('Soma = ',n1 + n2); 
2: writeln('Multiplicação = ', n1 * n2); 
3: writeln('Média = ', (n1 + n2)/2); 
else 
if (opcao <> 4) then 
writeln('Opção inválida!'); 
end; 
if (opcao <> 4) then {se não for finalizar} 
readkey; {congela a tela para ver o resultado da operação escolhida} 
until (opcao = 4); 
End.
Exercícios 
 5) 
Program Maior_Valor; 
uses CRT; 
var numero, maior, contador:integer; 
Begin 
write('Digite um numero:'); 
readln(numero); 
maior := numero; 
contador := 1; 
repeat 
write('Digite outro numero:'); 
readln(numero); 
if (numero > maior) then 
maior := numero; 
contador := contador + 1; 
until (contador = 10); 
write('O maior é ',maior); 
End.
Exercícios 
 6) 
Program Pulverizacao; 
uses CRT; 
var insc:string; // caso queira, pode ser integer também 
area, custo:real; 
tipo:integer; 
Begin 
repeat 
write('Digite o numero de inscrição:'); 
readln(insc); 
if (insc <> '9999') then 
begin 
write('Digite o tipo de pulverização (1,2,3 ou 4):'); 
readln(tipo); 
write('Digite a área:'); 
readln(area); 
case tipo of 
1: custo := area * 50; 
2: custo := area * 100; 
3: custo := area * 150; 
4: custo := area * 250; 
end; 
if (area > 100) then 
custo := custo * 0.9; // desconto de 10% 
writeln(insc, ' - ', custo:10:2); 
end; 
until (insc = '9999'); 
End.
Exercícios 
 7) 
Program Eleicoes; 
uses CRT; 
var A, B, C, TotalA, TotalB, TotalC, Brancos, Nulos, 
TotalBrancos, TotalNulos, maior:integer; 
secao:string; 
Begin 
TotalA := 0; 
TotalB := 0; 
TotalC := 0; 
TotalBrancos := 0; 
TotalNulos := 0;
Exercícios 
 7) Continuação ... 
repeat 
write('Digite seção:'); 
readln(secao); 
if (secao <> '0') then 
begin 
write('Votos de A:'); 
readln(A); 
write('Votos de B:'); 
readln(B); 
write('Votos de C:'); 
readln(C); 
write('Votos Brancos:'); 
readln(Brancos); 
write('Votos Nulos:'); 
readln(Nulos); 
TotalA := TotalA + A; 
TotalB := TotalB + B; 
TotalC := TotalC + C; 
TotalBrancos := TotalBrancos + Brancos; 
TotalNulos := TotalNulos + Nulos; 
end; 
until (secao = '0');
Exercícios 
 7) Continuação ... 
writeln('Total de votantes:',(TotalA + TotalB + TotalC + TotalBrancos + TotalNulos)); 
writeln('Total votos A:',TotalA); 
writeln('Total votos B:',TotalB); 
writeln('Total votos C:',TotalC); 
writeln('Total votos Brancos e Nulos:',TotalBrancos + TotalNulos); 
writeln('Total votos válidos:',TotalA + TotalB + TotalC); 
if ((TotalA > TotalB) And (TotalA > TotalC)) then 
begin 
writeln('A Venceu!'); 
maior := TotalA; 
end 
else 
begin 
if ((TotalB > TotalA) And (TotalB > TotalC)) then 
begin 
writeln('B Venceu!'); 
maior := TotalB; 
end 
else 
begin 
writeln('C Venceu!'); 
maior := TotalC; 
end; 
end;
Exercícios 
 7) Continuação ... 
if ((TotalBrancos + TotalNulos) < (TotalA + TotalB + TotalC)) then 
writeln('Eleição Válida!') 
else 
writeln('Eleição Inválida!'); 
if (maior > ((TotalA + TotalB + TotalC)/2)) then 
writeln('Não haverá 2º turno') 
else 
writeln('Haverá 2º turno'); 
End.
Exercícios 
 8) 
Program Impares; 
uses CRT; 
var numero:integer; 
Begin 
numero := 0; 
while (numero <= 100) do 
begin 
if ((numero mod 2) <> 0) then 
writeln(numero); 
numero := numero + 1; 
end; 
End.
Exercícios 
 9) 
Program Investimento; 
uses CRT; 
var valor:real; 
opcao:integer; 
Begin 
repeat 
write('Digite o valor que deseja investir:'); 
readln(valor); 
if (valor > 0) then 
begin 
if (valor >= 2500) then 
writeln('CDBs:', (valor + valor * 1.5/100):10:2); 
if (valor >= 1000) then 
writeln('Fundos de Renda Fixa:', (valor + valor * 1/100):10:2); 
if (valor >= 100) then 
writeln('Poupança:', (valor + valor * 0.5/100):10:2); 
end; 
until (valor <= 0); 
End.
Exercícios 
 10) Analise o seguinte algoritmo: 
Algoritmo Prova01; 
A, B, C, D, E, F :inteiro; 
Inicio ler(B); 
E ← 0; 
F ← 1; 
C ← 1; 
A ← 1; 
repita 
escrever(F); 
D ← F; 
F ← F + E; 
E ← D; 
D ← F * F; 
C ← C + D; 
A ← A + 1; 
até (A >= B); 
Fim. 
 Com base no algoritmo acima, e supondo que o valor fornecido para “B” na linha “ler(B)” 
seja 7, qual sequencia de valores o algoritmo apresentará como saída na linha 
“escrever(F)”? RESPOSTA: 1 1 2 3 5 8

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Lista de exercício resposta
Lista de exercício   respostaLista de exercício   resposta
Lista de exercício resposta
 
Exercicios Php
Exercicios PhpExercicios Php
Exercicios Php
 
Lista c
Lista cLista c
Lista c
 
Aula 2 aed - pseudocódigo
Aula 2   aed - pseudocódigoAula 2   aed - pseudocódigo
Aula 2 aed - pseudocódigo
 
Aula03 repeticao
Aula03   repeticaoAula03   repeticao
Aula03 repeticao
 
Exercicios c
Exercicios cExercicios c
Exercicios c
 
Algop - aula 07
Algop - aula 07Algop - aula 07
Algop - aula 07
 
Aula 3 algoritmos
Aula 3   algoritmosAula 3   algoritmos
Aula 3 algoritmos
 
Aula 05 Vetores
Aula 05  VetoresAula 05  Vetores
Aula 05 Vetores
 
Alguns algoritmos resolvidos
Alguns algoritmos resolvidosAlguns algoritmos resolvidos
Alguns algoritmos resolvidos
 
Exercicios resolvidos visuAlg
Exercicios resolvidos visuAlgExercicios resolvidos visuAlg
Exercicios resolvidos visuAlg
 
Algoritmos resolvidos lista 2
Algoritmos resolvidos lista 2Algoritmos resolvidos lista 2
Algoritmos resolvidos lista 2
 
Algoritmo e lógica de programação - aula 5
Algoritmo e lógica de programação - aula 5Algoritmo e lógica de programação - aula 5
Algoritmo e lógica de programação - aula 5
 
05 repeticao
05 repeticao05 repeticao
05 repeticao
 
1ª lista de_algoritmos
1ª lista de_algoritmos1ª lista de_algoritmos
1ª lista de_algoritmos
 
Exercicios facebook
Exercicios facebookExercicios facebook
Exercicios facebook
 
Algoritmo e lógica de programação - aula 6
Algoritmo e lógica de programação - aula 6Algoritmo e lógica de programação - aula 6
Algoritmo e lógica de programação - aula 6
 
Aula 3 - 06/04/11
Aula 3 - 06/04/11Aula 3 - 06/04/11
Aula 3 - 06/04/11
 
Algoritmo e lógica de programação - aula 3
 Algoritmo e lógica de programação - aula 3 Algoritmo e lógica de programação - aula 3
Algoritmo e lógica de programação - aula 3
 
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
 

Ähnlich wie Algop - aula 06 resposta exercícios

15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticao15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticaoLee Aragão
 
Programação em Python_6.pptx
Programação em Python_6.pptxProgramação em Python_6.pptx
Programação em Python_6.pptxzarusca
 
Progrma computação cientifica programas no word
Progrma computação cientifica programas no wordProgrma computação cientifica programas no word
Progrma computação cientifica programas no wordLorena Carvalho
 
Passar de algoritmo para pascal
Passar de algoritmo para pascalPassar de algoritmo para pascal
Passar de algoritmo para pascalmoraesdenise
 
Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06André Phillip Bertoletti
 
Alg aula 05-2 - estruturas de-repeticao tp1 (para)
Alg   aula 05-2 - estruturas de-repeticao tp1 (para)Alg   aula 05-2 - estruturas de-repeticao tp1 (para)
Alg aula 05-2 - estruturas de-repeticao tp1 (para)Thalles Anderson
 
Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08André Phillip Bertoletti
 
Aula 04 estruturas de repetição
Aula 04   estruturas de repetiçãoAula 04   estruturas de repetição
Aula 04 estruturas de repetiçãoTácito Graça
 
RevisãoCompactaFuncoesPonteiro.pptx
RevisãoCompactaFuncoesPonteiro.pptxRevisãoCompactaFuncoesPonteiro.pptx
RevisãoCompactaFuncoesPonteiro.pptxClaudia Ferlin
 
Matrizes Pascal - programação
Matrizes Pascal - programaçãoMatrizes Pascal - programação
Matrizes Pascal - programaçãoCarlos Pereira
 
Algoritmos-SlidesA1_2016_03_01.ppt
Algoritmos-SlidesA1_2016_03_01.pptAlgoritmos-SlidesA1_2016_03_01.ppt
Algoritmos-SlidesA1_2016_03_01.pptRobertoPereiradePaiv
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9Felipe Santos
 
DOJO - TDD com C++
DOJO - TDD com C++DOJO - TDD com C++
DOJO - TDD com C++thiagodp
 
TDD em C++
TDD em C++TDD em C++
TDD em C++thiagodp
 
Videoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programaçãoVideoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programaçãoaldoirjava
 
Introdução a linguagem c 2_97_2003
Introdução a linguagem c  2_97_2003Introdução a linguagem c  2_97_2003
Introdução a linguagem c 2_97_2003Henoc Freire
 
Estrutura de linguagem C++
Estrutura de linguagem C++Estrutura de linguagem C++
Estrutura de linguagem C++Verônica Veiga
 

Ähnlich wie Algop - aula 06 resposta exercícios (20)

15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticao15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticao
 
Algop - aula 04 pascal 1
Algop - aula 04 pascal 1Algop - aula 04 pascal 1
Algop - aula 04 pascal 1
 
Programação em Python_6.pptx
Programação em Python_6.pptxProgramação em Python_6.pptx
Programação em Python_6.pptx
 
Progrma computação cientifica programas no word
Progrma computação cientifica programas no wordProgrma computação cientifica programas no word
Progrma computação cientifica programas no word
 
Passar de algoritmo para pascal
Passar de algoritmo para pascalPassar de algoritmo para pascal
Passar de algoritmo para pascal
 
Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06
 
Alg aula 05-2 - estruturas de-repeticao tp1 (para)
Alg   aula 05-2 - estruturas de-repeticao tp1 (para)Alg   aula 05-2 - estruturas de-repeticao tp1 (para)
Alg aula 05-2 - estruturas de-repeticao tp1 (para)
 
Resumo functions e procedures
Resumo functions e proceduresResumo functions e procedures
Resumo functions e procedures
 
Lista9 maicon menezes
Lista9 maicon menezesLista9 maicon menezes
Lista9 maicon menezes
 
Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08
 
Aula 04 estruturas de repetição
Aula 04   estruturas de repetiçãoAula 04   estruturas de repetição
Aula 04 estruturas de repetição
 
RevisãoCompactaFuncoesPonteiro.pptx
RevisãoCompactaFuncoesPonteiro.pptxRevisãoCompactaFuncoesPonteiro.pptx
RevisãoCompactaFuncoesPonteiro.pptx
 
Matrizes Pascal - programação
Matrizes Pascal - programaçãoMatrizes Pascal - programação
Matrizes Pascal - programação
 
Algoritmos-SlidesA1_2016_03_01.ppt
Algoritmos-SlidesA1_2016_03_01.pptAlgoritmos-SlidesA1_2016_03_01.ppt
Algoritmos-SlidesA1_2016_03_01.ppt
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9
 
DOJO - TDD com C++
DOJO - TDD com C++DOJO - TDD com C++
DOJO - TDD com C++
 
TDD em C++
TDD em C++TDD em C++
TDD em C++
 
Videoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programaçãoVideoulas de algoritmos e lógica de programação
Videoulas de algoritmos e lógica de programação
 
Introdução a linguagem c 2_97_2003
Introdução a linguagem c  2_97_2003Introdução a linguagem c  2_97_2003
Introdução a linguagem c 2_97_2003
 
Estrutura de linguagem C++
Estrutura de linguagem C++Estrutura de linguagem C++
Estrutura de linguagem C++
 

Algop - aula 06 resposta exercícios

  • 1. Algoritmos e Programação Prof. Marcos Saúde marcosr@pitagoras.com.br
  • 2. Respostas dos Exercícios  As respostas a seguir referem-se aos exercícios propostos na aula 06 de Algoritmos e Programação e estão apresentadas na linguagem Pascal, preparando-os para o teste a ser aplicado na semana de 04 a 08 de outubro de 2010;  Bons estudos !
  • 3. Exercícios  1) Program Contagem; uses CRT; var inicio, fim:integer; Begin write('Digite o número inicial da contagem:'); readln(inicio); write('Digite o número final da contagem:'); readln(fim); while (inicio <= fim) do begin writeln(inicio); inicio := inicio + 1; end; End.
  • 4. Exercícios  2) Program Media; uses CRT; var nome:string; nota1, nota2, media:real; contador:integer; Begin contador := 1; while (contador <= 3) do begin write('Digite o nome do aluno:'); readln(nome); write('Digite a primeira nota:'); readln(nota1); write('Digite a segunda nota:'); readln(nota2); media := ((nota1 + nota2*2)/3); writeln('O aluno ', nome, ' teve média ', media:10:2); contador := contador + 1; end; End. Obs: a notação media:10:2 é usada no Pascal para indicar que o número contido na variável media deve ser escrito com precisão de até 10 números e 2 casas decimais (se, por exemplo, o número for 6,66666..., ele mostra 6,67);
  • 5. Exercícios  3) Program Fatorial; uses CRT; var numero, resultado:integer; resposta:string; Begin repeat write('Digite um numero:'); readln(numero); resultado := 1; while (numero > 1) do begin resultado := resultado * numero; numero := numero - 1; end; writeln('Fatorial:',resultado); write('Outro numero (sim/não) ?'); readln(resposta); until (resposta = 'não'); End.
  • 6. Exercícios  4) Program Operacoes_Aritmeticas; uses CRT; var n1,n2,opcao:integer; Begin write('Digite um numero:'); readln(n1); write('Digite outro numero:'); readln(n2); repeat clrscr; {comando que limpa a tela} writeln('1 - Soma dos números;'); writeln('2 - Multiplicação dos números;'); writeln('3 - Média dos números;'); writeln('4 - Finalizar;'); write('Digite uma opção:'); readln(opcao); case opcao of 1: writeln('Soma = ',n1 + n2); 2: writeln('Multiplicação = ', n1 * n2); 3: writeln('Média = ', (n1 + n2)/2); else if (opcao <> 4) then writeln('Opção inválida!'); end; if (opcao <> 4) then {se não for finalizar} readkey; {congela a tela para ver o resultado da operação escolhida} until (opcao = 4); End.
  • 7. Exercícios  5) Program Maior_Valor; uses CRT; var numero, maior, contador:integer; Begin write('Digite um numero:'); readln(numero); maior := numero; contador := 1; repeat write('Digite outro numero:'); readln(numero); if (numero > maior) then maior := numero; contador := contador + 1; until (contador = 10); write('O maior é ',maior); End.
  • 8. Exercícios  6) Program Pulverizacao; uses CRT; var insc:string; // caso queira, pode ser integer também area, custo:real; tipo:integer; Begin repeat write('Digite o numero de inscrição:'); readln(insc); if (insc <> '9999') then begin write('Digite o tipo de pulverização (1,2,3 ou 4):'); readln(tipo); write('Digite a área:'); readln(area); case tipo of 1: custo := area * 50; 2: custo := area * 100; 3: custo := area * 150; 4: custo := area * 250; end; if (area > 100) then custo := custo * 0.9; // desconto de 10% writeln(insc, ' - ', custo:10:2); end; until (insc = '9999'); End.
  • 9. Exercícios  7) Program Eleicoes; uses CRT; var A, B, C, TotalA, TotalB, TotalC, Brancos, Nulos, TotalBrancos, TotalNulos, maior:integer; secao:string; Begin TotalA := 0; TotalB := 0; TotalC := 0; TotalBrancos := 0; TotalNulos := 0;
  • 10. Exercícios  7) Continuação ... repeat write('Digite seção:'); readln(secao); if (secao <> '0') then begin write('Votos de A:'); readln(A); write('Votos de B:'); readln(B); write('Votos de C:'); readln(C); write('Votos Brancos:'); readln(Brancos); write('Votos Nulos:'); readln(Nulos); TotalA := TotalA + A; TotalB := TotalB + B; TotalC := TotalC + C; TotalBrancos := TotalBrancos + Brancos; TotalNulos := TotalNulos + Nulos; end; until (secao = '0');
  • 11. Exercícios  7) Continuação ... writeln('Total de votantes:',(TotalA + TotalB + TotalC + TotalBrancos + TotalNulos)); writeln('Total votos A:',TotalA); writeln('Total votos B:',TotalB); writeln('Total votos C:',TotalC); writeln('Total votos Brancos e Nulos:',TotalBrancos + TotalNulos); writeln('Total votos válidos:',TotalA + TotalB + TotalC); if ((TotalA > TotalB) And (TotalA > TotalC)) then begin writeln('A Venceu!'); maior := TotalA; end else begin if ((TotalB > TotalA) And (TotalB > TotalC)) then begin writeln('B Venceu!'); maior := TotalB; end else begin writeln('C Venceu!'); maior := TotalC; end; end;
  • 12. Exercícios  7) Continuação ... if ((TotalBrancos + TotalNulos) < (TotalA + TotalB + TotalC)) then writeln('Eleição Válida!') else writeln('Eleição Inválida!'); if (maior > ((TotalA + TotalB + TotalC)/2)) then writeln('Não haverá 2º turno') else writeln('Haverá 2º turno'); End.
  • 13. Exercícios  8) Program Impares; uses CRT; var numero:integer; Begin numero := 0; while (numero <= 100) do begin if ((numero mod 2) <> 0) then writeln(numero); numero := numero + 1; end; End.
  • 14. Exercícios  9) Program Investimento; uses CRT; var valor:real; opcao:integer; Begin repeat write('Digite o valor que deseja investir:'); readln(valor); if (valor > 0) then begin if (valor >= 2500) then writeln('CDBs:', (valor + valor * 1.5/100):10:2); if (valor >= 1000) then writeln('Fundos de Renda Fixa:', (valor + valor * 1/100):10:2); if (valor >= 100) then writeln('Poupança:', (valor + valor * 0.5/100):10:2); end; until (valor <= 0); End.
  • 15. Exercícios  10) Analise o seguinte algoritmo: Algoritmo Prova01; A, B, C, D, E, F :inteiro; Inicio ler(B); E ← 0; F ← 1; C ← 1; A ← 1; repita escrever(F); D ← F; F ← F + E; E ← D; D ← F * F; C ← C + D; A ← A + 1; até (A >= B); Fim.  Com base no algoritmo acima, e supondo que o valor fornecido para “B” na linha “ler(B)” seja 7, qual sequencia de valores o algoritmo apresentará como saída na linha “escrever(F)”? RESPOSTA: 1 1 2 3 5 8