camila (1)

Upload: camila-dias-ruas

Post on 11-Jul-2015

470 views

Category:

Documents


0 download

TRANSCRIPT

1

Elabore um Algoritmo que escreva Ol a todos!

Program BoasVindas ; Begin writeln('Ola todos!'); End. Elabore um Algoritmo que receba dois nmeros e apresente o resultado da sua adio. Program Soma ; var a,b,x:real; Begin writeln('Informe o primeiro valor da soma'); readln(a); writeln('Informe o segundo valor da soma'); readln(b); x:=a+b; write('O resultado da soma ', x); End. 2 Elabore um Algoritmo que pergunte o nome e responda Ol seguido do nome introduzido. Ex: Rui Ol Rui !. Program Soma ; var nome:string; Begin writeln('Qual o seu nome?'); readln(nome); write('Ol ', nome); End. 3 4) Elabore um Algoritmo para converter uma temperatura em graus Celsius para Fahrenheit (F=32+1.8C). program celsius; var cel:real; begin { OBJETIVO: CONVERTER TEMPERATURA EM GRAUS CELSIUS PARA FAHRENHEIT } writeln('Digite a temperatura em graus Celsius.'); readln(cel); writeln('A temperatura em Farenheit : ', 32 + 1.8 * cel); end.

5 )Elabore um Algoritmo, que dado dois lados de um tringulo retngulo, calcule a 2 2 respectiva hipotenusa ( h = a + b ). program celsius; var lado1,lado2:real; begin { OBJETIVO: CALCULAR A HIPOTENUSA DE UM TRIANGULo} write('Digite o valor do primeiro lado do tringulo.'); readln(lado1); writeln('Digite o valor do segundo lado do tringulo.'); readln(lado2); writeln('O valor da hipotenusa : ', sqrt(lado1 * 2 + lado2 * 2)) ; end. 6) Faa um programa que receba dois valores inteiros e implemente todos os operadores relacionais (,=,,=) retornando o resultado como um valor lgico. program Variaveis_Logicas; { as variaveis logicas sao do tipo boolean } { operadores logicos: not, and, or} var X,Y:integer; Maior,Igual,Menor:boolean; begin writeln('Informe o primeiro nmero'); read(x); writeln('Informe o primeiro nmero'); read(y); Writeln('X:',X); Writeln('Y:',Y); Maior:=(X>Y); Igual:=(X=Y); Menor:=(X num2) then writeln('O maior nmero : ', num1) else writeln('O maior nmero : ', num2); end. 3)Elabore um Algoritmo que receba trs nmeros e que indique qual dos trs o maior. program MaiorNumero; var num1,num2,num3:real; begin writeln('Digite o primeiro nmero.'); readln(num1); writeln('Digite o segundo nmero.'); readln(num2); writeln('Digite o terceiro nmero.');

readln(num3); if (num1 > num2) and (num1 > num3) then writeln('O maior nmero : ', num1) else if (num2 > num3) then writeln('O maior nmero : ', num2) else writeln('O maior nmero : ', num3); end. 4)Elabore um Algoritmo que receba dois nmeros e que os apresente por ordem crescente. program ORDENA; var X, A, B : integer; begin write ('Informe uma valor para a variavel A: '); readln(A); write ('Informe uma valor para a variavel B: '); readln(B); writeln; if (A > B) then begin X := A; A := B; B := X; end; writeln('Os valores ordenados so: '); write(A, ' ', B); end. 5)Elabore um Algoritmo que receba trs nmeros e que os apresente por ordem crescente. program ORDENA; var c, A, B : integer; begin write ('Informe uma valor para a variavel A: '); readln(A); write ('Informe uma valor para a variavel B: '); readln(B); write ('Informe uma valor para a variavel c: '); readln(c); if (A > B) and (A>C) and (B > C)then begin writeln('Os valores ordenados so: '); write(C, ' ', B ,' ', A); end

else if (A > B) and (A>C) and (C > B) begin writeln('Os valores ordenados so: '); writeln(B, ' ', C ,' ', A); end else if (B > A) and (B>C) and (A > C) begin writeln('Os valores ordenados so: '); writeln(C, ' ', A ,' ', B); end else if (B > A) and (B>C) and (C > A) begin writeln('Os valores ordenados so: '); writeln(A, ' ', C ,' ', B); end else if (C > A) and (C>B) and (A > B) begin writeln('Os valores ordenados so: '); writeln(B, ' ', A ,' ', C); end else if (C > A) and (C>B) and (B > A) begin writeln('Os valores ordenados so: '); writeln(A, ' ', B ,' ', C); then

then

then

then

then

end ; end. 6) . Elabore um Algoritmo que dada a nota de um aluno, entre 0 e 20, o classifique de mau, medocre, suficiente, bom, muito bom e excelente conforme a nota for inferior ou igual a 5, 10, 14, 18 e 20, respectivamente; valide os casos fora de limites. program nota1; var nota : real; begin write ('Informe a nota '); readln(nota); if (nota = 6) AND (nota = 11) AND (nota = 15) and (nota =19) and (nota 20) then begin writeln('nOTA SUPERIOR A 20 - NO PODE '); end ; end. 7) . Elabore um Algoritmo que dadas trs temperaturas obtidas de uma cidade ao longo do dia, indique qual a mxima e qual a mnima. program temperatura; var c, A, B : real; begin write ('Informe a primeira temperatura '); readln(A); write ('Informe a segunda temperatura: '); readln(B); write ('Informe a terceira temperatura: '); readln(c); if (A > B) and (A>C) and (B > C)then begin writeln('Os valores ordenados so: '); write('Minima:',C, 'Mxima ', A);

end else if (A > B) and (A>C) and (C > B) begin writeln('Os valores ordenados so: '); write('Minima:',B, 'Mxima ', A); end else if (B > A) and (B>C) and (A > C) begin writeln('Os valores ordenados so: '); write('Minima:',C, 'Mxima ', B); end else if (B > A) and (B>C) and (C > A) begin writeln('Os valores ordenados so: '); write('Minima:',A, 'Mxima ', B); end else if (C > A) and (C>B) and (A > B) begin writeln('Os valores ordenados so: '); write('Minima:',B, 'Mxima ', C); end else if (C > A) and (C>B) and (B > A) begin then then then then then

writeln('Os valores ordenados so: '); write('Minima:',A, 'Mxima ', C); end ; end. 8) Dada uma seqncia de 3 nmeros, elabore um Algoritmo que calcule a mdia dos valores positivos (ou nulos), ou seja, ignorando os valores negativos. program media_3_notas; var c, A, B , nota: real; begin write ('Informe a primeira nota '); readln(A); write ('Informe a segunda nota: '); readln(B); write ('Informe a terceira nota: '); readln(c); if (A >=0) and (b>=0) and (c >= 0)then begin nota:= (a +b+c)/3; write('Mdia da Nota:',nota); end else if (A >=0) and (b>=0) and (c < 0) nota:= (a +b)/2; write('Mdia da Nota:',nota); end else if (A >=0) and (c>=0) and (B < 0) begin nota:= (a+c)/2; write('Mdia da Nota:',nota); end else if (B >=0) and (c>=0) and (A < 0) begin nota:= (b+c)/2; write('Mdia da Nota:',nota); end else if (A >=0) and (b=0) and (a=0) and (b 5.0) e Reprovado (nota < 5.0), ou valide os casos fora de limites. program Aprovado_OU_Nao; var nota: real; begin write ('Informe a nota at 10 pontos'); readln(nota);

if

(nota >=7.0) and (nota =9.0) and (ma =7.5) and (ma =6) and (ma =4.0) and (ma =5) and (idade =8) and (idade =11) and (idade =14) and (idade =18) begin write('ADulto'); end ; end. 15) Escreva um algoritmo que leia o cdigo de um aluno e suas trs notas. Calcule a mdia ponderada do aluno, considerando que o peso para a maior nota seja 4 e para as duas restantes, 3. Mostre o cdigo do aluno, suas trs notas, a mdia calculada e uma mensagem "APROVADO" se a mdia for maior ou igual a 5 e "REPROVADO" se a mdia for menor que 5. program nota_ponderada; var C, A, B, nfa, nfb, nfc : real; begin write ('Informe a primeira nota '); readln(A); write ('Informe a segunda nota: '); readln(B); write ('Informe a terceira nota: '); readln(C); nfa:= (A*4+B*3+C*3)/10; nfb:= (A*3+B*4+C*3)/10; nfc:= (A*3+B*3+C*4)/10; if (A > B) and (A>C) and (nfa>= 5)then begin writeln('Nota POnderada:',nfa); writeln('Aprovado'); end else if (A > B) and (A>C) and (nfa < 5)then begin writeln('Nota Ponderada:',nfa); writeln('Reprovado'); end else if (B > A) and (B>C) and (nfb>= 5) then begin writeln('Nota POnderada:',nfb); writeln('Aprovado'); then

end else if (B > A) and (B>C) and (nfb A) and (C>B) and (nfc>= 5) then begin writeln('Nota POnderada:',nfc); writeln('Reprovado'); end else if (C > A) and (C>B) and (nfc< 5) then begin writeln('Nota POnderada:',nfc); writeln('Reprovado'); end ; end. 16) O cardpio de uma lanchonete dado, como a seguir: Especificao Preo unitrio 100 Cachorro quente 1,00 101 Bauru simples 1,50 102 Bauru c/ovo 1,70 103 Hamburger 2,00 104 Cheeseburger 2,30 105 Refrigerante 1,00 Escrever um algoritmo que leia o cdigo do item pedido e a quantidade. Calcule o valor a ser pago por aquele lanche. Considere, que a cada execuo, somente ser calculado um item. program Lanchonete; var cod, q, preco: real; begin writeln ('Lista de Itens '); writeln ('Cdigo Sanduiche Preo'); writeln ('100 Cachorro quente 1,00'); writeln ('101 Bauru simples 1,50 '); writeln ('102 Bauru c/ovo 1,70 '); writeln ('103 Hamburger 2,00 '); writeln ('104 Cheeseburger 2,30'); writeln ('105 Refrigerante 1,00'); writeln ('Informe o cdigo do sanduiche desejado '); readln(cod); writeln('Informe a quantidade deste item'); readln(q); if (cod=100) then

begin preco:= 1 * q; writeln('Preo Total ',preco); end else if (cod=101) then begin preco:= 1.5 * q; writeln('Preo Total ',preco); end else if (cod=102) then begin preco:= 1.7 * q; writeln('Preo Total ',preco); end else if (cod=103) then begin preco:= 2 * q; writeln('Preo Total ',preco); end else if (cod=104) then begin preco:= 2.3 * q; writeln('Preo Total ',preco); end else if (cod=105) then begin preco:= 1 * q; writeln('Preo Total ',preco); end ; end. 17) Tendo como dados de entrada a altura e o sexo de uma pessoa (M masculino e F feminino), construa um algoritmo que calcule seu peso ideal, utilizando as seguintes frmulas: - para homens: (72.7*h)-58 - para mulheres: (62.1*h)-44.7 program Peso_Ideal; var h, peso : real; sexo:char; begin writeln ('Informe o sexo: M - Masculino readln(sexo); writeln('Informe sua altura'); readln(h); if (sexo ='m') then begin

/ F - Feminino');

peso:= (72.7*h)-58; writeln('Peso Ideal ',peso); end else if (sexo ='f') then begin peso:= (62.1*h)-44.7; writeln('Peso Ideal ',peso); end ; end. 18) Um banco conceder um crdito especial aos seus clientes, de acordo com o saldo mdio no ltimo ano. Faa um algoritmo que leia o saldo mdio de um cliente e calcule o valor do crdito de acordo com a tabela abaixo. Mostre o saldo mdio e o valor do crdito. Saldo mdio Percentual de 0 a 200 nenhum crdito de 201 a 400 20% do valor do saldo mdio de 401 a 600 30% do valor do saldo mdio acima de 601 40% do valor do saldo mdio program Credito; var saldo,saldon: real; begin write ('Informe o saldo mdio no ltimo ano'); readln(saldo); if (saldo=200) and (saldo 400) and (saldo 600.0) begin write('40% do valor do saldo mdio '); saldon:= saldo * 0.4+ saldo; then then

then

begin

writeln('Saldo Atual:', saldon); end ; end. 19)Um usurio deseja um algoritmo onde possa escolher que tipo de mdia deseja calcular a partir de 3 notas. Faa um algoritmo que leia as notas, a opo escolhida pelo usurio e calcule a mdia. 1 -aritmtica 2 -ponderada (3,3,4) program media; var n1,n2,n3,media: real; tmedia:integer; begin writeln ('Informe a primeira nota'); readln(n1); writeln ('Informe a segunda nota'); readln(n2); writeln ('Informe a terceira nota'); readln(n3); writeln ('Informe o tipo de clculo da mdia'); writeln ('1 - mdia aritmtica / 2 - mdia ponderada '); readln(tmedia); if (tmedia = 1) then begin media:=(n1+n2+n3)/3; write('Mdia aritmtica', media); end else if (tmedia = 2) then media:=(n1*3+n2*3+n3*4)/10; write('Mdia ponderada', media); end ; end. 20) Um vendedor necessita de um algoritmo que calcule o preo total devido por um cliente. O algoritmo deve receber o cdigo de um produto e a quantidade comprada e calcular o preo total, usando a tabela abaixo: Cdigo do produto Preo unitrio 1001 5,32 1324 6,45 6548 2,37 0987 5,32 7623 6,45

begin

program loja; var cod, q, preco: real; begin writeln ('Lista de Itens '); writeln ('Cdigo do Produto writeln ('1001 writeln ('1324 writeln ('6548 writeln ('0987 writeln ('7623 Preo Unitrio'); 5,32 '); 6,45 '); 2,37 '); 5,32 '); 6,45');

writeln ('Informe o cdigo do produto desejado '); readln(cod); writeln('Informe a quantidade deste item'); readln(q); if (cod=1001) then begin preco:= 5.32 * q; writeln('Preo Total ',preco); end else if (cod=1324) then begin preco:= 6.45 * q;

writeln('Preo Total ',preco); end else if (cod=6548) then begin preco:= 2.37 * q; writeln('Preo Total ',preco); end else if (cod=0987) then begin preco:= 5.32 * q; writeln('Preo Total ',preco); end else if (cod=7623) then begin preco:= 6.45 * q; writeln('Preo Total ',preco); end ; end. 21) Uma empresa conceder um aumento de salrio aos seus funcionrios, varivel de acordo com o cargo, conforme a tabela abaixo. Faa um algoritmo que leia o salrio e o cargo de um funcionrio e calcule o novo salrio. Se o cargo do funcionrio no estiver na tabela, ele dever, ento, receber 40% de aumento. Mostre o salrio antigo, o novo salrio e a diferena. Cdigo Cargo Percentual 101 Gerente 10% 102 Engenheiro 20% 103 Tcnico 30%

program Novo_Salario; var salario, novoSalario : real; cargo:string; begin writeln ('Cargos possveis: '); writeln ('Geerente: '); writeln ('Engenheiro: '); writeln ('Tcnico: '); writeln ('Informe o seu cargo: '); readln(cargo); writeln ('Informe o seu sslrio: '); readln(salario); writeln; if (cargo = 'gerente') then begin novosalario:= salario * 0.1 + salario; writeln('Novo Salrio de Gerente: ', novosalario); end Else if (cargo = 'engenheiro') then begin novosalario:= salario * 0.2 + salario; writeln('Novo Salrio de Engenheiro: ', novosalario); End else if (cargo = 'tecnico') then begin novosalario:= salario * 0.3 + salario; writeln('Novo Salrio de Tcnico: ', novosalario); end; end. 22)O departamento que controla o ndice de poluio do meio ambiente mantm 3 grupos de indstrias que so altamente poluentes. O ndice de poluio aceitvel varia de 0,05 at 0,25. Se o ndice sobe para 0,3 as indstrias do primeiro grupo so intimadas a suspenderem suas atividades, se o ndice cresce para 0,4 as do primeiro e segundo grupo so intimadas a suspenderem suas atividades e se o ndice atingir 0,5 todos os 3 grupos devem ser notificados a paralisarem suas atividades. Escrever um algoritmo que leia o ndice de poluio medido e emita a notificao adequada aos diferentes grupos de empresas. program poluicao1; var poluicao:real;

begin write ('Informe o ndice de poluio'); readln(poluicao); if (poluicao =0.3) and (poluicao =0.4) and (poluicao 0.5) begin writeln('Intimar indstrias do primeiro,segundo e terceiro grupo a suspenderem suas atividades'); end ; then then

end.

Repetio

1) Quais so as estruturas de repetio existentes no Pascal ? A linguagem pascal tem trs estruturas de repetio: While-do, Repeat-Until e For 2) Qual a principal diferena entre o WHILE-DO e o REPEAT-UNTIL ? A principal diferena entre os laos consiste na forma de avaliao e execuo na estrutura lao. No lao While-do a avaliao feita no incio do lado e, executado quando esta condio for verdadeira. No lao Repeat, a avaliao feita no final do lao na linha UNTIL. Este lao executado obrigatoriamente uma vez. 3)Em que situaes mais indicado o uso da estrutura FOR ? O lao FOR mais indicado quando se sabe os valores iniciais e finais, previamente estabelecidos. Estes valores podem ser informados pelo usurio ou determinados antecipadamente. 4) Em que situaes no podemos utilizar a estrutura FOR ? O lao For no pode ser usado quando o incremento for maior do que um porque o Pascal no permite este tipo de incremento.

5)Faa um programa que receba um nmero inteiro no-nulo por vez e mostre seu quadrado. Para sair do programa digite zero. program CalculaQuadrado; var numero: integer; //* usada para leitura da sequencia */ quadrado: integer; //* guardara o quadrado do numero lido */ begin writeln(''); writeln(' Calculo dos quadrados de uma sequencia de numeros'); writeln(''); write('Entre com um numero inteiro nao-nulo ou digite 0 para sair do programa: '); read(numero); while (numero 0) do begin quadrado:= numero * numero; writeln('O quadrado do numero ', numero, ': ',quadrado); write('Entre com um numero inteiro nao-nulo ou digite 0 para sair do programa: '); read(numero) ; end ; end. 6) Escreva um programa que leia um conjunto 10 nmeros inteiros e exiba a soma dos mesmos.Program soma1; Var N,SOMA,CONT : integer; Begin SOMA := 0; for CONT := 1 to 10 do begin writeln('informe a ',cont,' nota');

readln(N); SOMA := SOMA + N; end; writeln('Resultado da soma dos 10 valores ',SOMA); End. 7) Escreva um programa que leia um conjunto de nmeros inteiros e exiba o valor mdio dos mesmos. Obs: A condio de sada do lao ser a leitura do valor 0 (flag). Program MEDIA_NUMEROS; Var N,CONT,SOMA,MEDIA : integer; Begin SOMA := 0; CONT := 0; writeln('Informe um nmero inteiro qualquer para o clculo da mdia ou 0 para sair do programa'); readln(N); while N 0 do begin SOMA := SOMA + N; CONT := CONT + 1; writeln('Informe um nmero inteiro qualquer para o clculo da mdia ou 0 para sair do programa'); readln(N) ; end; MEDIA := SOMA div CONT; writeln('Media:',MEDIA); End. 8) Escreva um programa Pascal que apresente o menu de opes abaixo:OPES: 1 - SAUDAO 2 - BRONCA 3 - FELICITAO 0 - FIM O programa deve ler a opo do usurio e exibir, para cada opo, a respectiva mensagem: 1 - Ol. Como vai ? 2 - Vamos estudar mais. 3 - Meus Parabns ! 0 - Fim de servio. Enquanto a opo for diferente de 0 (zero) deve-se continuar apresentando as opes. Obs: use como estrutura de repetio o comando REPEAT e como estrutura condicional o comando CASE. program mensagem; var resp,opcao : char; { A variavel opcao foi declarada como do tipo char. Desta maneira a comparacao na estrutura de decisao CASE deve ser feita nao por valores numerico e sim por caracter. Por esta razao os numeros de 1, 2, 3 e 0 estao entre apostrofo} begin repeat

clrscr; writeln('--- Opoes ---'); writeln('1- Saudacao '); writeln('2- Bronca '); writeln('3- Felicitacao'); writeln('0- Fim'); readln(opcao); case opcao of '1' : writeln(' Ola. Como vai ?'); '2' : writeln(' Vamos estudar mais'); '3' : writeln(' Meus Parabens !'); '0' : writeln(' Fim de servio'); else writeln ('Opcao invalida !'); end; writeln( 'Deseja executar o programa novamente (s/n)?'); resp:=upcase(readkey); { na linha acima o programa esta lendo uma tecla pressionada, convertendo, no caso de ser uma letra, para maiuscula e, atribuindo o seu valor a variavel resp o comando UPCASE faz parte da lib CRT e deve ser declarado na 2a linha do programa} until resp='N'; end.

9) Faa um programa que leia 3 valores inteiros (N, X, Y) e mostre todos os nmeros mltiplos de N entre X e Y.program multiplo; var resp,opcao : char; n,x,y,i,resto: integer; begin resp:='S'; while resp='S' do begin writeln('Digite um numero'); readln (n); writeln('Digite o valor inicial :'); readln (x); writeln('Digite o valor final :'); readln (y); i:=x; for i:= x to y do begin resto:=( i mod n); if resto=0 then writeln('O numero ',i,' e multiplo de ',n); end; writeln( 'Deseja executar o programa novamente (s/n)?'); resp:=upcase(readkey); end; end.

10) Um programa que receba trs notas de um aluno, calcule e mostre a mdia aritmtica e a mensagem que segue a tabela abaixo. Mdia Mensagem 0,0 at 3,0 Reprovado 3,0 (inclusive) at 7,0 Exame 7,0 (inclusive) at 10,0 (inclusive) Aprovadoprogram aprovacao; var resp : char; n1,n2,n3,media,nota_ap: real; begin resp:='S'; while resp='S' do begin writeln('Digite a 1a. nota'); readln ( n1 ); writeln('Digite a 2a. nota'); readln ( n2 ); writeln('Digite a 3a. nota'); readln ( n3 ); media:=(n1+n2+n3)/3; if media>= 7.0 then writeln('Aprovado !') else if media>=3.0 then writeln('Exame !!!!') else writeln('Reprovado !!!!!!!!!!!'); writeln( 'Deseja executar o programa novamente (s/n)?'); resp:=upcase(readkey); end; end.

11) Faa um programa que apresente o ms por extenso, a partir de um nmero digitado pelo usurio (entre 1 e 12).program mes; uses crt; var resp : char; n:integer; begin resp:='S'; while resp='S' do begin writeln('Digite um numero entre 1 e 12'); readln ( n ); case n of 1: writeln('Janeiro'); 2: writeln('Fevereiro'); 3: writeln('Marco'); 4: writeln('Abril'); 5: writeln('Maio'); 6: writeln('Junho'); 7: writeln('Julho'); 8: writeln('Agosto'); 9: writeln('Setembro'); 10: writeln('Outubro'); 11: writeln('Novembro');

12: writeln('Dezembro'); else writeln('Opcao Invalida !!!'); end; writeln( 'Deseja executar o programa novamente (s/n)?'); resp:=upcase(readkey); end; end.

12) Faa um programa que receba o cdigo correspondente ao cargo de um funcionrio e o seu salrio atual e mostre o cargo, o valor do aumento e seu novo salrio. Os cargos na tabela a seguir:Cdigo 1 2 3 4 5 Cargo Escriturrio Secretrio Caixa Gerente Diretor Percentual 50% 35% 20% 10% No tem aumento

program aumento1; var resp : char; sal,nsal,aumento : real; codigo : integer; begin resp:='S'; while resp='S' do begin writeln('Digite o codigo do cargo do funcionario'); readln ( codigo ); writeln('Informe o valor do salario atual'); readln (sal); if codigo=1 then begin writeln( 'Cargo : Escriturario - reajuste de 50 %'); aumento:=sal*(50/100); writeln( 'O valor do aumento e de: ',aumento:0:2); nsal:=sal+aumento; writeln( 'O seu novo salario e de: ',nsal:0:2); end else if codigo=2 then begin writeln( 'Cargo : Secretario - reajuste de 35 %'); aumento:=(sal*35)/100; writeln( 'O valor do aumento e de: ',aumento:0:2); nsal:=sal+aumento; writeln( 'O seu novo salario e de: ',nsal:0:2); end else if codigo=3 then begin writeln( 'Cargo : Caixa - reajuste de 20 %'); aumento:=sal*(20/100); writeln( 'O valor do aumento e de: ',aumento:0:2); writeln( 'O seu novo salario e de: ',sal+aumento:0:2); end else if codigo=4 then begin writeln( 'Cargo : Gerente - reajuste de 10 %'); aumento:=sal*(10/100); writeln( 'O valor do aumento e de: ',aumento:0:2);

nsal:=sal+aumento; writeln( 'O seu novo salario e de: ',nsal:0:2); end else if codigo=5 then begin writeln( 'Cargo : Diretor - sem direito a reajuste '); end; writeln( 'Deseja executar o programa novamente (s/n)?'); resp:=upcase(readkey); end; end. 13) Faa um programa que receba a idade de um nadador e mostre a sua categoria usando as regras a seguir: a. Infantil de 5 a 7; b. Juvenil de 8 a 10; c. Adolescente de 11 a 15; d. Adulto de 16 a 30; e. Snior acima de 30. program nadador; var resp : char; idade: integer; begin resp:='S'; while resp='S' do begin writeln('Digite a idade do nadador'); readln ( idade ); if (idade>=5) AND (idade=8) AND (idade=11) AND (idade=16) AND (idade30 then writeln(' Senior '); writeln( 'Deseja executar o programa novamente (s/n)?'); resp:=upcase(readkey); end; end.

14) Faa um programa que leia o nmero de termos, determine e mostre os valores de acordo com a srie abaixo: Srie 2, 7, 3, 4, 21, 12, 8, 63, 48, 16, 189, 192, 32, 567, 768, 64......program l2ex15; const m1=2; m2=3; m3=4; var resp : char; a,b,c,i,termos: integer; begin resp:='s'; while resp='s' do begin writeln('Digite a quantidade de termos'); readln( termos); a:=2; b:=7; c:=3; { os 3 primeiros numeros serao sempre 2,7 e 3

portanto, pode-se forcar a apresentacao } writeln( a ); writeln( b ); writeln( c ); i:=4; { neste exemplo a quantidade de termos que sera apresentada sempre sera multiplo de 3} for i:=4 to termos do begin writeln(a*m1); writeln(b*m2); writeln(c*m3); a:=a*m1; b:=b*m2; c:=c*m3; end; writeln( 'Deseja executar o programa novamente (s/n)?'); readln(resp); end; end.

15) Faa um programa (Lao For) que receba duas notas de trs alunos, calcule e mostre a mdia aritmtica das duas notas de cada aluno; a mensagem referente a mdia: at 3,0 reprovado; entre 3,0 e 7,0 exame e acima de 7,0 aprovado.program l2ex16; var resp : char; n1,n2, media: real; i: integer; begin resp:='S'; while resp='S' do begin i:=1; for i:= 1 to 3 do begin writeln('Digite a 1a nota'); readln(n1); writeln('Digite a 2a nota'); readln(n2); media:=(n1+n2)/2; if media>=7.0 then writeln('Aprovado com media ',media:0:2) else if media>=3 then writeln('Voce esta de Exame, sua media final e ',media:0:2) else writeln('Reprovado, media de: ',media:0:2); end; writeln( 'Deseja executar o programa novamente (s/n)?'); resp:=upcase(readkey); end; end.

16) Faa um programa que verifique e mostre os nmeros entre 1.000 e 1100 (inclusive) que, quando divididos por 11, produzam resto igual a 5.program l2ex19; var resp : char;

resto,i : integer; begin repeat i:=1000; for i:=1000 to 1100 do begin resto:=(i mod 11); if resto=5 then writeln('O resto da divisao de ',i,' por 11 e = ',resto); end; writeln( 'Deseja executar o programa novamente (s/n)?'); readln(resp); until resp='n'; end.

17) Uma loja utiliza o cdigo V para transao a Vista e P para transao a prazo. Faa um programa que receba o cdigo e o valor das transaes e mostre: a) o valor total das vendas a vista; b) o valor total das vendas a prazo; c) o valor total das vendas efetuadas.program vendas; var resp, tipo : char; totv,totp,valor : real; begin repeat writeln('Digite o valor da compra: '); readln(valor); writeln('Digite o tipo da Venda (V-A Vista P-A Prazo)'); readln(tipo); if tipo='v' then totv:=totv+valor else if tipo='p' then totp:=totp+valor; writeln( 'Deseja executar o programa novamente (s/n)?'); readln(resp); until resp='n'; writeln('Total de Vendas a Vista: ',totv:0:2); writeln('Total de Vendas a Prazo: ',totp:0:2); writeln('Total de Vendas : ',totv+totp:0:2); end.end.

18) Faa um programa que leia um valor n, inteiro e positivo, calcule e mostre a soma S da seguinte forma: S= 1 + 1/2 +1/3+1/4+...+1/nprogram xxx; var resp : char; S:real; i,n: integer; begin repeat writeln('Digite um numero inteiro e positivo: '); readln(n); s:=0; i:=1; for i:=1 to n do writeln(s,i); s:=s+(1/i); writeln('A soma da expresao e igual a =',s:0:2);

writeln( 'Deseja executar o programa novamente (s/n)?'); resp:=upcase(readkey); until resp='N'; end.