Vous êtes sur la page 1sur 67

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.

br Problema: Mostrar o nome de 3 pessoas

Algoritmo mostra_nome Inicio Mostre O nome da pessoa Neri; Mostre O nome da pessoa Lisi; Mostre O nome da pessoa Giulia; Ou Mostre Os nomes so:Neri, Lisi e Giulia; Fim.

Teste de Mesa
O nome da pessoa Neri O nome da pessoa Lisi O nome da pessoa Giulia

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Calcular a media de 2 notas e mostrar essa mdia

Algoritmo media; var nota1, nota2, calc_media de Real; Inicio nota1 5; //nota1 recebe o valor de 5 nota2 7; calc_media (nota1 + nota2) / 2; Mostrar A mdia +calc_media; Fim. Teste de Mesa: nota1 = 5 nota2 = 7 media = (5 + 7) / 2 = 6 A Mdia 6

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br

INICIO

Nota1, Nota2

Media (nota1+nota2)/2

Media

Fim

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler duas notas, calcular a media e mostrar essa mdia Algoritmo media; var nota1, nota2, calc_media de Real; Inicio Mostrar Digite a primeira nota; Ler(nota1); //nota1 recebe o valor de 5 Mostrar Digite a segunda nota; Ler(nota2); calc_media (nota1 + nota2) / 2; Mostrar A mdia +calc_media; Mostrar .......Final do Sistema ....; Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br
Tipos de Dados. Problema:

Ler o nome de uma pessoa, a sua idade e o seu salrio, e mostrar essas informaes; Algoritmo tipos_dados; var idade de Inteiro; salario de Real; nome de caracter; Inicio Mostrar Digite o nome; Ler(nome); Mostrar digite a idade; Ler(idade); Mostrar digite o salrio; Ler(salrio); mostrar O nome +nome; mostrar A idade +idade mostrar O salrio +salrio; Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: (Operadores Matemticos) Ler 2 nmeros, efetuar as 4 operaes matemticas e mostrar os resultados.
Algoritmo operaes; var num1, num2, soma, multiplicacao, divisao, subtracao de real; Inicio Algoritmo operaes; num1 10; var num1, num2, soma, multiplicacao, divisao, subtracao de real; num2 5; Inicio soma num1 + num2; Mostrar Digite o numero 1.:; multiplicacao num1 * num2; Ler(num1) divisao num / num2; Mostrar Digite o numero 2.:; Ler(num2); subtracao num1 num2; mostrar A multiplicacao = +multiplicacao; soma num1 + num2; mostrar A divisao = +divisao; multiplicacao num1 * num2; mostrar A Subtracao = +subtracao; divisao num / num2; mostrar A soma =+soma; subtracao num1 num2; Fim. mostrar A multiplicacao = +multiplicacao; mostrar A divisao = +divisao; mostrar A Subtracao = +subtracao; mostrar A soma =+soma; Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Duas variveis (A e B) possuem valores distintos (A:=5 e B:= 10), Crie um
algoritmo que armazene esses dois valores nessas duas variveis, e efetue a troca dos valores de forma que a varivel A passe a possuir o valor da varivel B e que a varivel B passe a possuir o valor da varivel A. Por fim, apresentar os valores trocado;

Algoritmo operaes; Var A, B, Auxiliar de Inteiro; Inicio A 5; B 10; Auxiliar A; A B; B Auxiliar; Mostre B = +B; Mostre A = +A; Fim.

Teste de Mesa
A=10 B=5 Auxiliar=5 B=5 A = 10

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: O custo ao consumidor de um carro novo, a soma do custo de fbrica com
a percentagem do revendedor e com o custo dos impostos (aplicados ao custo de fbrica). Supondo que a percentagem do revendedor seja de 25% do custo de fbrica e que os impostos custam 45 % do custo de fbrica, faa um algoritmo que leia o valor de custo de fbrica e determine o preo final do automvel (custo ao consumidor).
Algoritmo automovel; Var custo_fabrica, perc_revendedor, impostos, preco_final de real; Inicio Mostrar Digite o valor do custo de fabrica deste automvel.: ; Ler(custo_fabrica); //custo_fabrica 40000; perc_revendedor (25 * custo_fabrica) / 100; impostos (45 * custo_fabrica) / 100; preco_final custo_fabrica + perc_revendedor + impostos; mostrar Custo de Fbrica ..........: +custo_fabrica; mostrar Percentual revendedor .: +perc_revendedor; mostrar impostos .........................: +impostos; mostrar O preo Final ..............: +preco_final; Fim.

Teste de Mesa
custo_fabrica = 20000 perc_revendedor = (25 * 20000) / 100 = 5000 impostos = (45 * 20000) / 100 = 9000 preco_final = 20000 + 5000 + 9000 = 34000

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: O sistema de avaliao de determinada disciplina, composto por trs
provas. A primeira prova tem peso 2, a Segunda tem peso 3 e a terceira prova tem peso 5. Faa um algoritmo para calcular a mdia final de um aluno desta disciplina.
Algoritmo avaliacao; Var prova1, prova2, prova3, media de numrico; //numrico = real Inicio Mostrar digite a nota1; Ler(prova1); Mostrar digite a nota2; Ler(prova2); Mostrar digite a nota3; Ler(prova3); Prova1 prova1 * 2 /10; Prova2 prova2 * 3 /10; Prova3 prova3 * 5 /10; Media (prova1 + prova2 + prova3); Mostrar A media final = +media; Fim.

Teste de Mesa
Prova1 = 6 --------- 6 * 2 / 10 = 1,2 Prova2 = 8 --------- 8 * 3 /10 = 2,4 Prova3 = 4 ---------- 4 * 5 / 10 = 2,0 Media = (1.2 + 2.4 + 2) / 3 = 5.6 A media final = 5.6

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br 1. Problema: Um cliente de um banco tem um saldo positivo de R$ 500,00. Fazer
um algoritmo que leia um cheque que entrou e calcule o saldo, mostrando (escrevendo) o saldo na tela.
Algoritmo saldo; Var valor_saldo, cheque_entrou de numrico; //numrico = real Inicio Valor_Saldo 500; Mostrar digite o valor do cheque que entrou; Ler(cheque_entrou); Saldo = 500 ---500-200=300 Valor_saldo valor_saldo cheque_entrou; Cheque_entrou=200 Mostrar O saldo atual = +valor_saldo; O saldo atual = 300 Fim.

Teste de Mesa

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br
Problema.:Uma Empresa de vendas de softwares paga a seu vendedor um fixo de R$ 800,00 por ms, mais uma comisso de 15% pelo seu valor de vendas no ms. Faa uma algoritmo que leia o valor da venda e determine o salrio total do funcionrio. Mostre as informaes que voc achar necessrio.
Algoritmo vendas; Var fixo, comissao, vendas_mes, salario_total de numrico; //numrico = real Inicio Fixo 800; Mostrar Digite o valor da venda no ms; Fixo = 800 Ler(vendas_mes); Comissao = (500 * 15) /100 = 75 Comisso (vendas_mes * 15) / 100; vendas_mes = 500 Salrio_total fixo + comissao; salario_total = 800 + 75 = 875 Mostrar O salrio fixo = +fixo; Mostrar o valor de comissao = +comissao; Mostrar o salrio total = +salario_total; Fim.

Teste de Mesa

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br
Problema.: Uma Empresa de desenvolvimento de softwares paga a seu vendedor um fixo de R$ 500,00 por ms, mais um bnus de R$ 50,00 por sistema vendido. Faa uma algoritmo que leia quantos softwares o funcionrio vendeu e determine o salrio total do funcionrio. Mostre as informaes que voc achar necessrio.

Algoritmo vendas2; Var fixo, bonus, qtd_softw_vend, salario_total de numrico; //numrico = real Inicio Fixo 500; Mostrar Digite quantidade software vendido; Fixo = 500 Ler(qtd_softw_vend); Bonus = 3 * 50 = 150 bonus qtd_softw_vend * 50; qtd_softw_vend = 3 Salrio_total fixo + bonus; salario_total = 500 + 150 = 650 Mostrar O salrio fixo = +fixo; Mostrar o valor de bonus = +bonus; O salrio fixo = 500 Mostrar o salrio total = +salario_total; O valor de bonus = 150 Fim. O salrio total = 650

Teste de Mesa

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br
Crie um algoritmo para calcular o salrio lquido de um funcionrio, considerando que seu salrio bruto, incide um desconto de 9% em inss para a previdncia. O algoritmo deve mostrar o nome do funcionrio, o seu salrio bruto, o valor de desconto de inss e o seu salrio lquido.(dica.: Voc dever pedir (ler) o nome do funcionrio e o valor do salrio bruto)
Algoritmo salario; Var salario_liquido, salario_bruto, inss de numrico; //(Real) Nome de Caracter; Inicio Mostrar Digite o nome do funcionrio; PASSO A PASSO Ler(nome); Mostrar Digite o valor do salario bruto; Salario_liquido = 2000 180 = 1820 Ler(salario_bruto); Salario_bruto = 2000 Inss (salario_bruto * 9) / 100; Inss = (2000 * 9) /100 = 180 Salario_liquido salario_bruto inss; Nome = Neri Mostrar O salario bruto = +salario_bruto; O salario bruto = 2000 Mostrar O desconto de inss = +inss; O desconto de inss = 180 Mostrar O salario liquido = +salario_liquido; O salario liquido = 1820 Fim.

Teste de Mesa

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br
Problema: Considerando que para um consrcio, sabe-se o nmero total de prestaes, a quantidade de prestaes pagas e o valor atual da prestao, escreva um algoritmo que determine o total pago pelo consorciado e o saldo devedor.
Algoritmo consorcio; Var valor_prest, total_pago, saldo_devedor de Real; total_prest, qtd_prest_pagas de Inteiro; Inicio mostre Digite o total das prestacoes.: ; ler(Total_prest); mostre digite a quantidade de prestacoes pagas; ler(qtd_prest_pagas); mostre digite o valor de cada prestacao; ler(valor_prest); total_pago qtd_prest_pagas * valor_prest; saldo_devedor valor_prest * (total_prest - qtd_prest_pagas); mostre O total pago = +total_pago; mostre O saldo devedor =+saldo_devedor; Fim.

Teste de Mesa
total_prest = 20 qtd_prest_pagas = 5 valor_prest = 200 total_pago= 5 * 200 = 1000 saldo_devedor=200*(20-5)=3000 O total pago = 1000 O saldo devedor = 3000

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br
Problema: Analisando a frmula " Prestao = valor + (valor * (taxa/100) * tempo)", crie um
algoritmo para efetuar o clculo do valor de uma prestao em atraso. (Voc dever ler o VALOR da prestao, a TAXA de juros imposta pelo banco, e o nmero de dias em ATRASO.
Algoritmo prestacao; Var prestacao, valor_prest, taxa de Real; Dias_atraso de Inteiro; Inicio Mostre Digite o valor da prestacao; Ler(valor_prest); Mostre digite a taxa de juros; Ler(taxa); Mostre digite o numero de dias em atraso; Ler(dias_atraso);

Teste de Mesa
Prestacao=200+(200*(2/100)*10=240 valor_prest = 200 taxa=2 Dias_atraso=10 O valor corrigido da prestacao = 240

prestacao valor_prest + (valor_prest * (taxa/100)*dias_atraso); Mostre O valor corrigido da prestacao = +prestacao;


Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie 2 variveis (A e B) e leia 1 valor para cada um deles. Disponibilize eles
de forma crescente.

Algoritmo crescenteAB; Var a,b de inteiro; Inicio Mostre digite o valor para A Ler(a) Mostre digite o valor para B Ler(b) Se A > B entao Mostre Em ordem crescente + B + +A Senao Mostre Em ordem crescente + A + +B Fim.

Teste de Mesa
A=2 B =7 Em ordem crescente 2 - 7

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie 2 variveis (A e B) e leia 1 valor para cada um deles. Disponibilize eles
de forma crescente.
INICIO

A, B

A>B

Em ordem crescente + A + +B

Em ordem crescente + B + +A

Fim

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: O sistema de avaliao de determinada disciplina, composto por trs
provas. A primeira prova tem peso 2, a Segunda tem peso 3 e a terceira prova tem peso 5. Faa um algoritmo para calcular a mdia final de um aluno desta disciplina. Caso a media seja maior ou igual a 6 mostre APROVADO, se a media for entre 4 e 6, mostre em RECUPERAO, e se for menor do que 4 mostre REPROVADO.
Algoritmo avaliacao; Var prova1, prova2, prova3, media de numrico; //numrico = real Inicio Mostrar digite a nota1; Ler(prova1); Mostrar digite a nota2; Ler(prova2); Prova1 = 6 --------- 6 * 2 / 10 = 1,2 Prova2 = 8 --------- 8 * 3digite a nota3; Mostrar /10 = 2,4 Prova3 = 4 ---------- 4 * 5 / 10 = 2,0 Media = (1.2Ler(prova3); + 2.4 + 2) / 3 = 5.6 Recuperacao com media 5.6 Prova1 prova1 * 2 /10; Prova2 prova2 * 3 /10; Prova3 prova3 * 5 /10; Media (prova1 + prova2 + prova3); Se media >= 6 entao Mostrar Aprovado com media +media; Se media >= 4 entao Mostrar recuperacao com media +media; Senao Mostrar Reprovado com media +media; Fim.

Teste de Mesa

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Fluxograma do exercco anterior.
INICIO

Prova1, prova2, prova3

Prova1 prova1 * 2 /10; Prova2 prova2 * 3 /10; Prova3 prova3 * 5 /10; Media (prova1 + prova2 + prova3);

Media >=6

Aprovado com media +media; MEDIA >= 4 V

recuperacao com media +media;

Reprovado com media +media;

Fim

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Uma loja oferece para os seus clientes, um determinado desconto de acordo com o
valor da compra efetuada. O desconto de 10%, se o valor da compra for at R$200.00, 15% se for maior que R$ 200 e menor ou igual a R$ 500,00 e 20% se for acima de R$ 500,00. Crie um algoritmo que leia o nome do cliente e o valor da compra. Mostre ao final o nome do cliente, o valor da compra, o percentual de desconto e o seu valor e valor total a pagar deste cliente.
Algoritmo compra_desconto; Var valor_compra, valor_desconto, valor_pagar de real; Valor_compra = 300 Desconto de inteiro; Valor_desconto = (300 * 15) / 100 = 45 Nome de caracter; Valor_pagar = 300 45 = 255 Inicio Desconto = 15 Mostrar digite o nome do cliente; Ler(nome); Nome = Neri Neitzke Mostrar digite o valor da compra; Nome do Cliente .: Neri Neitzke Ler(valor_compra); Valor da Compra .: 300 Se valor_compra <= 200 entao O percentual desc .: 15 Desconto 10; Valor do desconto .: 45 Senao se valor_compra <= 500 entao Valor a pagar .: 255 Desconto 15; Senao Desconto 20; Faa Valor_desconto (valor_compra * desconto) / 100; Faa valor_pagar valor_compra valor_desconto; Mostre Nome do Cliente .: +nome; Mostre Valor da Compra .: +valor_compra; Mostre O percentual de desc: +desconto; Mostre Valor do desconto .: +valor_desconto; Mostre Valor a pagar .: + valor_pagar; Fim.

Teste de Mesa

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Fluxograma do exercco anterior.
INICIO

Nome, valor_compra

F
Valor_compra <= 200

Valor_compra <= 500

V Desconto 10

F Desconto 15

Desconto 20

Valor_desconto (valor_compra * desconto) / 100; valor_pagar valor_compra desconto;

Mostre Nome do Cliente .: +nome; Mostre Valor da Compra .: +valor_compra; Mostre O percentual de desc: +desconto; Mostre Valor do desconto .: +valor_desconto; Mostre Valor a pagar .: + valor_pagar;

Fim

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Uma loja oferece para os seus clientes, um determinado desconto de acordo com o
valor da compra efetuada. O desconto de 10%, se o valor da compra for at R$200.00, 15% se for maior que R$ 200 e menor ou igual a R$ 500,00 e 20% se for acima de R$ 500,00. Crie um algoritmo que leia o nome do cliente e o valor da compra. Mostre ao final o nome do cliente, o valor da compra, o valor do desconto e valor total a pagar deste cliente.
Algoritmo compra_desconto1; Var valor_compra, valor_desconto, valor_pagar de real; Nome de caracter; Inicio Mostrar digite o nome do cliente; Ler(nome); Mostrar digite o valor da compra; Ler(valor_compra); Se valor_compra <= 200 entao Valor_desconto (valor_compra * 10) / 100; Senao se valor_compra <= 500 entao Valor_desconto (valor_compra * 15) / 100; Senao Valor_desconto (valor_compra * 20) / 100; Faa valor_pagar valor_compra valor_desconto; Mostre Nome do Cliente .: +nome; Mostre Valor da Compra .: +valor_compra; Mostre Valor do desconto .: +valor_desconto; Mostre Valor a pagar .: + valor_pagar; Fim.

Teste de Mesa
Valor_compra = 300 Valor_desconto = (300 * 15) / 100 = 45 Valor_pagar = 300 45 = 255 Nome = Neri Neitzke Nome do Cliente .: Neri Neitzke Valor da Compra .: 300 Valor do desconto .: 45 Valor a pagar .: 255

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Fluxograma do exercco anterior.
INICIO

Nome, valor_compra

F
Valor_compra <= 200

Valor_compra <= 500

Valor_desconto (valor_compra * 10) / 100;

F Valor_desconto (valor_compra * 15) / 100;

Valor_desconto (valor_compra * 20) / 100;

valor_pagar valor_compra desconto;

Mostre Nome do Cliente .: +nome; Mostre Valor da Compra .: +valor_compra; Mostre Valor do desconto .: +valor_desconto; Mostre Valor a pagar .: + valor_pagar;

Fim

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Fazer um algoritmo que leia o saldo inicial de cliente do banco e leia
tambm um cheque que entrou e ANALISE se o cheque poder ser descontado ou no , j que este cliente no possui limite. Se o cheque no poder ser descontado, mostre essa informao, caso contrrio, desconte o cheque e informe o saldo na tela.
Algoritmo saldo_se; Var valor_saldo, cheque_entrou de numrico; //numrico = real Inicio Mostre Digite o saldo inicial .: ; Ler(valor_saldo); //Valor_Saldo 500; Mostrar digite o valor do cheque que entrou; Ler(cheque_entrou); Se cheque_entrou <= valor_saldo entao Valor_saldo valor_saldo cheque_entrou; valor_saldo = Mostrar seu novo saldo .: +valor_saldo; cheque_entrou = Senao Mostrar este cheque no pode ser descontado; Mostrar seu saldo continua +valor_saldo; Fim_se Fim.

Teste de Mesa

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Fluxograma do exercco anterior.
INICIO

valor_saldo, cheque_entrou

cheque_entrou <= valor_saldo

Valor_saldo valor_saldo cheque_entrou

este cheque no pode ser descontado; seu saldo continua +valor_saldo; seu novo saldo .: +valor_saldo;

Fim

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Fazer um algoritmo que analize 3 valores inteiros (atravs das variveis n1, n2 e n3), e informa qual o maior e qual o menor deles.
Algoritmo maior_menor; Var n1, n2, n3 de inteiro; Inicio Mostre digite o valor para n1; Ler(n1); Mostre digite o valor para n2; Ler(n2); Mostre digite o valor para n3; Ler(n3); Se (n1 >= n2) e (n1 >= n3) entao Mostre o maior o .: +n1; Senao Se (n2 >= n1) e (n2 >= n3) entao Mostre o maior o .: +n2; Senao Mostre o maior o .: +n3;

Teste de Mesa

N1 = 10 N2 = 10 N3 = 20

O MAIOR O(n1 <= n3) entao Se (n1 <= n2) e 20 Mostre o O 10 .: O MENOR menor eo(n2 +n1; entao Senao Se (n2 <= n1) <= n3)
Mostre o menor o .: +n2; Senao Mostre o menor o .: +n3; Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Fazer um algoritmo que analize 3 valores inteiros (atravs das variveis n1, n2 e n3), e informa qual o maior e qual o menor deles.
Algoritmo maior_menor; Var n1, n2, n3 de inteiro; Inicio Mostre digite o valor para n1; Ler(n1); Mostre digite o valor para n2; Ler(n2); Mostre digite o valor para n3; Ler(n3); Se (n1 >= n2) e (n1 >= n3) entao inicio Mostre o maior o .: +n1; Se (n2 <= n3) entao Mostre o menor o .: +n2; Senao Mostre o menor o .: +n3; Fim_se Senao Se (n2 >= n1) e (n2 >= n3) entao inicio Mostre o maior o .: +n2; Se (n1 <= n3) entao Mostre o menor o .: +n1; Senao Mostre o menor o .: +n3; Fim_se Senao inicio Mostre o maior o .: +n3; Se (n2 <= n1) entao Mostre o menor o .: +n2; Senao Mostre o menor o .: +n1; Fim_se Fim

Teste de Mesa

N1 = 15 N2 = 10 N3 = 20

O MAIOR O 20 O MENOR O 10

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Fluxograma do exercco anterior.
INICIO

n1, n2, n3

(n1 >= n2) e (n1 >= n3)

o maior o .: +n2; o maior o .: +n1;

(n2 >= n1) e (n2 >= n3

n1 <= n3 V F

o menor o .: +n1;

n2 <= n3

o maior o .: +n3;

o menor o .: +n2;

o menor o .: +n3;

o menor o .: +n3;

o menor o .: +n1;

n2 <= n1

Fim

V o menor o .: +n2;

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie um algoritmo que leia trs valores le,ld,li e verifique se eles podem

ser os comprimentos dos lados de um tringulo, e se forem, verificar se um tringulo equiltero, issceles ou escaleno. Se eles no formarem um tringulo, escrever a mensagem "No um tringulo". Antes da elaborao do algoritmo, torna-se necessria a reviso de algumas propriedades e definies. Propriedade - O comprimento de cada lado de um tringulo menor do que a soma dos comprimentos dos outros dois lados, fora desta condio as medidas no so consideradas de um tringulo. Definio 1 - Chama-se tringulo equiltero os que tem os comprimentos dos trs lados iguais, Definio 2 - Chama-se tringulo issceles ao tringulo que tem os comprimentos de dois lados guais. Definio 3 - Chama-se tringulo escaleno ao tringulo que tem os comprimentos dos trs lados diferentes. Algoritmo triangulo; Var le, ld, li de real; Inicio Mostre digite o comprimento de LE.: Ler(le); Mostre digite o comprimento de LD.: Ler(ld); Mostre digite o comprimento de LI.: Ler(li); Se (li < (le + ld)) e (le < (ld + li)) e (ld < (li + le)) entao Se (le = ld) e (le = li) entao Mostrar triangulo equilatero; Senao se ((li = ld) ou (li = le) ou (le = ld)) then Mostrar triangulo isosceles; Senao // se ((ld <> le) e (ld <> li) e (li <> le)) entao Mostrar triangulo escaleno; Senao Mostre no um triangulo;

Teste de Mesa
Le = 20 Ld = 15 Li = 15 20 15

Triangulo isosceles

15

Fim

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Fluxograma do exercco anterior.
INICIO

le, ld, li

((li < (le + ld) e (le < (ld + li) e (ld < (li + le))

triangulo equiltero no um triangulo;

(le = ld) e (le = li)

F tringulo escaleno

((li = ld) ou (li = le) ou (le = ld))

V triangulo isosceles;

Fim

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler 3 valores INTEIROS para as variveis A, B, C. Apresentar os valores dispostos em ordem crescente.
Algoritmo abc_crescente; Var a, b, c de inteiro; Inicio Mostre digite o valor para A.:; Ler(a); Mostre digite o valor para B.:; Ler(b); Mostre digite o valor para C.:; Ler(c); Se (A <=B) e (A <= C) entao Se (B <= C) entao Mostre Em ordem crescente ficou.: +A+-+B+-+C; Senao Mostre Em ordem crescente ficou.: +A+-+C+-+B; fim_se fim_se Senao Se (B <=A) e (B <= C) entao Se (A<= C) entao Mostre Em ordem crescente ficou.: +B+-+A+-+C; Senao Mostre Em ordem crescente ficou.: +B+-+C+-+A; fim_se fim_se senao Se (A <= B) entao Mostre Em ordem crescente ficou.: +C+-+A+-+B; Senao Mostre Em ordem crescente ficou.: +C+-+B+-+A; fim_se fim_se

Teste de Mesa A=9 B=6 C=7 Ordem 6 7 9

Fim

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Fluxograma do exercco anterior.
INICIO

A, b, c

(A <=B) e (A <= C)

Em ordem crescente ficou.: V +C+-+A+-+B

A <= B

(B <=A) e (B <= C)

B <= C V Em ordem crescente ficou.: +A+-+B+-+C

Em ordem crescente ficou.: +C+-+B+-+A

Em ordem crescente ficou.: +A+-+C+-+B

Em ordem crescente ficou.: F +B+-+C+-+A

A<= C

Fim

V Em ordem crescente ficou.: +B+-+A+-+C

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler para uma varivel INTEIRA um nmero de 1 a 12 e mostrar o nome do ms correspondente. Caso o ms no existir, mostrar essa informao.
Algoritmo mes_se; Var mes de inteiro; Inicio Mostrar digite o ms de 1 a 11 ; Ler(ms); Se (mes = 1) ento Mostrar Janeiro; Senao Se (mes = 2) ento Mostrar Fevereiro; Senao Se (mes = 3) ento Mostrar Marco; Senao Se (mes = 4) ento Mostrar Abril; Senao Se (mes = 5) ento Mostrar Maio; Senao Se (mes = 6) ento Mostrar Junho; Senao Se (mes = 7) ento Mostrar Julho; Senao Se (mes = 8) ento Mostrar Agosto; Senao Se (mes = 9) ento Mostrar Setembro; Senao Se (mes = 10) ento Mostrar Outubro; Senao Se (mes = 11) ento Mostrar Novembro; Senao Se (mes = 12) ento Mostrar Dezembro; Senao Esse ms no existe; Fim

Teste de Mesa Ms = 2 Fevereiro

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler para uma varivel INTEIRA um nmero de 1 a 12 e mostrar o nome do ms correspondente. Caso o ms no existir, mostrar essa informao.
Algoritmo mes_case; Var mes de inteiro; Inicio Mostrar digite o ms de 1 a 11 ; Ler(ms); Caso ms seja 1: Mostrar Janeiro; 2: Mostrar Fevereiro; 3: Mostrar Marco; 4: Mostrar Abril; 5: Mostrar Maio; 6: Mostrar Junho; 7: Mostrar Julho; 8: Mostrar Agosto; 9: Mostrar Setembro; 10: Mostrar Outubro; 11: Mostrar Novembro; 12: Mostrar Dezembro; Senao modtrsr Esse ms no existe; Fim_caso Fim

Teste de Mesa Ms = 2 Fevereiro

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler uma varivel de numero inteiro e mostre se ele par ou se ele impar.
Algoritmo par_impar; Var numero de inteiro; Inicio Mostre digite um numero qualquer; Ler(numero); Se (numero mod 2 = 0) entao Mostre esse numero par; Senao Mostre esse numero no par; Fim

Teste de Mesa

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler uma varivel de numero inteiro e mostrar a tabuada desse nmero.
Algoritmo tabuada; Var numero de inteiro; Inicio Mostre digite um nmero para a tabuada; Ler(numero); Mostre numero + x 1 = +(numero * 1); Mostre numero + x 2 = +(numero * 2); Mostre numero + x 3 = +(numero * 3); Mostre numero + x 4 = +(numero * 4); Mostre numero + x 5 = +(numero * 5); Mostre numero + x 6 = +(numero * 6); Mostre numero + x 7 = +(numero * 7); Mostre numero + x 8 = +(numero * 8); Mostre numero + x 9 = +(numero * 9); Fim

Teste de Mesa 6x1=6 6 x 2 = 12 6 x 3 = 18 6 x 4 = 24 6 x 5 = 30 .....

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler uma varivel de numero inteiro e mostrar a tabuada desse nmero. Usando o lao de repetio Para
Algoritmo tabuada_para; Var numero, i de inteiro; Inicio Mostre digite um nmero para a tabuada; Ler(numero); Para i de 1 at 9 passo 1 faa Mostre numero + x + i + = +(numero * i); Fim //outras maneiras de fazer esse lao Para i 1 at 9 faa Para i = 1 at 9 faa Para i = 1 at 9 passo 1 faa

Teste de Mesa Numero = 4 I = 1,2,3,4,5,6,7,8,9,10 4x1=4 4x2=8 4 x 3 = 12 .... 4 x 9 = 36

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler uma varivel de numero inteiro e mostrar a tabuada desse nmero. Usando o lao de repetio enquanto
Algoritmo tabuada_enquanto; Var numero, i de inteiro; Inicio Mostre digite um nmero para a tabuada; Ler(numero); I 1; Enquanto(i <= 9) inicio Mostre numero + x + i + = +(numero * i); i++; // igual ao i=i+1 Fim_enquanto Fim

Teste de Mesa Numero = 7 I=1 7x1=7 7x1=7 7x1=7 7x1=7 7x1=7 7x1=7

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler uma varivel de numero inteiro e mostrar a tabuada desse nmero. Usando o lao de repetio repita
Algoritmo tabuada_repita; Var numero, i de inteiro; Inicio Mostre digite um nmero para a tabuada; Ler(numero); I 15; Repita Inicio Mostre numero + x + i + = +(numero * i); I++; //i=i+1 Fim At que (i > 9); // Enquanto(i <= 9) Fim

Teste de Mesa Numero = 9 I = 15 9 x 15 = 135

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Faa um algoritmo que gere a seguinte srie: 10, 20, 30, 40, ..... 980, 990, 1000.
Algoritmo serie_para; Var i de inteiro; Inicio Para i de 10 at 1000 passo 10 faa Mostrar i; Fim

Teste de Mesa I=10, 20 10, 20, 30, 40

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema:Ler a nota de 10 alunos, calcular a media e mostrar essa mdia. Algoritmo media_para; var nota, calc_media, soma_notas de Real; i de inteiro; Teste de Mesa Inicio
Soma_notas 0;
Para i de 1 at 10 faa inicio Mostrar Digite a +i+ de 10 notas; Ler(nota); Soma_notas soma_notas + nota; Fim_para calc_media soma_notas / 10; Mostrar A mdia +calc_media; Mostrar .......Final do Sistema ....;

Nota=7,8,6 Calc_media = 9 Soma_notas=90 I=10

Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema:Ler a nota de 10 alunos, calcular a media e mostrar essa mdia. Aceitar somente notas de 0 a 10. Algoritmo media_para; var nota, calc_media, soma_notas de Real; i de inteiro; Teste de Mesa Inicio
Soma_notas 0;
Para i de 1 at 10 faa inicio Mostrar Digite a +i+ de 10 notas; Ler(nota); Se ((nota >=0) e (nota <= 10)) entao Soma_notas soma_notas + nota; Senao Inicio Mostrar Nota Invalida, digite apenas notas de 0 a 10); i=i-1; fim_se Fim_para calc_media soma_notas / 10; Mostrar A mdia +calc_media; Mostrar .......Final do Sistema ....;

Nota=7,8,6 Calc_media = 9 Soma_notas=90 I=10

Fim.

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Mostre os 10 primeiros nmeros pares.
Algoritmo pares_10; Var numero, conta_pares de inteiro; Inicio Conta_pares 0; Numero 1; enquanto(conta_pares < 10) Inicio_enquanto Se (numero mod 2 = 0) entao Inicio_se Numero=1,2,3 Mostre Conta_pares=1 o numero +numero+ = par; Conta_pares conta_pares + 1; Fim_se Numero numero + 1; Fim_enquanto Fim

Teste de Mesa

O numero 2 .: par

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler dois nmeros (inicial e final). Escreva quantos nmero pares e quantos numeros impares encontran-se entre os dois nmeros fornecidos pelo usurio.

Algoritmo par_impar_conta; Var numero_inicial, numero_final, numeros_pares, numeros_impares,i de inteiro; Inicio Numeros_pares 0; Numeros_pares=0,1,2 Numeros_impares 0; Mostre Digite o nmero inicial.: ; Numeros_impares=0,1,2,3 Ler(numero_inicial); Numero_inicial=23 I numero_inicial; Numero_final=27 Mostre Digite o nmero final.: ; I = 23,24,25,26,27,28 Ler(numero_final); Enquanto(i <= numero_final) faa Inicio_enquanto Se (i mod 2 = 0) entao Numeros_pares Numeros_pares + 1; Senao Numeros_impares Numeros_impares + 1; i i + 1; Fim_enquanto Mostrar Entre o numero +numero_inicial+ e o numero +numero_final+ existem +numeros_pares+ pares e +numeros_impares+ impares; Fim

Teste de Mesa

Entre o numero 23 e o numero 27 existem 2 pares e 3 impares

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Ler dois nmeros (inicial e final, o numero final no pode ser menor do que o numero inicial). Escreva quantos nmero pares e quantos numeros impares encontranse entre os dois nmeros fornecidos pelo usurio.

Algoritmo par_impar_conta; Var numero_inicial, numero_final, numeros_pares, numeros_impares,i de inteiro; Numeros_pares=0,1,2 Inicio Numeros_impares=0,1,2,3 Numeros_pares 0; Numero_inicial=23 Numeros_impares 0; Numero_final=27 numero_final 0; I = 23,24,25,26,27,28 Mostre Digite o nmero inicial.: ; Ler(numero_inicial); I numero_inicial; Repita Inicio_repita Mostre Digite o nmero final maior que o inicial.: ; Ler(numero_final); Se (numero_final < numero_inicial) entao Mostrar Nmero final invlido, deve ser maior do que o inicial) Final_repita At que(numero_final >= numero_inicial); Enquanto(i <= numero_final) faa Inicio_enquanto Se (i mod 2 = 0) entao Numeros_pares Numeros_pares + 1; Senao Numeros_impares Numeros_impares + 1; i i + 1; Fim_enquanto Mostrar Entre o numero +numero_inicial+ e o numero +numero_final+ existem +numeros_pares+ pares e +numeros_impares+ impares; Fim

Teste de Mesa

Entre o numero 23 e o numero 27 existem 2 pares e 3 impares

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br

Problema: Crie um algoritmo que leia um numero inteiro, e diga se ele um numero primo ou no.
Algoritmo primo; Var numero,contador,i de inteiro; Inicio Contador 0; I 2; Mostrar Digite um nmero .: ; Ler(numero); Enquanto(i < (numero/2)) Inicio_enquanto Se (numero mod i = 0) Contador Contador +1; I I + 1; Fim_enquanto Se contador > 0 entao Mostrar O numero +numero+ no primo; Senao Mostrar O numero +numero+ primo; Fim

Teste de Mesa Contador = 0 I = 2, Numero = 5 O numero 5 primo

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie um algoritmo que leia um numero inteiro, e diga se ele um numero primo ou no.

Algoritmo primo_logico; Var numero,i de inteiro; Num_primo de logico; // verdadeiro ou falso -> boolean Inicio Num_primo verdadeiro; I 2; Mostrar Digite um nmero .: ; Ler(numero); Enquanto((i < (numero/2) e (num_primo = verdadeiro)) faa Inicio_enquanto Se (numero mod i = 0) Num_primo falso; I I + 1; Fim_enquanto Se Num_primo = falso entao Mostrar O numero +numero+ no primo; Senao Mostrar O numero +numero+ primo; Fim

Teste de Mesa

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie um algoritmo que mostre os 10 primeiros nmeros primos.
Algoritmo primo_10; Var contador, numero,i de inteiro; num_primo de logico; begin numero 1; contador 0; enquanto (contador < 10) faa inicio num_primo verdadeiro; numero numero + 1; I 2; enquanto((i <= (numero/2)) e (num_primo = verdadeiro)) faa inicio se (numero mod i = 0) entao inicio num_primo falso; fim I I + 1; Fim_segundo_enquanto; se num_primo = verdadeiro then inicio contador contador + 1; escreva(O numero +numero+ e o +contador+. numero primo'); fim fim_primeiro_enquanto; fim.

Teste de Mesa

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Mostrar os 10 primeiros numeros da sequencia Fibonacci. Ex: 1 1 2 3 5 8 13 21 34 55 89 .....
Algoritmo fibonacci; Var i, num_anterior, num_atual, novo_numero de inteiro; Inicio Num_anterior 0; Num_atual 1; Mostre o 1. numero fibonaccci 1; Para i de 2 at 10 faa Inicio Novo_numero num_atual + num_anterior; Num_anterior num_atual; Num_atual novo_numero; Mostre o +i+. numero fibonaccci +novo_numero; Fim; Fim

Teste de Mesa
Num_anterior=0,1,1,2,3,5 Num_atual=1,1,2,3,5,8 Novo_numero=1,2,3,5,8 I=2,3,4,5,6 O 1. numero fibonacci 1 O 2. numero fibonacci 1 O 3. numero fibonacci 2 O 4. numero fibonacci 3 O 5. numero fibonacci 5 O 6. numero fibonacci 8 ................

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br

Problema:Ler a nota de 5 alunos, calcular a media e mostrar essa mdia e mostrar tambm quantos alunos ficaram com a sua nota igual ou acima da mdia.
Algoritmo media_media; var nota1, nota2, nota3, nota4, nota5, calc_media, soma_notas de real; contador de inteiro;

inicio
contador 0;
mostrar digite a 1. nota.: ; ler(nota1); mostrar digite a 2. nota.: ; ler(nota2); mostrar digite a 3. nota.: ; ler(nota3); mostrar digite a 4. nota.: ; ler(nota4); mostrar digite a 5. nota.: ; ler(nota5);

Teste de Mesa
nota1=6 nota2=4 nota3 =9 nota4 =5 nota5 =7 soma_notas=31 calc_media= 31/5=6.2 contador = 0,1,2

soma_notas nota1 + nota2 + nota3 + nota4 + nota5;

calc_media soma_notas / 5; se (nota1 > calc_media) entao contador contador + 1; se (nota2 > calc_media) entao contador contador + 1; se (nota3 > calc_media) entao contador contador + 1; se (nota4 > calc_media) entao contador contador + 1; se (nota5 > calc_media) entao contador contador + 1; mostrar a mdia +calc_media; mostrar contador + alunos ficaram com a nota acima da media; mostrar .......final do sistema ....;

A media 6.2 2 alunos ficaram com a nota acima da media

Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema:Ler a nota de 5 alunos, calcular a media e mostrar essa mdia e mostrar tambm quantos alunos ficaram com a sua nota igual ou acima da mdia. (usando vetores)
Algoritmo media_media_vetor; var notas:vetor [1..5] de real; calc_media, soma_notas de real; contador de inteiro;

inicio
contador 0; //notas[1] 5; //notas[2] 9; //notas[3] 7; //notas[4] 3; //notas[5] 6; mostrar digite a 1. nota.: ; ler(notas[1]); mostrar digite a 2. nota.: ; ler(notas[2]); mostrar digite a 3. nota.: ; ler(notas[3]); mostrar digite a 4. nota.: ; ler(notas[4]); mostrar digite a 5. nota.: ; ler(notas[5]);
soma_notas notas[1]+notas[2]+notas[3]+notas[4]+ notas[5];

Teste de Mesa Notas (no pascal) Posio 1 2 3 valor 5 9 7 Calc_media=30/5=6


Soma_notas=5+9+7+3+6 = 30

4 3

5 6

Contador=0,1,2,3 Notas (no C e no Java) Posio 0 1 2 3 4 valor 5 9 7 3 6

calc_media soma_notas / 5; se (notas[1] >= calc_media) entao contador contador + 1; se (notas[2] >= calc_media) entao contador contador + 1; se (notas[3] >= calc_media) entao contador contador + 1; se (notas[4] >= calc_media) entao contador contador + 1; se (notas[5] >= calc_media) entao contador contador + 1; mostrar a mdia +calc_media; mostrar contador + alunos ficaram com a nota acima da media; mostrar .......final do sistema ....;

Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema:Ler a nota de 5 alunos, calcular a media e mostrar essa mdia e mostrar tambm quantos alunos ficaram com a sua nota igual ou acima da mdia. (usando vetores)
Algoritmo media_media_vetor_correto; var notas:vetor [1..5] de real; calc_media, soma_notas de real; i, contador de inteiro;

Teste de Mesa Notas (no pascal) Posio 1 2 3 4 valor 8 5 7 9 Calc_media=36/5=7.2 5 7

inicio soma_notas 0;
contador 0; para i de 1 at 5 faa inicio_para mostrar digite a +i+. nota.: ; ler(notas[i]);
soma_notas soma_notas + notas[i];

Soma_notas=0,8,13,20,29,36

fim_para calc_media soma_notas / 5; para i de 1 at 5 faa inicio_para se (notas[i] >= calc_media) entao contador contador + 1; fim_para mostrar a mdia +calc_media; mostrar contador + alunos ficaram com nota acima da media;
mostrar .......final do sistema ....;

Contador=0,1,2 I = 1,2,3,4,5,6,1,2,3,4,5,6 Notas (no C e no Java) Posio 0 1 2 3 4 valor A media 7.2 2 alunos ficaram com a nota acima da media

Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Fazer um algoritmo que analize 10 valores inteiros informa qual o maior e qual o menor deles.
Algoritmo maior_menor_vetor; Var maior_menor:vetor [1..10] de I, maior, menor de inteiro; Inicio Maior 0; Menor 99999; Maior_menor[] {2,3,7,8,5,9,1,0,6,4}; Para i de 1 at 10 passo 1 faa Inicio Se maior_menor[i] > maior entao maior maior_menor[i]; se maior_menor[i] < menor entao menor maior_menor[i]; fim Mostre o maior valor .: +maior; Mostre o menor valor .: +menor; Fim.

inteiro;

Teste de Mesa Maior_menor P 1 2 3 4 5 6 7 8 9 10 V 2 3 7 8 5 9 1 0 6 4 Maior=0,2,3,7 Menor=99999,2 I=1,2,3,4 ...........

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie um algoritmo que leia um vetor de 5 elementos. Calcule e mostre a soma desses elementos, a media, quantos elementos so iguais ou maiores do que a mdia, o percentual dos elementos que so maiores ou iguais a media e mostrar quantos desses elementos so positivos e quantos so negativos.
Algoritmo complexo_vetor ;
Var vetor5 :vetor

[1..5] de inteiro; Media, soma, perc_maior de real; I, iguais_maior, , qtd_pos, qtd_neg de inteiro;

Inicio

Media 0; Soma 0; iguais_maior 0; perc_maior 0; qtd_pos 0; qtd_neg 0;


vetor5[ ] {9,3,7,8,5};
Para i de 1 at 5 passo 1 faa Soma soma + vetor5[i]; Media soma / 5; Para i de 1 at 5 passo 1 faa inicio Se vetor5[i] > media entao

iguais_maior = iguais_maior + 1; se vetor5[i] >= 0 entao qtd_pos qtd_pos + 1; senao qtd_neg qtd_neg + 1; fim perc_maior (iguais_maior * 100) / 5; mostrar A soma foi .: +soma; mostrar a media foi .: +media; mostrar perc_maior+% so maiores ou iguais a mdia; mostrar iguais_maior +so iguais ou maiores do que a media; mostrar qtd_pos + so positivos; mostrar qtd_neg + so negativos;
Fim.

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie um algoritmo lendo um vetor A de 3 elementos do tipo inteiro. Mostre esses elementos do vetor A. Reordene os elementos em ordem crescente, atualize o vetor A com os elementos na ordem crescente e mostre novamente o vetor A.
Algoritmo vetor_crescente; Var A:vetor [1..3] de inteiro;
i, j, aux de inteiro;
Inicio

A[ ] {9,3,7}; Mostrar O valor de A[1] =+A[1]; Mostrar O valor de A[2] =+A[2]; Mostrar O valor de A[3] =+A[3];
Para j de 1 at 2 passo 1 faa Para i de 1 at 2 passo 1 faa Se A[i] > A[i+1] entao Inicio_se Aux A[i]; A[i] A[i+1]; A[i+1] aux; Fim_se;

Teste de Mesa A = Vetor Posicao 1 2 3 valor 50 21 14 Posicao 1 2 valor 14 21 I=1,2,3,1,2,3 Aux=50,50,21 J=1,2,3 3 50

Mostrar O valor de A[1] =+A[1]; Mostrar O valor de A[2] =+A[2]; Mostrar O valor de A[3] =+A[3];
Fim

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie um algoritmo lendo um vetor A de 15 elementos do tipo inteiro. Mostre esses elementos do vetor A. Reordene os elementos em ordem crescente, atualize o vetor A com os elementos na ordem crescente e mostre novamente o vetor A.
Algoritmo vetor_crescente_15; Var A:vetor [1..15] de inteiro;
i, j, aux de inteiro;
Inicio

A[ ] {9,3,7,6,21,50,45,36,2,8,7,9,42,32,18}; Para i de 1 at 15 faa Mostrar O valor Original de A[+i+] =+A[i];


Para j de 1 at 14 passo 1 faa Para i de 1 at 14 passo 1 faa Se A[i] > A[i+1] entao Inicio_se Aux A[i]; A[i] A[i+1]; A[i+1] aux; Fim_se;

Para i de 1 at 15 faa Mostrar O valor atualizado de A[+i+] =+A[i];


Fim

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie um algoritmo lendo um vetor A de 15 elementos do tipo inteiro. Mostre esses elementos do vetor A. Reordene os elementos em ordem decrescente, atualize o vetor A com os elementos na ordem decrescente e mostre novamente o vetor A.
Algoritmo vetor_decrescente_15; Var A:vetor [1..15] de inteiro;
i, j, aux de inteiro;
Inicio

A[ ] {9,3,7,6,21,50,45,36,2,8,7,9,42,32,18}; Para i de 1 at 15 faa Mostrar O valor Original de A[+i+] =+A[i];


Para j de 1 at 14 passo 1 faa Para i de 1 at 14 passo 1 faa Se A[i] < A[i+1] entao Inicio_se Aux A[i]; A[i] A[i+1]; A[i+1] aux; Fim_se;

Para i de 1 at 15 faa Mostrar O valor atualizado de A[+i+] =+A[i];


Fim

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie um algoritmo lendo dois vetores (A e B) de 5 elementos cada do tipo inteiro, liste os elementos destes dois vetores. Faa com que os elementos do vetor A passem para o vetor B, e os elementos do vetor B passem para o vetor A. Mostre os 2 vetores atualizados.
Algoritmo vetores_troca_5; Var A,B, C:vetor [1..5] de inteiro;
I de inteiro;
Inicio

A[ ] {9,3,7,6,21}; B[ ] {50,45,36,2,14}; Para i de 1 at 5 faa inicio Mostrar O valor Original de A[+i+] =+A[i]; Mostrar O valor Original de B[+i+] =+A[i]; Fim;
Para i de 1 at 5 passo 1 faa Inicio_se C[i] A[i]; A[i] B[i]; B[i C[i]; Fim_se;

Para i de 1 at 5 faa inicio Mostrar O valor Atualizado de A[+i+] =+A[i]; Mostrar O valor Atualizado de B[+i+] =+A[i]; Fim;
Fim

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie um algoritmo que gere uma matriz exerc_matriz 3x3, inserir dados nos elementos dessa matriz, por fim, mostre os dados contidos na matriz.
Algoritmo matriz_3x3; Teste de Mesa Var exerc_matriz:matriz [1..3,1..3] de inteiro;
l, c de inteiro; Inicio

Exerc_matriz C1 C2 C3 Para l de 1 at 3 faa L1 6 9 7 Para c de 1 at 3 faa L2 6 6 7 Inicio Mostrar Digite valor para exerc_matriz[+l+,+c+].: ; L3 5 3 7 Ler(exerc_matriz[l,c]); L=1,2 Fim; C=1,2,3,4,1 Para l de 1 at 3 faa
Para c de 1 at 3 faa Mostrar O valor de exerc_matriz[+l+,+c+].: +exerc_matriz[l,c];

Fim

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie um algoritmo que gere uma matriz exerc_matriz 3x3, inserir dados nos elementos dessa matriz, por fim, mostre os dados contidos na matriz e mostre qual o maior e qual o menor valor da matriz.
Algoritmo matriz_maior_menor; Var exerc_matriz:matriz [1..3,1..3] de inteiro;
l,

c, maior, menor de inteiro;

Inicio Maior 0; menor 99999;

Para l de 1 at 3 faa Para c de 1 at 3 faa Inicio Mostrar Digite valor para exerc_matriz[+l+,+c+].: ; Ler(exerc_matriz[l,c]); Fim; Para l de 1 at 3 faa Para c de 1 at 3 faa Inicio_para Mostrar O valor de exerc_matriz[+l+,+c+].: +exerc_matriz[l,c];

Se exerc_matriz[l,c] > maior entao maior exerc_matriz[l,c]; Se exerc_matriz[l,c] < menor entao menor exerc_matriz[l,c];
Fim_para Mostrar O maior valor da matriz .: +maior; Mostrar O menor valor da matriz .: +menor;
Fim

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: Crie uma matriz 4x4 chamada Mat4 e leia os valores para
elementos da matriz e :

todos os

1) mostre essa matriz; 2) Calcule a soma dos elementos e mostre a soma; 3) calcule e mostre a mdia dos elementos da matriz; 4) mostre os elementos da diagonal principal; 5) que mostre os elementos da diagonal secundria; 6) mostre os elementos da linha 3; 7) mostre os elementos da Coluna 2; 8) calcule e mostre quantos elementos so nmeros maiores que a mdia (e mostre esses elementos); 9) mostre em que posio se encontra o maior e o menor elemento da matriz; 10) crie uma segunda matriz MatNeri de 4x4 e armazene o contedo de cada elemento da matriz multiplicado por 2, mostre os elementos dessa nova matriz; 11) Que mostre os elementos pares e Impares da matriz, e dizer tambm quantos so pares e quantos so impares; 12) Crie um vetor chamado Vetor_neri que contenha os elementos da 2 linha e mostre este vetor

Algoritmo matriz_12questoes;

Var Mat4:matriz [1..4,1..4] de inteiro; MatNeri:matriz [1..4,1..4] de inteiro;


Vetor_neri:vetor[1..4] de inteiro; l, c, maior, menor,soma, media, com_media, conta_pares, conta_impares de inteiro;
elem_vert,elem_sec, elem_l3, elem_c2, mostra_com_media, pos_maior, pos_menor, mostra_pares, mostra_impares, vetNeri de caracter; Inicio Maior 0; menor 99999; soma 0; com_media 0; conta_pares 0; conta_impares 0; elem_vert ; elem_sec ; elem_l3 ; elem_c2 ; mostra_com_media ; pos_maior ;pos_menor ; mostra_pares ; mostra_impares ; vetNeri ;

Para l de 1 at 4 faa Para c de 1 at 4 faa Inicio Mostrar Digite valor para Mat4[+l+,+c+].: ; Ler(mat4[l,c]); Soma soma + mat4[l,c]; Fim; Media soma / 16; Para l de 1 at 4 faa Para c de 1 at 4 faa Inicio_para Mostrar O valor de mat4[+l+,+c+].: +mat4[l,c]; Se l = c entao Elem_vert elem_vert + mat4[l,c]; Se c = (5-l) entao Elem_sec elem_sec + mat4[l,c]; Se l = 3 entao Elem_l3 elem_l3 + mat4[l,c]; Se c = 2 entao Elem_c2 elem_c2 + mat4[l,c]; Se mat4[l,c] >= media entao inicio com_media com_media + 1; mostra_com_media mostra_com_media + mat4[l,c]; fim;

Se mat4[l,c] > maior entao Pos_maior mat4[+l+,+c+]; Se mat4[l,c] < menor entao Pos_menor mat4[+l+,+c+]; MatNeri[l,c] Mat4[l,c] * 2; Se mat4[l,c] mod 2 = 0 ento Inicio Conta_pares conta_pares + 1; Mostra_pares mostra_pares + mat4[l,c]; Fim Senao Inicio Conta_impares conta_impares + 1;

Mostra_impares mostra_impares + mat4[l,c]; Fim Se l = 2 ento inicio Vetor_neri[c] mat4[l,c]; VetNeri vetNeri + mat4[l,c]; Fim;
Fim_para Mostrar A soma dos elementos da matriz .: +soma; Mostrar A media dos valores da matriz .: +media; Mostrar Elementos da diagonal principal .: +Elem_vert; Mostrar Elementos da diagonal secundaria .: +Elem_sec; Mostrar Elementos da linha 3 .: +Elem_l3; Mostrar Elementos da Coluna 2 .: +Elem_c2; Mostrar com_media elementos atingiram a media, eles so.: +mostra_com_media;
Mostrar o maior valor est em +pos_maior+ e o menor valor est em +pos_menor;

Para l de 1 at 4 faa Para c de 1 at 4 faa inicio Mostrar O valor de matNeri[+l+,+c+].: +matNeri[l,c]; Fim; Mostrar conta_pares+ so pares, so eles .: +mostra_pares; Mostrar conta_impares+ so impares, so eles .: +mostra_impares; Mostrar O Vetor_neri possui os elementos.: +vetNeri; End.

Prof Neri A. Neitzke Ulbra - www.informaticon.com.br


Crie um algoritmo que leia para um cadastro de cliente, o seu nome, sua idade e o seu salrio. E por fim, mostre os valores. Algoritmo cadastro_cliente; Tipo cadastro = registro Nome de caracter; Idade de inteiro; Salario de real; Fim; Var dados_cliente, dados_funcionario de cadastro; Inicio Mostre Digite o nome do cliente; Ler(dados_cliente.nome); Mostre Digite a idade do cliente; Ler(dados_cliente.idade); Mostre Digite o salrio do cliente; Ler(dados_cliente.salario); Mostre O nome do cliente .: +dados_cliente.nome; Mostre A idade do cliente .: +dados_cliente.idade; Mostre O salario do cliente .: +dados_cliente.salario; Mostre Digite o nome do funcionario; Ler(dados_funcionario.nome); Mostre Digite a idade do Funcionario; Ler(dados_funcioanrio.idade); Mostre Digite o salrio do Funcionario; Ler(dados_funcionario.salario); Mostre O nome do funcionario .: +dados_funcionario.nome; Mostre A idade do funcionario .: +dados_funcionario.idade; Mostre O salario do funcionario .: +dados_funcionario.salario; Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: subalgoritmos - modularizao Ler 2 nmeros, efetuar as 4 operaes matemticas e mostrar os resultados.
Algoritmo operaes_subalgoritmos; var num1, num2, soma, multiplicacao, divisao, subtracao de real; procedimento leitura inicio Mostrar Digite o numero 1.:; Ler(num1) Mostrar Digite o numero 2.:; Ler(num2); Fim Procedimento calculos Inicio soma num1 + num2; multiplicacao num1 * num2; divisao num / num2; subtracao num1 num2; fim procedimento imprimir inicio mostrar A multiplicacao = +multiplicacao; mostrar A divisao = +divisao; mostrar A Subtracao = +subtracao; mostrar A soma =+soma; fim; Inicio Leitura; Calculos; Imprimir; Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: subalgoritmos modularizao procedimentos c/ parmetros Ler 2 nmeros, efetuar as 4 operaes matemticas e mostrar os resultados.
Algoritmo operaes_subalgoritmos_parametros; var num1, num2, soma, multiplicacao, divisao, subtracao de real; procedimento leitura inicio Mostrar Digite o numero 1.:; Ler(num1) Mostrar Digite o numero 2.:; Ler(num2); Fim procedimento calculos(pn1, pn2 de real) Inicio soma pn1 + pn22; multiplicacao pn2 * pn22; divisao pn1 / pn2; subtracao pn1 pn2; fim procedimento imprimir(mult, div, sub, som) inicio mostrar A multiplicacao = +mult; mostrar A divisao = +div; mostrar A Subtracao = +sub; mostrar A soma =+som; fim; Inicio Leitura; Calculos(num1, num2); Imprimir(multiplicacao,divisao, subtracao, soma); Fim.

Vdeo Aulas de Algoritmos e Lgica de programao Prof Neri A. Neitzke Ulbra - www.informaticon.com.br Problema: subalgoritmos modularizao FUNES Ler 2 nmeros, efetuar as 4 operaes matemticas e mostrar os resultados.
Algoritmo subalgoritmos_funcoes; var num1, num2, soma, multiplicacao, divisao, subtracao de real; procedimento leitura inicio Mostrar Digite o numero 1.:; Ler(num1) Mostrar Digite o numero 2.:; Ler(num2); Fim funo somar(pn1, pn2 de real) de real; Inicio soma pn1 + pn22; retorna soma; fim funo multiplicar(pn1, pn2 de real) de real; Inicio multiplicacao pn1 * pn22; retorna multiplicacao; fim funo dividir(pn1, pn2 de real) de real; Inicio divisao pn1 / pn22; retorna divisao; fim funo subtrair(pn1, pn2 de real) de real; Inicio subtracao pn1 - pn22; retorna subtracao; fim Inicio Leitura; Mostre A soma .: + somar(num1, num2); Mostre A multiplicacao .: + multiplicar(num1, num2); Mostre A subtrao .: + subtrair(num1, num2); Mostre A diviso .: + dividir(num1, num2); Fim.

Vous aimerez peut-être aussi