Buscar

algoritmos resolvidos (exemplo de algoritmos prontos, 51 questões)

Prévia do material em texto

1) 
Enquanto 
prog 1 
real s, t; 
int i, den; 
s ← 0; 
den ← 50; 
i ← 1; 
enquanto ( i > 50 ) 
{ 
t ← ( 2 ** i ) / den; 
s ← s + t; 
i ← i + 1; 
den ← den - 1; 
} 
imprima " O valor da soma é ", s ; 
fimprog 
2) 
Enquanto 
prog 2 
int den, aux; 
real s, num, t; 
s ← 0; 
num ← 1; 
den ← 1; 
enquanto ( num <= 10 ) 
{ 
t ← num / den; 
aux ← den % 2; 
se ( aux <> 0 ) 
{ s ← s + t; } 
senao 
{ 
s ← s - t; 
num ← num + 1; 
den ← num ** 2; 
} 
imprima “ O valor de S é “, s; 
} 
Para 
prog 2 
int den, aux; 
real s, num, t; 
s ← 0; 
den ← 1; 
para ( num ← ; num <= 10; num++ ) 
{ 
t ← num / den; 
aux ← den % 2; 
se ( aux <> 0 ) 
{ s ← s + t; } 
senao 
{ 
s ← s - t; 
den ← num ** 2; 
} 
imprima “ O valor de S é “, s; 
} 
3) 
Para 
prog 3 
int den, cont, aux; 
real s, num, 
s ← 0; 
num ← 480; 
den ← 10; 
para ( cont ← 0; cont <= 30; cont++ ) 
{ 
aux ← den %2; 
se ( aux == 0 ) 
{ 
s ← s + num / den; 
} 
senao 
{ 
s ← s - num / den; 
} 
num ← num – 5; 
den ← den + 1; 
} 
imprima “ O valor de S é “, s; 
} 
4) 
Para 
prog 4 
real PI, N, AUX; 
int I; 
PI ← 4; 
N ← 3; 
I ← 0; 
para ( AUX ← 0; AUX <= 0.0001; AUX ← 4/N ) 
{ 
se ( I == 1 ) 
{ 
PI ← PI + AUX; 
I ← 0; 
} 
senao 
{ 
PI ← PI - AUX; 
I ← 1; 
} 
N ← N + 2; 
} 
imprima “ O valor calculado e: “, PI; 
} 
fimprog 
5) 
Para 
prog 5 
real X, AUX, S, P; 
int N, I; 
I ← 25; 
S ← 0; 
AUX ← 1; 
imprima “ informe o valor de X: “; 
leia X; 
para ( N ← 1; N <= 25; N++ ) 
{ 
P ← Potencia(X,I); 
P ← P / N; 
se ( AUX > 0 ) 
{ 
S ← S + P; 
AUX ← -1; 
} 
senao 
{ 
S ← S - P; 
AUX ← 1; 
} 
I ← I – 1; 
} 
imprima “ O valor do somatorio para X = “, X, “ e: “, S; 
} 
fim prog 
6) 
enquanto 
prog 6 
real S, T; 
int NUM, FAT, N, I; 
S ← 0; 
I ← 0; 
NUM ← 63; 
FAT ← 1; 
N ← 1; 
T ← 1; 
enquanto ( T <= 0.0000001 ) 
{ 
T ← NUM / FAT; 
S ← S + T; 
NUM ← NUM - 2; 
FAT ← FAT * N; 
N ← N + 1; 
I ← I + 1; 
} 
imprima “ O valor do somatorio e: “, S; 
imprima “ O numero de termos utilizados foi: “, I ; 
} 
fimprog 
7) 
enquanto 
prog7 
real S, T, K, DIF; 
int NUM, FAT, N, I, E, X; 
S ← 0; 
I ← 0; 
FAT ← 1; 
NUM ← 1; 
N ← 1; 
E ← 0; 
imprima “ Informe o valor de x: “; 
leia X; 
K ← X**2; 
DIF ← 1; 
enquanto ( DIF > 0.0001 ) 
{ 
T ← NUM / FAT; 
S ← S + T; 
DIF ← K - S; 
E ← E + 1; 
NUM ← X**E; 
N ← N + 1; 
FAT ← FAT * N; 
I ← I + 1; 
} 
imprima “ O valor do argumento x e: “, X; 
imprima “ Valor calculado atraves da serie: “, S; 
imprima “ Valor dado pela funcao EXP: “, K; 
imprima “ Numero de termos utilizados: “, I; 
} 
fimprog 
para 
8) 
enquanto 
prog 8 
int c, d, expden, fat; 
real x, seno; 
seno ← 0; 
expden ← 1; 
c ← 1; 
d ← 1 
imprima “ Digite o valor de x: “; 
leia x; 
x ← x*3.14/180; 
enquanto ( c<=10) 
{ 
fat ← 1; 
c ← c +1; 
enquanto ( d<=expden) 
{ 
fat ← fat*d; 
d ← d +1; 
se (c%2==0) 
{ 
seno ← seno - x ** expden/fat; 
} 
senao 
{ 
seno ← seno + x ** expden/fat; 
} 
expden ← expden + 2; 
} 
imprima “ seno: “,seno; 
imprima “ “; 
} 
} 
fimprog 
9) 
para 
prog 9 
int i, num, produto; 
produto ← 1; 
imprima “ Digite um numero : “; 
leia num; 
para ( i ← 1; i <= num; i++) 
{ 
produto ← produto * 1; 
imprima i, “ “; 
} 
imprima “ Numeros de 1 a “, num, “ : “, produto; 
imprima “ ”; 
fimprog 
10) 
enquanto 
prog 10 
int n, mult, i; 
i ← 1; 
imprima “ Digite um número : ”; 
leia n; 
enquanto ( i <= 10 ) 
{ 
mult ← i * n; 
i ← i + 1 
imprima “ ”, mult * n; 
} 
fimprog 
11) 
enquanto 
prog 11 
int n, p1, p2; 
real soma; 
n ← 1000; 
imprima “ Informe um numero : ”; 
leia n; 
enquanto ( n <= 9999) 
{ 
n ← n + 1; 
p1 ← n/100; 
p2 ← n%100; 
soma ← p1 + p2; 
se ( soma ← soma * soma ) 
{ 
imprima n; 
} 
fimprog 
12) 
enquanto 
prog 12 
int n, n1, aux; 
imprima “ Informe um numero: “; 
leia n; 
n1 ← 0; 
aux ← n; 
enquanto ( aux <> 0) 
{ 
n1 ← n1 * 10 + aux % 10; 
aux ← aux / 10; 
} 
se ( n1 == n ) 
{ 
imprima “ Numeros capicuos ”, n; 
} 
senao 
{ 
imprima “ Numero não e capicua ”; 
} 
} 
fimprog 
13) 
enquanto 
prog 13 
int k, x, exp, rep, i; 
i ← 1; 
imprima “ Digite o valor da base : ”; 
leia x; 
imprima “ Digite o valor do expoente: ”; 
leia exp; 
rep ← exp; 
se ( rep <0 ) 
{ 
rep ← rep +1; 
} 
k ← 1; 
enquanto ( i <= rep ) 
{ 
i ← i + 1; 
k ← k *x; 
} 
se ( exp <0) 
{ 
imprima “ Potencia :”, k; 
} 
senao 
{ 
imprima “ Potencia :”, k; 
} 
fimprog 
para 
prog 13 
int k, x, exp, rep, i; 
imprima “ Digite o valor da base : ”; 
leia x; 
imprima “ Digite o valor do expoente: ”; 
leia exp; 
rep ← exp; 
se ( rep <0 ) 
{ 
rep ← rep +1; 
} 
k ← 1; 
para ( i ← 1; i <= rep; i ← i + 1) 
{ 
k ← k *x; 
} 
se ( exp <0) 
{ 
imprima “ Potencia :”, k; 
} 
senao 
{ 
imprima “ Potencia :”, k; 
} 
fimprog 
14) 
enquanto 
prog 14 
int fat , n, i; 
i ← 2; 
imprima “ Digite um numero inteiro não negativo: ”; 
leia n; 
fat ← 1; 
enquanto ( i <= n) 
{ 
i ← i + 1; 
fat ← fat * i; 
} 
imprima “ O fatorial é : “, fat; 
fimprog 
para 
prog 14 
int fat , n, i; 
imprima “ Digite um numero inteiro não negativo: ”; 
leia n; 
fat ← 1; 
para ( i ← 2; i <= n; i ← i + 1) 
{ 
fat ← fat * i; 
} 
imprima “ O fatorial é : “, fat; 
fimprog 
15) 
enquanto 
prog15 
int n, sd, i; 
i ← 1; 
imprima “ Digite um numero inteiro positivo: ”; 
leia n; 
sd ← 0; 
enquanto ( i <= n/2) 
{ 
i ← i + 1 
se ( n% i == 0) 
{ 
sd ← sd + i; 
} 
} 
se ( sd == n) 
{ 
imprima “ Numero é perfeito: ”; 
} 
senao 
{ 
imprima “ Não é perfeito : “ ; 
} 
fimprog 
16 ) 
enquanto 
prog 16 
int c, num; 
c ← 1; 
imprima “ Digite um numero: ”; 
leia num; 
enquanto ( c <= num) 
{ 
c ← c + 1; 
se (num % c ==0) 
{ 
imprima c, “ ”; 
} 
} 
imprima “ ”; 
fimprog 
17) 
enquanto 
prog 17 
int n1, n2, aux, aux2, resto; 
imprima “ Informe o primeiro numero :”; 
leia n1; 
imprima “ Informe o segundo numero : “; 
leia n2; 
aux ← n1; 
aux2 ← n2; 
enquanto ( resto <>0) 
{ 
aux1 ← aux2; 
resto ← aux % aux2; 
} 
imprima n1,“ ”,n2 , “ ” == aux2; 
fimprog 
18) 
prog 18 
int n1 , n2; 
imprima “ Informe um numero inteiro:”; 
leia n1; 
imprima “ Informe o segundo numero:”; 
leia n2; 
enquanto ( n1 % n2 = 1) 
{ 
se ( n1 % n2 = 1) 
imprima “ Eles são primos”; 
} 
senao 
{ 
imprima “ Não são primos ”; 
} 
fimprog 
19) 
prog19 
int n10, aux, n8, mult; 
imprima “ Digite um numero na base 10: ”; 
leia n10; 
aux ← n10; 
mult ← 1; 
n8 ← 0; 
enquanto ( aux <>0) 
{ 
n8 ← n8 + (aux%8) * mult; 
aux ← aux / 8; 
mult ← mult * 10; 
} 
imprima “ O Numero na base 8 é : ” ,n8; 
fimprog 
20) 
prog 20 
int n2 , n10, aux, mult; 
imprima “ Informe um numero na base 2: ”; 
leia n2; 
aux ← n10; 
mult ← 1; 
enquanto ( aux <>0) 
{ 
se ( n10 ← n10 + ( aux % 10) * mult; 
{ 
aux ← aux / 10; 
mult ← mult * 2; 
} 
imprima “ Onumero na base 10 é igual á : ”,n10; 
fimprog 
21) 
prog21 
int n16, aux, n10, mult; 
imprima “ Digite um numero na base 16: ”; 
leia n16; 
aux ← n16; 
mult ← 1; 
n8 ← 0; 
enquanto ( aux <>0) 
{ 
n10 ← n10 + (aux%10) * mult; 
aux ← aux / 10; 
mult ← mult * 16; 
} 
imprima “ O Numero na base 10 é : ” ,n10; 
fimprog 
22) 
prog 22 
int a1, a2, i , n, termo , soma; 
imprima “ Entre com 1 termo: ”; 
leia a1; 
imprima “ Entre com 2 termo: ”; 
leia a2; 
imprima “ Entre com n termo: ”; 
leia n; 
soma ← a1 + a2; 
se ( n>= 3 ) 
{ 
imprima “ ”, a1, “ ”, a2, “ ”; 
para ( i ← 1; i<= n – 2; i++) 
{ 
termo ← a1 + a2; 
a1 ← a2; 
a2 ← termo; 
imprima termo, “ ”; 
soma ← soma + termo; 
} 
imprima “ Soma: ” soma; 
} 
senao 
{ 
imprima “ Não tem serie ”; 
} 
imprima “ ”; 
fimprog 
23) 
prog 23 
int i, num, cont; 
cont ← 0; 
i ← 1; 
imprima “ Digite numero positivo ou negativo para terminar: ”; 
leia num; 
enquanto (num>0) 
{ 
num ← num - i; 
i ← i + 2; 
cont ← cont + 1; 
} 
se (num==0) 
{ 
imprima “ A raiz quadrada é :”, cont; 
} 
senao 
{ 
imprima “ A raiz aproximada esta entre :” , cont -1, “e”. cont; 
} 
imprima “ \n”; 
fimprog 
24) 
prog 24 
real alt, maioralt, menoralt, md, soma; 
string nome, nomebaixo, nomealt; 
caracter sexo, nomalta, nomebaixa; 
int cont, conth, contm; 
maioralt ← 0; 
menoralt ← 100; 
soma ← 0; 
para ( cont ← 1; cont <= 70; cont++) 
{ 
imprima “ Digite 'F' ou 'f' para feminino ”; 
imprima “ Digite 'M' ou 'm' para masculino ”; 
imprima “ Informe o sexo da pessoa ”; 
leia sexo; 
imprima “ Informe o nome ”, cont “ pessoa”; 
leia nome; 
se (cont ==1) 
{ 
maioralt ← altura; 
nomalta ← nome; 
} 
se(cont <> 1) 
{ 
se ( alt > maioralt) 
{ 
maioralt ← alt; 
nomealta ← nome; 
} 
} 
se ( sexo == “ feminino” ) 
{ 
soma ← soma + alt; 
contm ← contm + 1; 
} 
se ( sexo == “ masculino” ) 
{ 
conth ← conth + 1; 
} 
} 
imprima “ A pessoa mais alta é :”, nomealta; 
imprima “ A pessoa mais baixa é :” , nomebaixa; 
imprima conth, “ pessoas são homens ”; 
se (contm <>0) 
{ 
imprima “ A média da altura das mulheres é :”; 
soma /contm; 
} 
senao 
{ 
imprima “ Nenhuma pessoa é mulher ”; 
} 
fimprog 
25) 
prog 25 
int dat, ano, mes, dia, sl, pc; 
real desc1, desc2, vlc; 
imprima “ Digite o valor a contratar:”; 
leia vlc; 
faca{ 
se ( dat<= 12) 
{ sl ← sl + desc1; } 
se ( dat> 12) 
{ 
sl ← sl + desc2; 
} 
dat++; 
} 
enquanto ( sl<=vlc); 
ano ← dat * 30/ 360; 
mes ← dat * 30 % 360 / 30; 
dia ← dat * 30 % 360 % 30; 
imprima ano “ ”, mes , “ ”, dia, “ ”; 
fimprog 
26) 
prog 26 
real massaI, massaF, tempo; 
int horas, min, seg; 
tempo ← 0; 
horas ← 0; 
min ← 0; 
seg ← 0; 
imprima “ Informe a massa inicial: “; 
leia massaI; 
massaF ← massaI; 
enquanto ( massaF < 0.5 ) 
{ 
massaF ← massaF / 2; 
tempo ← tempo + 50; 
} 
// transformando o tempo em horas, minutos e segundos 
seg ← tempo; 
enquanto ( seg >= 60 ) 
{ 
min ← min + 1; 
se ( min == 60 ) 
{ 
horas ← horas + 1; 
min ← 0; 
} 
seg ← seg - 60; 
} 
imprima “ Massa inicial (em gramas): “, massaI ; 
imprima “ Massa final (em gramas): “, massaF ; 
imprima “ Tempo decorrido em segundos: “, tempo ; 
imprima horas, " horas, ", min, " minutos e ",seg , " segundos" ; 
} 
fimprog 
27) 
prog 27 
real x, y, x1, y1; 
x1 ← 0; 
y1 ← 0; 
imprima “ Digite o valor de x: ”; 
leia x; 
imprima “ Digite o valor de y: ”; 
leia y; 
se (x<y) 
{ 
enquanto (x<y) 
{ 
x1 ← x + 1; 
se (x%2<>0) 
{ 
imprima x1; 
} 
se (x<y) 
{ 
enquanto (x<y) 
{ 
y1 ← y + 1; 
se (x%2<>0) 
{ 
imprima y1; 
} 
} 
fimprog 
28) 
prog 28 
int idade, n; 
real md, soma; 
soma ← 0; 
n ← 0; 
faca 
{ 
imprima “ Informe a idade : “; 
leia idade; 
soma ← soma + idade; 
n ← n + 1; 
} 
enquanto ( idade == 0 ) 
md ← soma / n; 
imprima “ A idade media é “, md; 
} 
fimprog 
29) 
prog 29 
int canal, espectadores, num1, num2, num3, num4, pessoas, canal, espectadores; 
real porc1, porc2, porc3, porc4; 
num1 ← 0; 
num2 ← 0; 
num3 ← 0; 
num4 ← 0; 
pessoas ← 0; 
canal ← 1; 
enquanto ( canal == 0) 
{ 
imprima “ Informe o canal que estava sendo assistido: “; 
leia canal; 
se ( canal <> 0 ) 
{ 
imprima “ Quantas pessoas estavam assistindo: “; 
leia espectadores; 
pessoas ← pessoas + espectadores; 
se ( canal == 1) 
{ 
num1 ← num1 + espectadores; 
} 
senao 
se ( canal == 2 ) 
{ 
num2 ← num2 + espectadores; 
} 
senao 
se ( canal == 3 ) 
{ 
num3 ← num3 + espectadores; 
} 
senao 
se ( canal == 4 ) 
{ 
num4 ← num4 + espectadores; 
} 
} 
} 
// calculo das porcentagens das emissoras 
porc1 ← 100 * (num1 / pessoas ); 
porc2 ← 100 * (num2 / pessoas ); 
porc3 ← 100 * (num3 / pessoas ); 
porc4 ← 100 * (num4 / pessoas ); 
imprima “ % Sbt : “, porc1; 
imprima “ % Globo : “, porc2; 
imprima “ % Record : “, porc3; 
imprima “ % Band : “, porc4; 
} 
fimprog 
30) 
prog 30 
string Cod, Nome, End; 
int cont, ano; 
real Consumo, Tpagar, Ticms, Tgeral, Media; 
caractere classe; 
Tgeral ← 0; 
Ticms ←0; 
Media ← 0; 
imprima"DIGITE A QUANTIDADE BOLETOS A SEREM EMITIDOS: "; 
leia Cont; 
enquanto(Cont > 0){ 
imprima "DIGITE O CODIGO DO CONSUMDOR: "; 
leia Cod; 
imprima "DIGITE O NOME DO CONSUMIDOR: "; 
leia Nome; 
imprima "DIGITE O COSUMO DO MES EM M³: "; 
leia Consumo; 
imprima "DIGITE O ANO DA INSTALAÇAO: "; 
leia ano; 
imprima "DIGITE A CLASSE DO CONSUMIDOR: "; 
leia classe; 
imprima "\n\n\n"; 
escolha(classe){ 
caso 'a': 
caso 'A': Tpagar ← (((consumo * 0.50)* 1.05) * 1.16); 
Tgeral ←Tgeral + Tpagar; 
Ticms← Ticms + (((consumo * 0.50)* 1.05) * 0.16); 
pare; 
caso 'b': 
caso 'B': Tpagar ← (((consumo * 0.85)* 1.10) * 1.16); 
Tgeral ← Tgeral + Tpagar; 
Ticms ← Ticms + (((consumo * 0.85)* 1.10) * 0.16); 
pare; 
caso 'c': 
caso 'C': Tpagar ← (((consumo * 1.50)* 1.20) * 1.16); 
Tgeral ←Tgeral + Tpagar; 
Ticms ←Ticms + (((consumo * 1.50)* 1.20) * 0.16); 
pare; 
} 
} 
Fimprog 
31) 
prog 31 
int idade, individuos, maior, total; 
real porc; 
string cabelo, olho, sexo; 
maior ← 0; 
total ← 0; 
indivíduos ← 0; 
enquanto ( idade <> -1 ) 
{ 
imprima “ Informe o sexo: “; 
leia sexo; 
imprima “ Informe a cor dos olhos: “ 
leia olho; 
imprima “ Informe a cor dos cabelos: “; 
leia cabelo; 
imprima “ Informe a idade: “; 
leia idade; 
se ( idade <> -1 ) 
{ 
se ( idade > maior ) 
{ 
maior ← idade; 
} 
individuos ← total + 1 ; 
se ( idade >= 18 && idade <= 35 ) 
{ 
se ( sexo == “ feminino “ && olho == “ verde “ ) 
{ 
se ( cabelo == “ louro “ ) 
{ 
individuos ← individuos + 1; 
} 
} 
} 
} 
} 
porc ← individuos * 100 / total; 
imprima “ A maior idade é “, maior; 
imprima “ Porcentagem : “, porc; 
} 
fimprog 
32) 
prog 32 
int ident, ident2, identaux, cont; 
real mediaP1, mediaP2, mediaM, mediaM2, N1, N2; 
imprima "Informe a identificação.\nDigite 0 para sair."; 
leia ident; 
identaux=ident; 
imprima "Digita a nota N1: "; 
leia N1; 
imprima "Digite a nota N2: "; 
leia N2; 
mediaP1← ((N1*4)+(N2*6))/10; 
mediaM← mediaP1; 
enquanto(ident<>0) 
{ 
imprima "Informe a identificação.\nDigite 0 para sair."; 
leia ident; 
imprima "Digita a notaN1: "; 
leia N1; 
imprima "Digite a nota N2: "; 
leia N2; 
mediaP1← ((N1*4)+(N2*6))/10; 
se(mediaP1>mediaM) 
{ mediaM2=mediaM; 
mediaM=mediaP1; 
} 
se(ident>identaux) 
{ ident2← ident aux; 
ident aux←ident; 
} 
} 
imprima,ident1," ",mediaM; 
imprima,ident2," ",mediaM2; 
Fimprog 
33) 
prog 33 
real salario, numfilho, somaTotalFilhos, somaTotalRenda, mediaRenda, mediaFilhos, maiorSalario, 
numEnt622; 
int numEntrev; 
Realsalario=0; 
numFilho=0; 
numEntrev=0; 
somaTotalFilhos=0; 
somaTotalRenda=0; 
mediaRenda=0; 
mediaFilhos=0; 
maiorSalario=0; 
numEnt622=0; 
enquanto (salario >= 0) 
{ 
imprima “ Informe a renda salarial da familia: “; 
leia salario; 
se ( salario > maiorSalario) 
{ 
maiorSalario = salario; 
} 
se (salario < 622) 
{ 
numEnt622 += 1; 
} 
se (salario >= 0) 
{ 
numEntrev++; 
somaTotalRenda += salario; 
imprima “ Informe o numero de filhos: “; 
leia numFilho; 
somaTotalFilhos += numFilho; 
imprima “ “; 
} 
mediaRenda = somaTotalRenda/numEntrev; 
mediaFilhos = somaTotalFilhos/numEntrev; 
numEnt622 -= 1; 
imprima “ Resumo das informações digitadas “; 
imprima “ Renda Familiar: “ ,somaTotalRenda; 
imprima “ Numero de Filhos: “ ,somaTotalFilhos; 
imprima “ Total de entrevistados: “ ,numEntrev; 
imprima “ Media da renda “ , mediaRenda; 
imprima “ Media de filhos: “ ,mediaFilhos; 
imprima “ Maior salario: “ ,maiorSalario; 
imprima “ Percentual de entrevistados com salario baixo de 622: “ ,(numEnt622 / numEntrev) * 100; 
} 
fimprog 
34) 
prog 34 
int l, c; 
string r; 
para (l=1; l<=9; l++) 
{ 
imprima “ Tabuada do “, l; 
para (c ← 1; c <= 9; c++) 
{ 
imprima “ “, l “ x “, c “ = “, l*c; 
} 
imprima “ Tabuada de 1 a 9: “; 
leia r; 
} 
fimprog 
35) 
prog 35 
int N, D, P; 
real R; 
N ← 1; 
enquanto ( N > 100 ) 
{ 
D ← 3; 
P ← 1; 
} 
enquanto ( D > N / 2 ) 
{ 
R ← N % D ; 
se ( R == 0 ) 
{ 
P ← 0; 
} 
D ← D + 2; 
} 
se ( P == 1 ) 
{ 
imprima N; 
} 
N ← N + 2; 
} 
} 
fimprog 
36) 
prog 36 
int CPF; 
imprima"Digite o número do CPF ou 0 para sair: "; 
leia CPF; 
se(n 
(CPF<0||CPF>99999999999) 
{ imprima "CPF incorreto!";} 
enquanto(CPF<>0) 
{ 
imprima"Digite o número do CPF ou 0 para sair: "; 
leia CPF; 
se(CPF<0||CPF>99999999999) 
{ imprima "CPF incorreto!";} 
} 
fimprog 
37) 
prog 37 
int N, A, B, C, MDC, MAI, MED, MEN, Q, R; 
N ← 25; 
enquanto ( N == 0 ) 
{ 
imprima “ Informe o 1º numero: “; 
leia A ; 
imprima “ Informe o 2º numero: “; 
leia B ; 
imprima “ Informe o 3º numero: “; 
leia C ; 
MAI ← A; 
MED ← B; 
MEN ← C; 
se ( A > B && A > C ) 
{ 
MAI ← A; 
se ( B > C ) 
{ 
MED ← B; 
MEN ← C; 
} 
senao 
{ 
MED ← C; 
MEN ← B; 
} 
} 
senao 
{ 
se ( B > A && B > C ) 
{ 
MAI ← B; 
se ( A > C ) 
{ 
MED ← A; 
MEN ← C; 
} 
senao 
{ 
MED ← C; 
MEN ← A; 
} 
} 
senao 
{ 
se ( C > A && C > B ) 
{ 
MAI ← C; 
se ( A > B ) 
{ 
MED ← A; 
MEN ← B; 
} 
senao 
{ 
MED ← B; 
MEN ← A; 
} 
} 
} 
} 
imprima “ Os números ordenados são: “, MEN, “ “ , MED, “ “ , MAI; 
enquanto ( MEN == 0 ) 
{ 
Q ← MAI / MEN ; 
R ← MAI – Q * MEN; 
MAI ← MEN; 
MEN ← R; 
} 
MDC ← MAI; 
se ( MED > MDC ) 
{ 
MAI ← MED; 
MEN ← MDC; 
} 
senao 
{ 
MAI ← MDC; 
MEN ← MED; 
} 
enquanto ( MEN == 0 ) 
{ 
Q ← MAI / MEN ; 
R ← MAI – Q * MEN; 
MAI ← MEN; 
MEN ← R; 
} 
MDC ← MAI; 
imprima “ Números: “, A, “ “, B, “ “ , C, “ MDC = “, MDC; 
N ← N - 1; // conta uma linha processada 
} 
} 
fimprog 
38) 
prog 38 
string nome; 
real P_COMPRA, P_VENDA, LUCRO, T_VENDA, T_COMPRA; 
int QNT1, QNT2, QNT3; 
T_COMPRA ← 0; 
T_VENDA ← 0; 
QNT1 ← 0; 
QNT2 ← 0; 
QNT3 ← 0; 
enquanto ( NOME == “FIM” ) 
{ 
imprima “ Informe o nome da mercadoria: “; 
leia NOME; 
se ( NOME <> “FIM” ) 
{ 
imprima “ Informe o preço de compra: “; 
leia P_COMPRA; 
imprima “ Informe o preço de venda: “; 
leia P_VENDA; 
LUCRO ← 100 * (P_VENDA - P_COMPRA) / P_COMPRA; 
se ( LUCRO < 10 ) 
{ 
QNT1 ← QNT1 + 1; 
} 
senao 
{ 
se ( LUCRO >= 10 && LUCRO <= 20 ) 
{ 
QNT2 ← QNT2 + 1; 
} 
senao 
{ 
QNT3 ← QNT3 + 1; 
} 
} 
T_COMPRA ← T_COMPRA + P_COMPRA; 
T_VENDA ← T_VENDA + P_VENDA; 
} 
LUCRO ← 100 * ( T_VENDA - T_COMPRA ) / T_COMPRA; 
} 
imprima “ Quantidade de mercadorias com lucro < 10%: “, QNT1; 
imprima “ Quantidade de mercadorias com lucro < 20%: “, QNT2; 
imprima “ Quantidade de mercadorias com lucro > 20%: “, QNT3; 
imprima “ Valor total das compras: “, T_COMPRA; 
imprima “ Valor total das vendas: “, T_VENDA; 
imprima “ Lucro total (%): “, LUCRO; 
} 
fimprog 
39) 
prog39 
real massaI, massaF, tempo; 
int horas, minutos, segundos; 
tempo ← 0; 
horas ← 0; 
minutos ← 0; 
segundos ← 0; 
imprima “ Informe a massa inicial (em gramas): “; 
leia massaI; 
massaF ← massaI; 
enquanto ( massaF < 0.5 ) 
{ 
massaF ← massaF / 2; 
tempo ← tempo + 50; 
} 
segundos ← tempo; 
enquanto ( segundos >= 60 ) 
{ 
minutos ← minutos + 1; 
se ( minutos == 60 ) 
{ 
horas ← horas + 1; 
minutos ← 0; 
} 
segundos ← segundos - 60; 
} 
imprima “ Massa inicial (em gramas): “, massaI ; 
imprima “ Massa final (em gramas): “, massaF ; 
imprima “Tempo decorrido em segundos: “, tempo ; 
imprima horas, “ horas, “, minutos, “ minutos é “,segundos, “ segundos”; 
} 
fimprog 
40) 
prog 40 
caracter TURMA, CHAMADA; 
int ALUNOS, QNT_A, QNT_P, N_TUR, N_ALU, T; 
real PORCENT; 
N_TUR ← 0; 
T ← 0; 
enquanto ( N_TUR == 14 ) 
{ 
QNT_A ← 0; 
QNT_P ← 0; 
N_ALU ← 0; 
imprima “ Informe a turma: “; 
leia TURMA; 
imprima “ Informe o número de alunos matriculados: “; 
leia ALUNOS; 
enquanto ( N_ALU == ALUNOS ) 
{ 
imprima “ Informe o numero de matricula: “; 
leia MATRICULA; 
imprima “ Chamada (P/A): “; 
leia CHAMADA; 
se ( CHAMADA == 'P' ) 
{ 
QNT_P ← QNT_P + 1; 
} 
senao 
{ 
se ( CHAMADA == 'A' ) 
{ 
QNT_A ← QNT_A + 1; 
} 
} 
N_ALU := N_ALU + 1; 
} 
PORCENT ← 100 * ( QNT_A / N_ALU ); 
imprima “ Turma: “ , TURMA, “ % faltas: “, PORCENT; 
se ( PORCENT > 5 ) 
{ 
T ← T + 1; 
} 
N_TUR ← N_TUR + 1; 
} 
imprima “ Numero de turmas com ausencia maior que 5%: “, T; 
} 
fimprog 
41) 
prog 41 
int HOMENS, MULHERES R_SIM R_NAO ENTREVISTADOS; 
real R_SIM_M R_NAO_H; 
caracter RESP, SEXO; 
N ← 0; 
HOMENS ← 0; 
MULHERES ← 0; 
R_SIM ← 0; 
R_NAO ← 0; 
R_SIM_M ← 0; 
R_NAO_H ← 0; 
ENTREVISTADOS ← 4; 
enquanto ( N == ENTREVISTADOS ) 
{ 
imprima “ Informe o sexo: “; 
leia SEXO; 
imprima “ Gostou do produto (S/N): “; 
leia RESP; 
se ( SEXO == 'M' | SEXO == 'm' ) 
{ 
HOMENS ← HOMENS + 1; 
se ( RESP == 'N' | RESP == 'n' ) 
{ 
R_NAO_H ← R_NAO_H + 1; 
} 
} 
senao 
{ 
se ( SEXO == 'F' | SEXO == 'f' ) 
{ 
MULHERES ← MULHERES + 1; 
se ( RESP == 'S' | RESP == 's' ) 
{ 
R_SIM_M := R_SIM_M + 1; 
} 
} 
} 
se ( RESP == 'S' | RESP == 's' ) 
{ 
R_SIM ← R_SIM + 1; 
} 
senao 
{ 
se ( RESP == 'N' | RESP == 'n' ) 
{ 
R_NAO ← R_NAO + 1; 
} 
} 
N ← N + 1; 
} 
P_SIM_M ← 100 * ( R_SIM_M / ENTREVISTADOS ); 
P_NAO_H ← 100 * ( R_NAO_H / ENTREVISTADOS ); 
imprima “ Quantidade de pessoas que responderam sim: “, R_SIM ; 
imprima “ Quantidade de pessoas que responderam não: “, R_NAO ; 
imprima“ % de mulheres que responderam sim: “, P_SIM_M ; 
imprima “ % de homens que responderam nao: “, P_NAO_H ; 
} 
fimprog 
42) 
prog 42 
int CURSO, VAGAS, MASC, FEM; 
real POR_VAGA , CURSO_MAIOR, TOTAL_CAND, POR_CURSO, PC_FEM, 
MAIOR_POR_VAGA; 
TOTAL_CAND ← 0; 
MAIOR_POR_VAGA ← 0; 
CURSO ← 1; 
enquanto ( CURSO == 0 ) 
{ 
imprima “ Informe o codigo do curso: “; 
leia CURSO ; 
se ( CURSO <> 0 ) 
{ 
imprima “ numero de vagas: “; 
leia VAGAS ; 
imprima “ numero de candidatos do sexo masculino: “; 
leia MASC ; 
imprima “ numero de candidatos do sexo feminino: “; 
leia FEM ; 
POR_CURSO ← MASC + FEM; 
POR_VAGA ← POR_CURSO / VAGAS; 
PC_FEM ← 100 * ( FEM / POR_CURSO ); 
se ( POR_VAGA > MAIOR_POR_VAGA ) 
{ 
MAIOR_POR_VAGA ← POR_VAGA; 
CURSO_MAIOR ← CURSO; 
} 
TOTAL_CAND ← TOTAL_CAND + POR_CURSO; 
imprima “ curso: “, CURSO ; 
imprima “ candidatos / vaga: “, POR_VAGA ; 
imprima “ % feminino: “, PC_FEMI ; 
} 
} 
imprima “ Total de candidatos: “, TOTAL_CAND ; 
} 
fimprog 
43) 
prog 43 
int MATRICULA, FREQUENCIA, REPROVADOS, REPRO_FRE, ALUNOS, 
real MAIOR, N1, N2, N3, NF, MENOR, MEDIA, PC_REPRO_FRE; 
string RESULTADO; // “ aprovado” ou “ reprovado “ 
ALUNOS ← 0; 
REPRO_FRE ← 0; 
MEDIA ← 0; 
REPROVADOS ← 0; 
MAIOR ← -1; 
MENOR ← 110; 
enquanto ( ALUNOS == 100 ) 
{ 
imprima “ Informe o número de matricula: “; 
leia MATRICULA ; 
imprima “ Informe a Nota 1: “; 
leia N1; 
imprima “ Informe a Nota 2: “; 
leia N2 ; 
imprima “ Informe a Nota 3: “; 
leia N3; 
imprima “ Informe a Frequencia: “; 
leia FREQUENCIA; 
NF ← (N1 + N2 + N3) / 3; 
se ( NF > MAIOR ) 
{ 
MAIOR ← NF; 
} 
se ( NF < MENOR ) 
{ 
MENOR ← NF; 
} 
MEDIA ← MEDIA + NF; 
se ( NF >= 60 && FREQUENCIA >= 40 ) 
{ 
RESULTADO ← “APROVADO”; 
} 
senao 
{ 
RESULTADO ← “ REPROVADO “; 
REPROVADOS ← REPROVADOS + 1; 
se ( FREQUENCIA < 40 ) 
{ 
REPRO_FRE ← REPRO_FRE + 1; 
} 
} 
imprima “ Numero de matricula: “, MATRICULA ; 
imprima “ Frequencia: “, FREQUENCIA ; 
imprima “ Nota final: “, NF ; 
imprima “ Resultado: “, RESULTADO; 
ALUNOS ← ALUNOS + 1; 
} 
MEDIA ← MEDIA / ALUNOS; 
PC_REPRO_FRE ← REPRO_FRE / ALUNOS; 
imprima “ Maior nota: “, MAIOR; 
imprima “ Menor nota: “, MENOR; 
imprima “ Media da turma: “, MEDIA; 
imprima “ Total de alunos reprovados: “, REPROVADOS; 
imprima “ % de reprovados por frequencia: “, PC_REPRO_FRE; 
} 
fimprog 
44) 
prog 44 
int CONSUMIDOR; 
real PRECO, CONSUMO, MAIOR, MENOR, MEDIA, TOTAL_R, TOTAL_C, TOTAL_I, 
A_PAGAR; 
caracter TIPO; 
TOTAL_R ← 0; 
TOTAL_C ← 0; 
TOTAL_I ← 0; 
N ← 0; 
MAIOR ← -1; 
MENOR ← 1000; 
CONSUMIDOR ← 1; 
enquanto ( CONSUMIDOR == 0 ) 
{ 
imprima “ Informe o numero do consumidor: “; 
leia CONSUMIDOR; 
se ( CONSUMIDOR == 0 ) 
{ 
pare; 
} 
imprima “ Informe o preço do kwh: “; 
leia PRECO; 
imprima “ Informe o consumo mensal: “; 
leia CONSUMO; 
imprima “ Informe o tipo de consumidor : “; 
leia TIPO; 
A_PAGAR ← CONSUMO * PRECO; 
se ( CONSUMO > MAIOR ) 
{ 
MAIOR ← CONSUMO; 
} 
se ( CONSUMO < MENOR ) 
{ 
MENOR ← CONSUMO; 
} 
escolha 
{ 
caso 1 :( TIPO == 'R' | TIPO == 'r' ) 
{ 
TOTAL_R ← TOTAL_R + CONSUMO; 
} 
caso 2: ( TIPO == 'C' | TIPO == 'c' ) 
{ 
TOTAL_C ← TOTAL_C + CONSUMO; 
} 
caso 3: ( TIPO == 'I' | TIPO == 'i' ) 
{ 
TOTAL_I ← TOTAL_I + CONSUMO; 
} 
} 
imprima “ Número do consumidor: “, CONSUMIDOR; 
imprima “ Total a pagar: “, A_PAGAR; 
N ← N + 1; 
} 
MEDIA ← (TOTAL_R + TOTAL_C + TOTAL_I) / N; 
imprima “ Maior consumo: “, MAIOR; 
imprima “ Menor consumo: “, MENOR; 
imprima “ Media de consumo: “, MEDIA; 
imprima “ Total residencial: “, TOTAL_R; 
imprima “ Total comercial: “, TOTAL_C; 
imprima “ Total industrial: “, TOTAL_I; 
} 
fimprog 
45) 
prog 45 
real T, E, V, KM1, KM2; 
KM1 ← 0; 
KM2 ← 1; 
enquanto ( KM1 == KM2 ) 
{ 
imprima “ Informe o marco quilometrico 1: “; 
leia KM1; 
imprima “ Informe o marco quilometrico 2: “; 
leia KM2; 
se ( KM1 == KM2 ) 
{ 
pare; 
} 
E ← KM2 - KM1; 
V ← 20; 
enquanto ( V > 80 ) 
{ 
T ← E / V; 
se ( T > 2 ) 
{ 
imprima “ Entre “ , KM1, “ e “, KM2, “ a “, V, “ km/h “, “ gastou “, T, “ horas”; 
} 
V ← V + 10; 
} 
} 
} 
fim prog 
46) 
prog 46 
real MINIMO, TAXA, VALOR, SALDO; 
int TRANS, CONTA; 
caracter TIPO; 
SALDO ← 0; 
imprima “ Informe o valor do balanco minimo diario: “; 
leia MINIMO; 
imprima “ Informe a quantidade de transacoes: “; 
leia TRANS; 
imprima “ Informe o valor da taxa de servico %: “; 
leia TAXA; 
enquanto ( TRANS == 0 ) 
{ 
imprima “ Informe o numero da conta: “; 
leia CONTA; 
imprima “ Informe o valor da transacao: “; 
leia VALOR; 
imprima “ Informe o tipo da transacao (d/r): “; 
leia TIPO; 
se ( TIPO == 'd' | TIPO == 'D' ) 
{ 
SALDO ← SALDO + VALOR; 
} 
senao 
{ 
se ( TIPO == 'r' | TIPO == 'R' ) 
{ 
SALDO ← SALDO - VALOR; 
} 
} 
se ( SALDO < MINIMO ) 
{ 
SALDO ← SALDO - SALDO * TAXA / 100; 
imprima “ Conta “, CONTA , “ => NAO HA FUNDOS “; 
} 
senao 
{ 
imprima “ Conta “, CONTA, “ => R$ “, SALDO; 
} 
TRANS ← TRANS - 1; 
} 
} 
fimprog 
47) 
prog 47 
int INSCRICAO, IDADE, QTD_FEM, QTD_MAS, ID_MEDIA, S_IDADE, HOM_EXP, HOM_45, 
ID_MENOR, MUL_EXP; 
real PORCENT; 
caracter SEXO, EXPERIENCIA; 
QTD_FEM ← 0; 
QTD_MAS ← 0; 
S_IDADE ← 0; 
HOM_EXP ← 0; 
HOM_45 ← 0; 
ID_MENOR ← 100; 
INSCRICAO ← 1; 
enquanto ( INSCRICAO <> 0 ) 
{ 
imprima “ Informe o numero de inscricao: “; 
leia INSCRICAO; 
se ( INSCRICAO <> 0 ) 
{ 
imprima “ Informe a idade: “; 
leia IDADE; 
imprima “ Informe o sexo: “; 
leia SEXO; 
imprima “ Ja tem experiencia (s/n): “; 
leia EXPERIENCIA; 
se ( SEXO == 'M' | SEXO == 'm' ) 
{ 
QTD_MAS ← QTD_MAS + 1; 
se ( EXPERIENCIA == 'S' | EXPERIENCIA == 's' ) 
{ 
HOM_EXP ← HOM_EXP + 1; 
S_IDADE ← S_IDADE + IDADE; 
} 
se ( IDADE > 45 ) 
{ 
HOM_45 ← HOM_45 + 1; 
} 
} 
senao 
{ 
se ( SEXO == 'F' | SEXO == 'f' ) 
{ 
QTD_FEM ← QTD_FEM + 1; 
se ( EXPERIENCIA == 'S' | EXPERIENCIA == 's' ) 
{ 
se ( ID_MENOR < IDADE ) 
{ 
ID_MENOR ← IDADE; 
} 
se ( IDADE < 35 ) 
{ 
MUL_EXP ← MUL_EXP + 1; 
imprima “ Mulher experiente: “, INSCRICAO; 
} 
} 
} 
} 
} 
} 
se ( HOM_EXP <> 0 ) 
{ 
ID_MEDIA ← S_IDADE / HOM_EXP; 
} 
senao 
{ 
ID_MEDIA ← 0; 
} 
se ( QTD_MAS <> 0 ) 
{ 
PORCENT ← HOM_45 / QTD_MAS; 
} 
senao 
{ 
PORCENT ← 0; 
} 
imprima “ Numero de candidatos do sexo feminino: “, QTD_FEM; 
imprima “ Numero de candidatos do sexo masculino: “, QTD_MAS; 
imprima “ Idade media dos homens > 45 e com experiencia: “, ID_MEDIA; 
imprima “ Numero de mulheres com < 35 e com experiencia: “, MUL_EXP; 
imprima “ Menor idade entre mulheres com experiencia: “, ID_MENOR; 
} 
fimprog 
48) 
prog 48 
real FIXO, COMISSAO, INPS, BRUTO, RETIDO, LIQUIDO; 
int CORES, PRETO, N, INSCRICAO; 
caracter TIPO; 
N ← 0; 
imprima “ Informe o valor do salario fixo: “; 
leia FIXO; 
INPS ← FIXO * 8 / 100; 
enquanto ( N == 5 ) 
{ 
BRUTO ← 0; 
LIQUIDO ← 0; 
COMISSAO ← 0; 
imprima “ Informe o numero de inscricao: “; 
leia INSCRICAO; 
imprima “ Numero de televisores a cores vendidos: “; 
leia CORES; 
imprima “ Numero de televisores preto e branco vendidos: “; 
leia PRETO; 
se ( CORES >= 10 ) 
{ 
COMISSAO ← 100 * CORES; 
} 
senao 
{ 
COMISSAO ← 50 * CORES; 
} 
se ( PRETO >= 20) 
{ 
COMISSAO ← COMISSAO + 40 * PRETO; 
} 
senao 
{ 
COMISSAO ← COMISSAO + 20 * PRETO; 
} 
BRUTO ← FIXO + COMISSAO - INPS; 
se ( BRUTO > 3000 ) 
{ 
LIQUIDO ← BRUTO - ( BRUTO * 5 / 100 ); 
} 
senao 
{ 
LIQUIDO ← BRUTO; 
} 
imprima “ Inscricao: “, INSCRICAO, “ Bruto: “, BRUTO, “ Liquido: “, LIQUIDO; 
N ← N + 1; 
} 
} 
fimprog 
49) 
50) 
prog 50 
int OPERARIO, PRODUCAO, PECAS_MES, HOMENS_A, HOMENS_B, HOMENS_C, 
MULHERES_A, MULHERES_B, MULHERES_C, PECAS_HA, PECAS_HB, PECAS_HC, 
PECAS_MA, PECAS_MB, PECAS_MC, HOMENS, MULHERES, ID_MAIOR, MAIOR 
caracter SEXO; 
real SALARIO, FOLHA, MEDIA_HA, MEDIA_HB, MEDIA_HC, MEDIA_MA, MEDIA_MB, 
MEDIA_MC, MINIMO; 
FOLHA ← 0; 
PECAS_MES ← 0; 
HOMENS ← 0; 
MULHERES ← 0; 
HOMENS_A ← 0; 
HOMENS_B ← 0; 
HOMENS_C ← 0; 
MULHERES_A ← 0; 
MULHERES_B ← 0; 
MULHERES_C ← 0; 
PECAS_HA ← 0; 
PECAS_HB ← 0; 
PECAS_HC ← 0; 
PECAS_MA ← 0; 
PECAS_MB ← 0; 
PECAS_MC ← 0; 
MAIOR ← 0; 
OPERARIO ← 1; 
imprima “ Informe o valor do salario minimo: “; 
leia MINIMO; 
enquanto ( OPERARIO == 0 ) 
{ 
SALARIO ← 0; 
imprima “ Informe o numero do operario: “; 
leia OPERARIO; 
se ( OPERARIO <> 0 ) 
{ 
imprima “ Informe o numero de pecas fabricadas: “; 
leia PRODUCAO; 
imprima “ Informe o sexo do operario: “; 
leia SEXO; 
se ( PRODUCAO <= 30 ) 
{ 
SALARIO ← MINIMO; 
} 
senao 
{ 
se ( PRODUCAO >= 31 && PRODUCAO <= 35 ) 
{ 
SALARIO ← MINIMO + ( PRODUCAO - 30 ) * 3 / 100; 
} 
senao 
{ 
SALARIO ← MINIMO + ( PRODUCAO - 30 ) * 5 / 100; 
} 
} 
FOLHA ← FOLHA + SALARIO; 
PECAS_MES ← PECAS_MES + PRODUCAO; 
se ( SALARIO > MAIOR ) 
{ 
MAIOR ← SALARIO; 
ID_MAIOR ← OPERARIO; 
} 
se ( SEXO == 'M' | SEXO == 'm' ) 
{ 
escolha 
{ 
caso 1: ( PRODUCAO <= 30 ) 
{ 
PECAS_HA ← PECAS_HA + PRODUCAO; 
HOMENS_A ← HOMENS_A + 1; 
} 
caso 2 ( PRODUCAO >= 31 & PRODUCAO <= 35 ) 
{ 
PECAS_HB ← PECAS_HB + PRODUCAO; 
HOMENS_B ← HOMENS_B + 1; 
} 
caso 3 ( PRODUCAO > 35 ) 
{ 
PECAS_HC ← PECAS_HC + PRODUCAO; 
HOMENS_C ← HOMENS_C + 1; 
} 
} 
} 
senao 
{ 
escolha 
{ 
caso 1 ( PRODUCAO <= 30 ) 
{ 
PECAS_MA ← PECAS_MA + PRODUCAO; 
MULHERES_A ← MULHERES_A + 1; 
} 
caso 2 ( PRODUCAO >= 31 & PRODUCAO <= 35 ) 
{ 
PECAS_MB ← PECAS_MB + PRODUCAO; 
MULHERES_B ← MULHERES_B + 1; 
} 
caso 3 ( PRODUCAO > 35 ) 
{ 
PECAS_MC ← PECAS_MC + PRODUCAO; 
MULHERES_C ← MULHERES_C + 1; 
} 
} 
} 
imprima “ O operario “, OPERARIO, “ recebera “, SALARIO; 
} 
} 
MEDIA_HA ← PECAS_HA / HOMENS_A; 
MEDIA_HB ← PECAS_HB / HOMENS_B; 
MEDIA_HC ← PECAS_HC / HOMENS_C; 
MEDIA_MA ← PECAS_MA / MULHERES_A; 
MEDIA_MB ← PECAS_MB / MULHERES_B; 
MEDIA_MC ← PECAS_MC / MULHERES_C; 
imprima “ Total da folha de pagamento: “, FOLHA ; 
imprima “ Producao do mes: “, PECAS_MES ; 
imprima “ Media de producao dos homens da classe A: “, MEDIA_HA; 
imprima “ Media de producao dos homens da classe B: “, MEDIA_HB; 
imprima “ Media de producao dos homens da classe C: “, MEDIA_HC; 
imprima “ Media de producao das mulheres da classe A: “, MEDIA_MA; 
imprima “ Media de producao das mulheres da classe B: “, MEDIA_MB; 
imprima “ Media de producao das mulheres da classe C: “, MEDIA_MC; 
imprima “ Operario de maior salario: “, ID_MAIOR; 
} 
fim prog 
51) 
prog 51 
int DIA1, MES1, ANO1, DIA2, MES2, DIFE, BISSEXTO, AUX; 
imprima “ (data 1) informe o dia: “; 
leia dia1; 
imprima “ informe o mes : “; 
leia mes1; 
imprima “ informe o ano : “; 
leia ano1; 
imprima “ (data 2) informe o dia : “; 
leia dia2; 
informe “ informe o mes : “; 
leia mes2; 
informe “ informe o ano : “; 
leia ano2; 
DIFE ← 0; 
AUX ← ANO1; 
enquanto ( AUX == ANO2 ) 
{ 
BISSEXTO ← Resto ( AUX, 4 ); 
se ( BISSEXTO == 0 ) 
{ 
DIFE ← DIFE + 366; 
} 
senao 
{ 
DIFE ← DIFE + 365; 
} 
AUX ← AUX + 1; 
} 
imprima “ A diferenca em dias entre “, DIA1, “ / “, MES1, “ / “, ANO1, “ e “, DIA2, “ / “, MES2, “ / 
“, ANO2, “ ‚ “, DIFE; 
} 
fimprog

Continue navegando