Vous êtes sur la page 1sur 6

MINISTRIO DA EDUCAO UNIVERSIDADE TECNOLGICA FEDERAL DO PARAN CMPUS PATO BRANCO TECNOLOGIA EM MANUTENO INDUSTRIAL LGICA DE PROGRAMAO PROFESSOR

Dr. MARCOS JUNIOR MARINI

FUNDAMENTOS BSICOS DE PROGRAMAO


1 - DEFINIO DE ALGORITMO:
Um Algoritmo a descrio de um padro de comportamento, expressado atravs de um conjunto bem definido e finito de aes, das quais temos a certeza que podem ser executadas. Padro de comportamento (exemplo: a seqncia 1,2,4,8,16) Em outras palavras, Algoritmo uma norma executvel para estabelecer um determinado efeito desejado, que na prtica, ser geralmente a obteno de uma soluo para um certo tipo de problema. Exemplos de algoritmos da vida cotidiana: manual de uso de um aparelho eletrnico (exemplo: manual de um celular); as partituras musicais.

OBSERVAO IMPORTANTE: Algoritmo o conceito central da programao. Programar basicamente construir algoritmos em uma linguagem de programao.

2 REPRESENTAO DE UM ALGORITMO
Um algoritmo pode ser representado basicamente por meio de duas formas: PORTUGUS ESTRUTURADO ou DIAGRAMA (FLUXOGRAMA) 2.1 PORTUGUS ESTRUTURADO Tambm conhecido como Portugol, uma pseudolinguagem de programao (unio dos termos Portugus, Algol e Pascal), onde os comandos so similares tanto com a lngua portuguesa como tambm com os implementados numa linguagem de programao. NOTAO: Variveis em letras maisculas; Comandos em letras maisculas sublinhadas.

Pg.:

2.2 FLUXOGRAMA um conjunto de smbolos, organizados sistematicamente, de forma a representar a soluo para um problema algortmico. Exemplos de smbolos usados para fluxogramas: Incio / Fim

Comandos de Atribuio

Comandos de Entrada / Sada

Estrutura de Repetio

Estrutura de Seleo

Fim SE (conector)

NOTAO:

Variveis em letras maisculas;

Comandos em letras minsculas.

2.3 EXEMPLO 1 Escreva um algoritmo que leia os valores para as variveis A e B, verifica se A>B e atribui um valor a varivel C. Com estas instrues, o algoritmo apresentar (impresso) no final o valor da varivel C, de acordo com a entrada das variveis A e B. PORTUGUS ESTRUTURADO INCIO INTEIRO: A,B,C; LEIA (A); LEIA (B); SE (A>B) ENTO C = 5; SENO C = 10; FIM SE; IMPRIMA C; FIM.
C=5

FLUXOGRAMA
incio

Leia A

Leia B

A>B

F
C = 10

imprima C

fim

Pg.:

2.4 EXEMPLO 2 Escreva um algoritmo para achar o maior e o menor nmero de uma srie de nmeros positivos, onde o nmero zero ser informado para finalizar a entrada de dados. PORTUGUS ESTRUTURADO INICIO INTEIRO: MAIOR, MENOR, VALOR; LEIA (VALOR); MENOR = VALOR; MAIOR = VALOR; ENQUANTO (VALOR 0) FAA SE (VALOR > MAIOR) ENTO MAIOR = VALOR; SENO ... FLUXOGRAMA
incio

... SE (VALOR < MENOR) MENOR = VALOR; FIM SE; FIM SE; LEIA (VALOR); FIM ENQUANTO; IMPRIMA(MAIOR,MENOR); FIM.

leia VALOR

MAIOR = VALOR

MENOR = VALOR
F
VALOR 0

V
VALOR MAIOR

>

VALOR MENOR

<

MAIOR = VALOR

MENOR = VALOR

leia VALOR

Imprima MAIOR, MENOR

fim

Pg.:

3 TESTE DE MESA
o teste feito manualmente, simulando os valores das variveis e o comportando do algoritmo, ou seja, a sequncia de instrues, visando verificar o funcionamento do modelo daquela proposta de soluo. Exemplo: Fazer o teste de mesa para o algoritmo do exemplo 2 utilizando a seguinte seqncia: 5, 3, 8, 7, 4, 10, 3, 6, 2, 0. Valor Lido = 5, 3, 8, 7, 4, 10, 3, 6, 2, 0 Maior = 5, 8, 10 Menor = 5, 3, 2

4 - LINGUAGEM DE PROGRAMAO
Definio: Uma linguagem de programao um conjunto de regras, smbolos e comandos que so utilizados para implementar um algoritmo computacionalmente, propiciando a sua codificao e execuo. Etapas do Processo de Programao (gerao do programa):
COMPILAO LINKEDIO

Arquivo FONTE

Programa OBJETO

Programa EXECUTVEL

*.C

*.OBJ

*.EXE

Arquivo Fonte: o arquivo digitado, representando o algoritmo codificado em uma linguagem, com os comandos e instrues para o controle e a execuo do programa. Exemplo: O Sistema Operacional Windows 2000, possui em torno de 30 milhes de linhas de cdigo. A extenso do arquivo fonte varia conforme a linguagem a ser utilizada. Ser apresentada abaixo uma relao com algumas extenses: Linguagem C = *.C Linguagem C++ = *.CPP Pascal = *.PAS

Professor Dr. Marcos Junior Marini UTFPR Cmpus Pato Branco - Paran

Pg.:

ALGORITMOS - LISTA DE EXERCCIOS


(Portugus Estruturado e Fluxogramas)
01) Ler dois nmeros inteiros, x e y, e imprimir o quociente e o resto da diviso inteira deles. Observao: para o resto da diviso, usar o operador mod.

02) Calcular a quantidade dinheiro gasta por um fumante. Dados: o nmero de anos que ele fuma, o n de cigarros fumados por dia e o preo de uma carteira.

03) Escreva um algoritmo para calcular a rea de um retngulo.

04) Calcular a mdia ponderada de trs nmeros, com o usurio digitando os nmeros e pesos.

05) A partir do curso de fbrica de um carro, gerar o preo final de um carro ao consumidor, informando tambm os valores referentes aos impostos e o lucro do distribuidor, sabendo que: a) imposto: 45% sobre o custo do carro; b) lucro do distribuidor: 12% sobre o custo do carro.

06) Sabendo que lato constitudo por 70% de cobre e 30% de zinco, indique a quantidade de cada um desses componentes para se obter uma certa quantidade de lato, a qual ser requerida (digitada) pelo usurio.

07) Leia a velocidade mxima permitida em uma avenida e a velocidade com que o motorista estava dirigindo nela, e na sequncia, calcule a multa que uma pessoa vai receber, sabendo que so pagos: a) 50 reais, se o motorista ultrapassar em at 10km/h a velocidade mxima permitida (ex.: velocidade mxima: 50km/h; motorista a 60km/h ou a 56km/h); b) 100 reais, se o motorista ultrapassar de 11 a 30 km/h a velocidade permitida. c) 200 reais, se estiver acima de 31km/h da velocidade mxima permitida para aquela via.

08) Escreva um algoritmo para ler trs valores e imprimir o maior valor digitado.

09) Ler trs valores do teclado e dizer se eles formam um tringulo: eqiltero (todos os lados iguais), issceles (dois lados iguais) ou escaleno (nenhum lado igual).

10) Escreva um algoritmo que informe se um dado ano ou no bissexto. Obs: um ano bissexto se ele for divisvel por 400 ou se ele for divisvel por 4 e no por 100.

11) Ler 4 nmeros inteiros e calcular a soma apenas daqueles que forem par. 12) Escreva um algoritmo para ler 2 nmeros inteiros em sequncia, e imprimir os prximos dez nmeros desta lista. Observao: utilizar a diferena entre os dois nmeros digitados para indicar os prximos.

Pg.:

13) Leia o valor do salrio bruto de duas pessoas, e na sequncia, caso os valores no sejam iguais, informe o percentual recebido a mais pela pessoa com o maior salrio.

14) Elabore um algoritmo que aps a leitura de uma sequncia de 5 nmeros, apresente os seguintes resultados: soma e mdia do conjunto, quantidade de nmeros digitados que foram superiores a 100, a porcentagem de nmeros pares digitados.

15) Escreva um algoritmo para calcular o volume de um cilindro, sabendo que o mesmo possui uma base no formato de circunferncia de raio r e uma altura h. O volume dado atravs da multiplicao entre a rea da base (Ab) no formato circular e a medida da altura h. Frmula: V = Ab * h ou seja: V = * r * h

16) Elabore um algoritmo para resolver o clculo da rea de um trapzio qualquer. Dica: rea do trapzio = (Base Maior + Base Menor) x Atura / 2

17) Escreva um algoritmo que calcule o ndice de massa corprea (IMC) de uma pessoa, a partir da seguinte frmula: IMC = peso / (altura * altura)

FLUXOGRAMAS 18) Represente um fluxograma para informar se um nmero digitado par ou mpar.

19) Represente a soluo para a identificao e exibio da informao se um nmero positivo, negativo ou nulo (igual a 0), aps a digitao pelo usurio.

20) Represente um fluxograma para a soluo proposta no exerccio 08.

21) Represente um fluxograma com a respectiva soluo para o exerccio 10.

22) Apresente o respectivo fluxograma para a soluo do exerccio 11.

23) Represente a soluo em fluxograma para o exerccio 12.

24) Elabore um fluxograma para imprimir os valores das potncias de base 2, iniciando com o expoente 0 at o 10. Dica: utilize comando de repetio (lao) e contador para a soluo.

25) Elabore um fluxograma para que o usurio possa informar um nmero, e na sequncia imprima na tela todos os nmeros de 1 at 100, no imprimindo aqueles que so mltiplos do nmero informado inicialmente.

Vous aimerez peut-être aussi