• Nenhum resultado encontrado

Lógica de Programação e Algoritmos Exercícios Resolvidos Prof. André Y Kusumoto

N/A
N/A
Protected

Academic year: 2021

Share "Lógica de Programação e Algoritmos Exercícios Resolvidos Prof. André Y Kusumoto"

Copied!
7
0
0

Texto

(1)

Lógica de Programação e Algoritmos

Exercícios Resolvidos

Prof. André Y Kusumoto

1) Escreva um algoritmo que, a partir de um mes fornecido (numero inteiro de 1 a 12), apresente o nome dele por extenso.

declare

mes: numerico; inicio

Ler(mes); Escolha (mes)

caso 1: Escrever ("Janeiro"); caso 2: Escrever ("Fevereiro"); caso 3: Escrever ("Março"); caso 4: Escrever ("Abril"); caso 5: Escrever ("Maio"); caso 6: Escrever ("Junho"); caso 7: Escrever ("Julho"); caso 8: Escrever ("Agosto"); caso 9: Escrever ("Setembro"); caso 10: Escrever ("Outubro"); caso 11: Escrever ("NOvembro"); caso 12: Escrever ("Dezembro"); senao: Escrever("Mes invalido"); fim-escolha;

Fim

2) Escreva um algoritmo que leia traz valores inteiros diferentes e mostre-os em ordem decrescente.

declare

a,b,c: numerico; inicio

ler(a,b,c);

se (a>b) e (a>c) então se (b>c) então escrever(a,b,c); senão escrever(a,c,b); fim-se; senão se (b>c) então se (a>c) então escrever(b,a,c); senão escrever(b,c,a); fim-se; senão se (a>b) então escrever(c,a,b); senão escrever(c,b,a); fim-se; fim-se; fim-se; fim

(2)

3) Construa um algoritmo que leia 500 valores inteiros e positivos e: a) Encontre o maior valor

b) Encontre o menor valor

c) Calcule a média dos números lidos

Solução 1

declare

n, aux, maior, menor, soma: numerico; inicio

maior <- 0; soma <- 0; para aux <- 1 até 500 faça

ler(n); se (n > maior) então maior <- n; fim-se; se (aux > 1) então se (n < menor) então menor <- n; fim-se; senão menor <- n; fim-se; soma <- soma + n; fim-para;

escrever(maior, menor, soma/500); fim

Solução 2

declare

n, aux, maior, menor, soma: numerico; inicio

ler(n);

maior <- n; menor <- n; soma <- n; para aux <- 2 até 500 faça

ler(n); se (n > maior) então maior <- n; fim-se; se (n < menor) então menor <- n; fim-se; soma <- soma + n; fim-para;

escrever(maior, menor, soma/500); Fim

(3)

4) faça um algoritmo e o seu diagrama de blocos que calcule a média de salários de uma empresa, pedindo ao usuário o registro dos funcionários e os salários e

devolvendo a média, o salário mais alto e o salário mais baixo. Use registro = 0 (zero) para encerrar a leitura.

Declare

id, salario, cont, soma_sal, maior_sal, menor_sal: numerico; Inicio

soma_sal <- 0; maior_sal <- 0; cont <- 0; ler(id);

enquanto (id <> 0) faça ler(salario);

soma_sal <- soma_sal + salario; se (salario > maior_sal) então maior_sal <- salario;

fim-se;

se (cont <> 0) então

se (salario < menor_salario) então menor_salario <- salario; fim-se; senão menor_salario <- salario; fim-se; cont <- cont + 1; ler(id); fim-enquanto;

escrever(maior_sal, menor_sal, soma_sal/cont); Fim

5) Foi realizada uma pesquisa de algumas características físicas da população de uma certa região, a qual coletaram os seguintes dados referentes a cada habitante para serem analisados:

- sexo (M e F)

- cor dos olhos (azuis, verdes ou castanhos) - cor dos cabelos (louros, castanhos, pretos) - idade

Faça um algoritmo que determine e escreva: a) a maior idade dos habitantes;

b) a quantidade de indivíduos do sexo feminino cuja idade estão entre 18 e 35 anos, inclusive;

c) a quantidade de indivíduos que tenham olhos verdes e cabelos louros;

O final do conjunto de habitantes é reconhecido pelo valor "N" informado como resposta a uma pergunta "Deseja Continuar (s/n)?"

Declare

sexo, olhos, cabelos, resp: caracter;

idade, maior, qtdFIdade, qtdOvCl: numerico; Inicio

maior <- 0; qtdFIdade <- 0; qtdOvCl <- 0; repita

ler(sexo, olhos, cabelos); ler(idade);

se (idade > maior) então maior <- maior + idade; fim-se;

se ((sexo = "F") e (idade >= 18 e idade <= 35)) então qtdFIdade <- qtdFIdade + 1;

(4)

fim-se;

se (olhos = "V" e cabelos = "L") então qtdOvCl <- qtdOvCl + 1;

fim-se;

escrever("Deseja Continuar (S/N)?"); ler(resp);

até que (resp = "N");

escrever(maior, qtdFIdade, qtdOvCl); Fim

6) faça um algoritmo para ler 10 valores que devem ser armazenados em um vetor, calcular e mostrar a soma e a média desses valores.

declare

val : vetor[10] de numerico; soma, aux: numerico;

inicio

para aux <- 1 até 10 faça ler(val[aux]);

fim-para;

soma <- 0;

para aux <- 1 até 10 faça soma <- soma + val[aux]; fim-para;

escrever (soma, soma/10); fim

(5)

7) Monte um algoritmo que leia as vendas de cada vendedor durante uma semana, armazenando-as em uma matriz 3x5. Ao final informe:

a) Faturamento diário da empresa; b) faturamento semanal da empresa; c) faturamento semanal por vendedor

d) Informar qual o vendedor de maior faturamento semanal.

declare

vendas : matriz [3,5] de numerico;

lin, col, fatDia, FatSemEmp, FatSemVend, MaiorFat: numerico; vendedoras : vetor [3] de caracter;

diasemana : vetor [5] de caracter; inicio vendedoras[1] <- "Sandra"; vendedoras[2] <- "Vera"; vendedoras[3] <- "Maria"; diasemana[1] <- "Segunda-feira"; diasemana[2] <- "Terça-feira"; diasemana[3] <- "Quarta-feira"; diasemana[4] <- "Quinta-feira"; diasemana[5] <- "Sexta-feira";

para lin <- 1 até 3 faça

para col <- 1 até 5 faça ler(vendas[lin,col]); fim-para;

fim-para;

{ Letra a - Faturamento diario da empresa } para col <- 1 até 5 faça

fatDia <- 0;

para lin <- 1 até 3 faça

fatDia <- FatDia + vendas[lin,col]; fim-para;

escrever("O faturamento da ",diasemana[col]," foi ", fatDia); fim-para;

{ Letra b - Faturamento semanal da empresa } fatSemEmp <- 0;

para lin <- 1 até 3 faça

para col <- 1 até 5 faça

fatSemEmp <- fatSemEmp + vendas[lin,col]; fim-para;

fim-para;

escrever("O faturamento semanal da empresa foi ", fatSemEmp);

{ Letra c e d - vendedor com maior faturamento semanal } MaiorFat <- 0;

para lin <- 1 até 3 faça fatSemVend <- 0;

para col <- 1 até 5 faça

fatSemVend <- fatSemVend + vendas[lin,col]; fim-para;

se (fatSemVend > MaiorFat) então MaiorFat <- fatSemVend; indice <- lin;

fim-se;

escrever("O faturamento da ", vendedoras[lin]," na semana foi ", fatSemVend);

fim-para;

escrever("A vendedora de maior faturamento semanal foi: ", vendedoras[indice]);

(6)

8) Escreva um algoritmo que lê uma matriz 5x5, calcule e mostre as somas: a) da linha 4;

b) da coluna 2;

c) da diagonal principal; d) da diagonal secundária;

e) de todos os elementos da matriz;

declare

mat : matriz [5,5] de numerico;

lin, col, som_l4, som_c2, som_dp, som_ds, soma, x, aux: numerico; inicio

para lin <- 1 até 5 faça

para col <- 1 até 5 faça ler(mat[lin,col]); fim-para;

fim-para;

{ letra a - soma da linha 4 } som_l4 <- 0;

para col <- 1 até 5 faça

som_l4 <- som_l4 + mat[4,col]; fim-para;

escrever (som_l4);

{ letra b - soma da coluna 2 } som_c2 <- 0;

para lin <- 1 até 5 faça

som_c2 <- som_c2 + mat[lin,2]; fim-para;

escrever (som_c2);

{ letra c - diagonal principal solução C1 } som_dp <- 0;

para lin <- 1 até 5 faça

para col <- 1 até 5 faça se (lin=col) então

som_dp <- som_dp + mat[lin,col]; fim-se; fim-para; fim-para; escrever (som_dp); { solução C2 } som_dp <- 0;

para x <- 1 até 5 faça

som_dp <- som_dp + mat[x,x]; fim-para;

escrever (som_dp);

{ letra d - diagonal secundária } som_ds <- 0;

aux <- 5;

para lin <- 1 até 5 faça

som_ds <- som_ds + mat[lin,aux]; aux <- aux - 1;

fim-para;

escrever (som_ds);

{ letra e - todos os elementos } soma <- 0;

para lin <- 1 até 5 faça

para col <- 1 até 5 faça

soma <- soma + mat[lin,col]; fim-para;

(7)

fim-para;

escrever (soma);

Referências

Documentos relacionados

Quando nosso estomago se encontra vazio, é produzido um hormônio chamado grelina, esse hormônio por sua vez manda sinais para o hipotálamo, estrutura cerebral

[r]

A unidade pedagógica proposta se integra ao lugar, permitindo ventilação cruzada permanente, bem como de ventilação forçada para os períodos mais críticos do dia e do ano,

Realizou-se estudo do tipo ecológico com o objetivo de investigar o perfil sociodemográfico e epidemiológico, a frequência de casos, os indicadores epidemiológicos

A combinação dessas dimensões resulta em quatro classes de abordagem comunicativa, que podem ser exemplificadas da seguinte forma: interativo/dialógico: professor e

O pescado é um importante constituinte da dieta humana, entretanto, a presença de parasitos pode constituir um risco à saúde pública, além de impor prejuízos econômico

3 - Balizada pela bilateralidade que o próprio conceito de taxa implica, a criação da presente Ecotaxa pretende assegurar a manutenção da prestação dos serviços e bens

Para orientações mais detalhas consultar o documento Redação e Encadernação da Faculdade de Tecnologia de Guaratinguetá (2016). A metodologia, que deverá conter todos