Program Ex42_Flexoes; Var N, F, Total: integer; write('digite o numero de series realizadas: '); Readln(N); Total:= 0; For F:=1 to N do Total:= Total+F; // muda de linha writeln('total de fexoes realizadas = ',Total); // Forma alternatia para o Exercício anterior usando while ao iniés de for-do Program Ex42_Flexoes_1; Var N, F, Total: integer; write('digite o numero de series realizadas: '); Readln(N); Total:= 0; F:=1; While F<=N do Total:= Total+F; F:=F+1; writeln('total de fexoes realizadas = ',Total); Program Ex43_Fatorial; Var N, x: integer; F: real; writeln('digite o numero cujo fatorial deseja: '); Readln(N); F:= 1; For x:=n downto 1 do F:= F*x; writeln('fatorial de ',N,' = ',F:0:0); 1
Program Ex44_Notas; Const N=3; // N=50 alterado para N=3 para testar o programa Var P1, P2, M, maior: real; cont, contap: integer; nome, nomemaior: string; contap:=0; maior:=0; For cont:=1 to N do write('digite o nome do aluno: '); write('digite a nota da P1: '); readln(p1); write('digite a nota da P2: '); readln(p2); M:=(3*p1+5*p2)/8; writeln('media = ',M:0:1); // muda de linha if M >= 5.0 then contap:=contap+1; if M > maior then maior:= M; nomemaior:= nome; // muda de linha writeln('aproiados = ',contap/n*100:0:1,'%'); writeln('maior nota = ',maior:0:1,' que pertence a ',nomemaior); Program Ex47_Salario; Var contm, cont: integer; salario, somam, somaf, maior: real; nome, rico, sexo: string; contm:=0; cont:=0; somam:=0; somaf:=0; maior:=0; write('digite o nome: '); 2
While (nome <> 'fm') do write('digite o sexo: '); readln(sexo); write('digite o salario: R$ '); readln(salario); if (sexo = 'masculino') then contm:=contm+1; somam:=somam+salario; else somaf:=somaf+salario; if salario > maior then maior:= salario; rico:= nome; write('digite o nome, ou fm para terminar: '); writeln('salario medio dos homens = R$ ',somam/contm:0:2); writeln('salario medio das mulheres = R$ ',somaf/cont:0:2); writeln('porcentagem de homens = ',contm/(contm+cont)*100:0:0,'%'); writeln('maior salario = R$ ',maior:0:2,' do funcionario ', rico); Program Ex48_Banco; Var cont, contdei: integer; saldo, soma, menor: real; nome, pobre: string; cont:=0; contdei:=0; soma:=0; write('digite o nome do cliente: '); While (nome <> 'fm') do write('digite o saldo: R$ '); readln(saldo); 3
if cont=0 then menor:=saldo; pobre:=nome; else if saldo<menor then menor:=saldo; pobre:=nome; soma:=soma+saldo; if saldo<0 then contdei:=contdei+1; write('digite o nome do cliente, ou fm para terminar: '); writeln('saldo medio = R$ ',soma/cont:0:2); writeln('porcentagem de deiedores = ',contdei/cont*100:0:0,'%'); writeln('cliente com menor saldo = ',pobre, ' com R$ ',menor:0:2); Program Ex49_Multilos_x ; Var N, x, y, M, cont: integer; cont:=0; writeln('este programa le 3 numeros (x,y,n) e imprime os N primeiros multplos positios de x ou y.'); write('digite o ialor de x = '); readln(x); write('digite o ialor de y = '); readln(y); write('digite o ialor de N = '); if x<y then M:=x else M:=y; writeln('os ',N,' primeiros multplos positios de ',x,' ou ',y,' sao:'); While cont<n do 4
if (M mod x = 0) or (M mod y = 0) then writeln(m); M:=M+1; // Forma alternatia para resolução do Exercício anterior Program Ex49_Multilos_x 1; Var N, x, y, cont, contx, conty: integer; cont:=0; contx:=1; conty:=1; writeln('este programa le 3 numeros (x,y,n) e imprime os N primeiros multplos positios de x ou y.'); write('digite o ialor de x = '); readln(x); write('digite o ialor de y = '); readln(y); write('digite o ialor de N = '); writeln('os ',N,' primeiros multplos positios de ',x,' ou ',y,' sao:'); While cont<n do if contx*x < conty*y then writeln(contx*x); contx:=contx+1; else if conty*y < contx*x then writeln(conty*y); conty:=conty+1; else if contx*x = conty*y then writeln(contx*x); contx:=contx+1; 5
conty:=conty+1; Program Ex50_Primo; Var N, x, cont: integer; writeln('este programa determina se um numero eh primo ou nao.'); write('digite o numero: '); cont:=0; for x:=1 to N do if N mod x = 0 then if cont=2 then writeln(n,' eh primo.') else writeln(n,' nao eh primo.'); // Forma alternatia para o Exercício anterior usando while ao iniés de for-do Program Ex50_Primo_1; Var N, x, cont: integer; writeln('este programa determina se um numero eh primo ou nao.'); write('digite o numero: '); cont:=0; x:=1; while x<=n do if N mod x = 0 then x:=x+1; 6
if cont=2 then writeln(n,' eh primo.') else writeln(n,' nao eh primo.'); Program Ex51_Fibonacci; Var N, x, y, z, cont: integer; writeln('este programa imprime a Sequencia de Fibonacci.'); write('digite quantos termos (>=2) da Sequencia deseja: '); writeln('os ',N,' primeiros termos da Sequencia de Fibonacci sao: '); x:=0; y:=1; writeln(x); writeln(y); cont:=2; while cont<n do z:=x+y; writeln(z); x:=y; y:=z; 7