Professional Documents
Culture Documents
EDIO N 1 - 2007
_________________________________________________________________
Apoio
Gesto e Execuo
Contedo e Tecnologia
SUMRIO
Algoritmos
Apresentao
Algoritmos
Carta do Professor
Caro aluno,
No decorrer dos captulos, voc aprender a criar algoritmos.
Nesta disciplina, as principais estruturas bsicas utilizadas na programao
de computadores sero demonstradas, visando sempre ao aperfeioamento de sua
lgica de programao, que essencial sua qualificao profissional.
Iniciantes no mundo da programao devem resolver algoritmos. Alguns alunos conseguem resolver os problemas rapidamente. Outros, porm, podem ter mais
dificuldades e se este for o seu caso, tenho uma sugesto: repita, repita e repita os
exemplos e exerccios.
Todos os algoritmos apresentados neste livro possuem uma verso na linguagem de programao C++, para que voc possa digitar e testar. Dessa forma,
voc conseguir aprimorar a sua lgica, facilitando o aprendizado das prximas disciplinas.
Vamos agora para um novo desafio: a programao de computadores!
Algoritmos
Cronograma de Estudo
Acompanhe no cronograma os contedos das aulas e atualize as possveis
datas de realizao de aprendizagem e avaliaes.
Semana
Carga horria
Aula
Data/ Avaliao
Noes Bsicas de
Algoritmos
_/_ a _/_
Variveis, Operadoes e
Constantes
2
2
2
2
2
2
2
2
3
Algorimo Seqencial
Algoritmo Seleo
Simples
Algoritmo Seleo
Composta
Algoritmo Seleo Mltipla Escolha
Algortimo de Repetio
Para..Faa
Algortimo de Repetio
Repita ... At
Algortimo de Repetio
Enquanto...Faa
_/_ a _/_
_/_ a _/_
_/_ a _/_
_/_ a _/_
_/_ a _/_
_/_
_/_
_/_
Algoritmos
Plano de Estudo
Ementa
Objetivos da Disciplina
Geral
Utilizar ambientes de programao com edio, compilao, testes e gerao de
cdigos integrados, inclusive aqueles que acompanham programas aplicativos, a
partir de especificaes.
Especficos
Desenvolver programas e a lgica; definir algoritmos, estabelecendo natureza, origem e estrutura de dados; utilizar ambientes de programao com edio, compilao, testes e gerao de cdigos integrados, inclusive aqueles que acompanham
programas aplicativos, a partir de especificaes; atender necessidade do usurio
em sua estao de trabalho.
.
Carga Horria: 40 horas/aula.
Algoritmos
Aula 1
Contedos da aula
Definio de algoritmo;
Linguagem de programao;
Exerccios propostos.
Algoritmos
Segundo Forbellone (2000, p.03), algoritmo pode ser definido como uma seqncia de passos que visam atingir um objetivo bem definido. Quando elaboramos
um algoritmo, devemos especificar aes claras e precisas que possam resultar na
soluo de um problema proposto.
Podemos criar algoritmos de qualquer situao. Uma receita de bolo um exemplo muito claro de algoritmo. Primeiramente separamos os ingredientes e aps
devemos, passo-a-passo, juntar os ingredientes. No caso do bolo, a seqncia de
passos fundamental. Imagine: se primeiro misturarmos o leite com o fermento. Aps, colocamos o trigo, ovos e por ltimo o acar. Qual seria o resultado dessa mistura? Um bolo fofinho com certeza no seria! O sucesso do bolo est justamente na
seqncia de passos corretos. Surge ento uma palavra chave: lgica.
A lgica est na correta seqncia de passos, que deve ser seguida para ter
um objetivo especfico. No exemplo do bolo, a lgica inserir o fermento por ltimo,
seno o bolo no ir crescer.
Outro exemplo que pode ser analisado: fazer um ovo frito. Os passos a serem feitos poderiam ser:
Aquecer a frigideira;
Adicionar leo para fritar o ovo;
Quebrar o ovo;
Colocar o ovo na frigideira;
Esperar fritar;
Virar o ovo para fritar do outro lado;
Servir o ovo frito.
Os itens listados para fritar o ovo, j do uma idia de todo o processo bsico
de fritar um ovo. Porm, outra pessoa que fosse fazer a mesma atividade, poderia
acrescentar mais opes. Como por exemplo: verificar se existe um ovo para ser
frito, adicionar sal ou utilizar algum utenslio para virar o ovo. O grau de detalhamento pode ou no ser indispensvel no desenvolvimento de um algoritmo, tudo depende da situao que dever ser muito bem observada pelo programador.
Algoritmos
A experincia do programador reflete diretamente em uma lgica mais apurada, no desenvolvimento de um algoritmo. Para conseguir mais experincia e
uma lgica mais refinada s h um caminho: fazer algoritmos!
Um algoritmo, se digitado no computador, no ir funcionar. Cada pessoa pode elaborar o seu prprio algoritmo. Com a finalidade de padronizar, devemos utilizar
uma linguagem denominada pseudocdigo, que nada mais do que utilizarmos regras para a criao dos algoritmos. Regras essas, que no so rgidas, pois, conforme mencionado, o algoritmo servir somente para o apoio no aprendizado e no
aperfeioamento da lgica dos programadores.
Os algoritmos criados com o pseudocdigo devem ser independentes da linguagem de programao. Para isso, devemos converter o algoritmo para uma linguagem de programao. O objetivo de criarmos algoritmos a base de conhecimento de outras linguagens de programao. Ser a nossa referncia para aprendermos outras linguagens de computadores.
O algoritmo flexvel e, dessa forma, estaremos utilizando algumas regras
voltadas linguagem de programao C++, sem perder as principais caractersticas
de sua finalidade, que a prtica da programao.
10
Algoritmos
11
Algoritmo Soma_de_dois_numeros;
Variveis numero1,numero2,soma: inteiro;
Inicio
Escreva ( Informe um nmero: );
Leia (numero1);
Escreva ( Informe outro nmero: );
Leia (numero2);
soma = numero1 + numero2;
Escreva ( O resultado da soma dos nmeros informados : , soma);
Fim.
Figura 1 - Algoritmo Soma_de-dois_numeros
Algoritmos
12
Todo programa possui variveis que devem ser declaradas, no caso do exemplo, foram criadas trs variveis que armazenaram valores.
Uma dica importante: antes de comear a fazer um algoritmo, voc deve analisar o que dever ser feito. A leitura e a compreenso do enunciado o ponto inicial
da resoluo do algoritmo. O ideal a separar por partes. No caso da nossa proposta inicial, que : pedir dois nmeros para que possamos som-los e depois, imprimir
o resultado da operao. Separando por partes:
Separar e escrever por tpicos o que deve ser feito num programa ajudar na
soluo. O ideal escrever num papel esses tpicos, mas com prtica voc ir fazer
isso mentalmente com muita facilidade.
Os algoritmos elaborados neste livro sero implementados, ou seja, convertidos para a linguagem de programao C++ (fala-se C plus plus ). Utilizaremos para
isso o software TC++ 3.0 da Borland, que est na biblioteca.
A linguagem de programao C++ originou-se da linguagem C, inventada por
Dennis Ritchie. Essa linguagem, a C, ficou muito conhecida por se tratar de uma linguagem para programadores profissionais. Segundo Cordeiro (1998, p.10), por volta
de 1985, Bjarne Stroustrup comeou a desenvolver algumas extenses linguagem
C com o objetivo de prover suporte ao paradigma de orientao a objetos. Esse conjunto de extenses determinou o surgimento da linguagem C++, em 1986. O nome
"C++" advm do fato de que esta linguagem tida como uma extenso da linguagem C, onde o primeiro "+" representa as melhorias realizadas na linguagem C, e o
segundo "+" representa o acrscimo de funcionalidades para suportar o paradigma
de orientao a objetos.
Algoritmos
13
Exerccios propostos
1) Defina algoritmo.
2) Qual a diferena entre um programa-fonte e um executvel?
3) Defina linguagem de Programao.
4) Pesquise e descubra o nome de no mnimo cinco linguagens de programao
para computadores.
Algoritmos
14
Aula 2
VARIVEIS, OPERADORES E
CONSTANTES
Objetivos da aula
Ao final desta aula, voc dever ser capaz de:
Conhecer a importncia da declarao das variveis nos algoritmos e programas, bem como a definio de um tipo para cada tipo de varivel;
Diferenciar os operadores: aritmticos, lgicos e relacionais;
Estabelecer a importncia da constante em algoritmos.
Contedos da aula
Acompanhe os assuntos desta aula, se preferir, aps o seu trmino, assinale
o contedo j estudado.
Exemplificao de constantes;
Exerccios propostos.
Algoritmos
15
2.1 VARIVEIS
Segundo ASCENCIO (1999, p.10), quando fazemos um programa, este recebe os dados que devem ser armazenados no computador para que possam ser utilizados no processamento e armazenado na memria do computador.
Um dado classificado como varivel quando tem a possibilidade de ser alterado em algum determinando momento do programa, conforme Forbellone (2000,
p.17). Toda varivel dever ser declarada antes de ser utilizada. Na sua declarao, informaremos um tipo para ela. Um tipo significa informar ao computador o
que essa varivel poder receber e armazenar na memria do computador.
Muitos so os tipos de variveis. Neste livro utilizaremos principalmente os tipos:
Algoritmos
16
Os operadores so utilizados nas expresses matemticas, lgicas e relacionais. A maioria dos operadores soa igual nas linguagens de programao. Em C++,
a linguagem que utilizaremos possui algumas diferenas. Observe com ateno as
tabelas nos prximos tpicos. Voc, com certeza, ir utilizar os operadores em todos
os programas.
Algoritmos
Algoritmo
C++
Funo
Adio
Subtrao
Mutiplicao
Diviso
mod
Resto da diviso
div
Quociente da diviso
17
A utilizao do operador MOD (em algoritmo) ou % (em C++) ser da seguinte forma:
15 MOD 2, resulta em 1 o MOD sempre ir retornar o resto da diviso que,
no caso do exemplo: 15 dividido por 2, o resto desta diviso 1 ignorando
assim o resultado da diviso que 7,5.
O mesmo exemplo aplicado ao operador % em C++. Nas linguagens de programao, deveremos utilizar o % somente para variveis do tipo inteiro (isso
ser devidamente explicado no tpico sobre variveis).
Toda vez que precisamos comparar valores, utilizaremos os operadores relacionais, que esto na Tabela 2:
Algoritmo
C++
Funo
>
>
Maior que
<
<
Menor que
>=
>=
Maior ou igual a
<=
<=
Menor ou igual a
<>
!=
Diferente de
==
Igual a
Os operadores relacionais sero utilizados praticamente em todos os programas. Exemplicando, observe o resultado: Verdadeiro ou Falso e poderemos ter as
respostas se atribuirmos valores para X e Y. O X receber o valor de 2 e Y receber
o valor de 10.
Ento teremos: X=2 e Y=10.
Agora observe as comparaes abaixo:
Algoritmos
18
Algoritmo
C++
Funo
&&
OR
||
No
Da mesma forma que os operadores relacionais, os lgicos sero intensamente utilizados nos algoritmos de seleo.
2.3 CONSTANTES
19
Dica:
Quando houver uma expresso aritmtica com parnteses. Sempre tero precedncia os parnteses de dentro para fora.
Observe a expresso:
(9 + ( ( 10 * 2 ) + (14 -10 ) ) o resultado ser igual a 33
Exerccios propostos
1. Analise as expresses aritmticas e d o resultado:
a) X = ( 10 * ( (100 -90) -10) ) o valor de X :_______
b) W = ( 14 + ( 13 * (13 8) ) o valor de W
2. O valor de X igual a 15 e o valor de W igual a 23, agora analise expresses abaixo e informe se a expresso falsa ou verdadeira.
1. ( X < Y ) a expresso :
2. ( Y > X ) a expresso :
3. ( X = Y ) a expresso :
Algoritmos
20
Aula 3
ALGORITMO SEQENCIAL
Objetivo da aula
Ao final desta aula, voc dever ser capaz de:
Contedos da aula
Exerccios propostos.
Prezado aluno!
Chegamos na terceira aula. Agora voc ir aprender
como desenvolver algoritmos seqenciais e converte-los
para a linguagem C++.
Boa aula!
Algoritmos
21
3. ALGORITMO SEQENCIAL
Algoritmo Soma_de_dois_numeros;
Variveis numero1, numero2, soma: inteiro;
Inicio
Escreva ( Informe um nmero: );
Leia (numero1);
Escreva ( Informe outro nmero: );
Leia (numero2);
soma = numero1 + numero2;
Escreva (O resultado da soma dos nmeros informados : , soma);
Fim.
Figura 2 - Algoritmo 2 - Soma_de-dois_numeros
Comentrios fundamentais:
Primeiramente voc deve fazer uma releitura do item 1.3, da pg. .
Os nomes das variveis, se precisarem de nmeros, devem ser usados sem
espaos, como no caso: numero1 e numero2.
Observe que, na hora de somar os numero1 e numero2, utilizamos o sinal de
igual, que no representa igualdade. Representa a atribuio, ou seja, a
varivel soma recebe o valor da soma de numero1 e numero2.
Definimos trs variveis: soma, numero1 e numero2. Todas so do tipo inteiro, pois somente queremos utilizar nmeros sem a parte decimal, sem vrgulas.
No ltimo comando Escreva (), observe que o que est dentro das aspas: O
resultado da soma dos nmeros informados : obseve que agora vem a
vrgula para separar o que ser escrito na tela do computador e a varivel.
Se, porventura voc esquecer e deixar as aspas em toda a frase, nenhum valor ser impresso, aparecer na tela a palavra soma. Se isso acontecer, voc
j sabe: errou algo importante: o lugar das aspas.
Algoritmos
22
Algoritmo Variveis_diferentes;
Variveis idade: inteiro;
nome: caracter;
nota1, nota2, media: real;
Inicio
Escreva ( Informe o seu nome: );
Leia (nome);
Escreva ( Informe a sua idade: );
Leia (idade);
Escreva ( Informe a sua primeira nota: );
Leia (nota1);
Escreva ( Informe a sua segunda nota: );
Leia (nota2);
media = nota1 + nota2;
Escreva ( Nome, Voc tem: , idade, anos e sua mdia : , media);
Fim.
Figura 3 Algoritmo 3 - Variveis_diferentes
Algoritmos
23
Na hora que voc for salvar o programa, salve-o com somente um nome e
com a extenso .CPP que indicar que o programa do C++. Por exemplo:
programa1.cpp ou exemplo.cpp ou teste.cpp .
Quando for realizada a compilao, podem aparecer diversas mensagens. Se
apareceu uma ou mais mensagens, isso ocorreu porque h erros. O programa somente ir funcionar se todos os erros forem corrigidos.
Praticamente, a maioria dos erros na compilao devido a erros de digitao. Tenha muito cuidado durante a digitao, qualquer deslize provocar erros no programa.
Antes de compilar e testar o programa, tenha o hbito de salv-lo. Ocorrem
muitos erros durante o teste do programa que podem travar o TC ++ e, com
isso, voc poder perder o programa que fez, pois no salvou. Acredite isso
ocorre com muita freqncia.
Um exemplo de programa em C++ pode ser observado no programa Exemplo.cpp, conforme mostra a figura 4.
// Exemplo.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int numero1, numero2, soma;
cout<< \n Informe o primeiro nmero: ;
cin>> numero1;
cout<< \n Informe o segundo nmero: ;
Algoritmos
24
cin>> numero2;
soma = numero1 + numero2;
cout<< A soma dos dois nmeros : << soma;
getch( );
}
Figura 4 - Programa Exemplo.cpp
Algoritmos
25
nem ir ver o resultado. Usando o getch(), voc far com que o programa
pare at voc digitar algo.
Para a declarao das variveis, no C++, o tipo sempre colocado no incio,
sem os dois pontos, exemplo: int numero1.
Para comentar algum item, demos usar: // e tudo que for escrito aps // ser
ignorado pelo compilador.
Na tabela 4, podemos encontrar uma comparao das variveis e de comandos entre algorimtos e C++. Observe que h alguns tipos de variveis que sero usados mais adiantes.
C++
Funo
Leia ( )
cin >>
Leitura de valores
Escreva ( )
cout <<
Impresso na tela
inteiro
int
real
float
caracter
char
Incio Fim
{ }
26
Dica:
Nos primeiros programas, voc deve escrever essa anlise antes do algoritmo. Fazendo isso, voc rapidamente, conseguir ler e enteder o enunciado do programa
que dever ser feito.
Algoritmo Calculando_o_Dobro_e_Triplo;
Variveis numero, dobro, triplo: inteiro;
Inicio
Escreva ( Programa que Calcula o Dobro e o Triplo de um Nmero );
Escreva ( Informe um nmero: );
Leia (numero);
dobro = numero * 2;
triplo = numero * 3;
Escreva ( O dobro de:, numero, :, dobro, e o Triplo :, triplo);
Fim.
Algoritmo Calculando_o_Dobro_e_Triplo
Algoritmos
Algoritmos
27
28
Exerccios Propostos
2. Crie um programa em algoritmo e em C++, que leia dois nmeros inteiros. O programa dever imprimir: a soma dos dois nmeros, a multiplicao dos dois nmeros.
O programa dever imprimir tambm o resultado do valor da soma, subtrado do valor da multiplicao que foram calculados antes.
Algoritmos
29
Aula 4
ESTRUTURA DE SELEO
Objetivos da aula
Ao final desta aula, voc dever ser capaz de:
Contedos da aula
Acompanhe os assuntos desta aula, se preferir, aps o seu trmino, assinale
o contedo j estudado.
Exerccios propostos.
Ol aluno!
Voc est evoluindo bem. Vamos agora entrar na
estrutura de seleo. Preste muita ateno.
Boa aula!
Algoritmos
30
4. SELEO SIMPLES
Segundo Mizrahi (1994, p.87), uma das tarefas fundamentais de qualquer programa decidir o que deve ser executado a seguir. Os comandos de seleo permitem determinar qual a ao a ser tomada com base no resuldado de uma expresso condicional. Podemos, dessa forma, selecionar alternativas, dependendo de critrios que foram estabelecidos no programa.
So trs os tipos de seleo num programa:
Seleo simples
Seleo composta
Seleo de mltiplas escolhas.
Observe:
Se (valor1 > valor2 )
ento Escreva ( O valor1 maior) ;
seno Escreva ( O valor1 no maior);
A comparao feita e, Se for verdadeira, o comando ento far o que for
programado, no caso ser: Escreva (O valor1 maior). Se a comparao no for
verdadeira, o comando seno far o que for determinado, no caso do exemplo, imprimir o comando: Escreva (O valor1 no maior).
Podemos utilizar o comando Se sem utilizarmos a opo Seno.
Se (valor1 > valor2 )
ento Escreva (O valor1 maior);
Algoritmos
31
Nesse caso, estaramos somente analisando se o valor1 maior que o valor2, caso contrrio no interessa e no faremos nada a respeito.
Dica:
Muita ateno nos ponto e vrgulas. Voc s poder utiliz-los atrs dos comandos
que esto logo aps o ento ou o seno.
No algoritmo Selecao_Exemp1, temos o seguinte enunciado: Faa um programa que pea ao usurio dois nmeros inteiros, voc dever somar os dois nmeros informados, se o valor for menor que 100, diminua 10 e imprima. Seno, imprima
o valor da soma dos nmeros somente.
Passos para a resoluo, analisando o enunciado:
Definio do resultado: calcular a soma dos 2 nmeros informados. Analisar o resultado, para diminuir ou no antes de imprimir o resultado.
Dados de sada: imprimir o resultado da soma Se > 100 diminuir 10 Seno: somente imprimir o resultado da soma.
Dados de entrada: devemos pedir dois nmeros inteiros.
O algoritmo:
Algoritmo Seleo_Exemp1;
Variveis numero1, numero2, soma, resultado: inteiro;
Inicio
Escreva ( Programa que Verifica a Soma de 2 Nmeros );
Escreva ( Informe um nmero: );
Leia (numero1);
Escreva ( Informe outro nmero: );
Leia (numero2);
soma= numero1 + numero2;
SE (soma > 100) ENTO
Inicio
resultado = soma 100;
Escreva ( O resultado :, resultado);
Fim;
Algoritmos
32
SENO
Escreva ( O resultado :, soma);
Fim.
Algoritmo Seleo_Exemp1
Algoritmos
33
getch( );
}
Programa Seleo_Exemp1.cpp
34
O algoritmo:
Algoritmo Seleo_Exemp2;
Variveis idade: inteiro;
Inicio
Escreva ( Programa que Verifica Se Voc Pode ou No Dirigir);
Escreva ( Digite a sua idade: );
Leia (idade);
SE (idade > = 18) ENTO
Inicio
Escreva ( Sua idade :, idade);
Escreva ( Voc j pode dirigir, mas primeiro precisar tirar a carteira);
Fim;
SENO
Inicio
Escreva ( Sua idade :, idade);
Escreva ( Voc no pode dirigir, precisa andar de nibus, aguarde os 18);
Fim;
Fim.
Algoritmo Seleo_Exemp2
Algoritmos
35
{
cout<< \n Sua idade :<< idade;
cout<< \n Voc j pode dirigir, mas primeiro precisar tirar a carteira;
}
else
{
cout<< \n Sua idade : << idade;
cout<< \n Voc no pode dirigir, precisa andar de nibus, aguarde os 18;
}
getch( );
}
Programa Seleo_Exemp2.cpp
Algoritmos
36
Fim;
Fim.
Algoritmo Seleo_Exemp3
Algoritmos
37
getch( );
}
Programa Seleo_Exemp3.cpp
Algoritmos
38
Exerccios Propostos
1. Faa um programa em algortimo que dever pedir a idade. Conforme a idade dever ser impressa uma mensagem somente na tela, informando:
Se a pessoa for menor de 16 anos no pode votar ainda
Se a pessoa tiver entre 16 anos e 18 anos vota se quiser
Se a pessoa tiver mais de 18 anos por lei, a votar.
Algoritmos
39
Aula 5
SELEO COMPOSTA
Objetivos da aula
Ao final desta aula, voc dever ser capaz de:
Contedos da aula
Acompanhe os assuntos desta aula, se preferir, aps o seu trmino, assinale
o contedo j estudado.
Exerccios propostos.
Caro aluno!
Muito bem. Para darmos continuidade, vamos agora entrar no assunto relacionado a seleo composta.
Boa aula!
Algoritmos
40
5. SELEO COMPOSTA
A seleo composta so conjuntos de selees. Podemos inserir condies
dentro de condies. Isso muito til quando precisamos realizar vrios testes. Observe a estrutura do comando:
SE <condio1>
Ento Se a condio do teste no Se for verdadeira
Incio
Se <condio2> Ento
Incio
Comando 1;
Comando 2;
Fim;
Fim;
Seno
Incio
Se <condio3>
Ento
Incio
Comando 1;
Comando 2;
Fim;
Fim;
Dica:
Todo cuidado pouco no comando de seleo composta. As mltiplas opes podem trazer o famoso erro de lgica, que nada mais do que um erro na
hora de construir as opes nas condies. Caso isso ocorra em um de seus programas, a forma mais fcil de achar o erro verificar condio por condio. Analisando o valor de cada varivel e verificando o teste para saber o resultado e assim
procurar descobrir o erro.
Algoritmos
41
Algoritmos
42
getch( );
}
Programa Seleo_Composta1.cpp
Algoritmos
43
O algoritmo:
Algoritmo Triangulo;
Variveis A, B, C : inteiro;
Inicio
Escreva ( Programa que Imprime o Tipo de Tringulo );
Escreva ( Digite o Primeiro Lado do Tringulo );
Leia (A);
Escreva ( Digite o Segundo Lado do Tringulo );
Leia (B);
Escreva ( Digite o Terceiro Lado do Tringulo );
Leia (C);
SE ( (A < B + C ) e ( B < A + C) e ( C < A + B ) )
ENTO
Algoritmos
SE ( ( A = B ) e ( B = C) )
ENTO
Escreva (Tringulo Equiltero);
SENO
SE ( ( A = B ) ou ( A = C ) ou ( B = C) )
ENTO
Escreva (Tringulo Isscele);
SENO
Escreva (Tringulo Isscele);
SENO
Escreva (Estes valores no formam um tringulo);
Fim.
Algoritmo Triangulo
Algoritmos
44
45
else
cout <<\n Estes valores no formam um tringulo;
getch( );
}
Programa Triangulo.cpp
Comentrios:
Na comparao: if ( (A < B + C ) && ( B < A + C) && ( C < A + B ) ) utiizamos
o operador && que o E no algoritmo. Como usamos dois conjuntos de &&,
significa que, somente SE todas as condies forem verdadeiras, como resultado, ao final formam um tringulo.
Na comparao: if ( ( A == B ) || ( A == C ) || ( B == C) ) Se qualquer uma das
condies for verdadeira, teremos um tringulo eqiltero, que tem dois lados
iguais.
Na comparao: if ( ( A == B) && ( B == C) ), um erro que pode passar despercebido trocar os dois sinais de igual por um sinal. Isso no ir provocar
um erro. O computador pensar que a varivel A receber o valor de B. Por
isso fundamental muita ateno na digitao correta da igualdade.
Algoritmos
46
Exerccios Propostos
1. Faa um algoritmo que pea dois valores: uma letra referente ao sexo e nmero
inteiro referente idade. Imprima uma mensagem avisando se a pessoa poder ou
no se aposentar. Para aposentadoria, os seguintes critrios devero ser analisados:
Aposentadoria para homens somente depois dos 65 anos.
Aposentadoria para mulheres somente depois dos 60 anos.
Algoritmos
47
Aula 6
Objetivos da aula
Ao final desta aula, voc dever ser capaz de:
Contedos da aula
Acompanhe os assuntos desta aula, se preferir, aps o seu trmino, assinale
o contedo j estudado.
Exerccios propostos.
Prezado aluno!
Chegamos na etapa de estudarmos a seleo mltipla escolha.
Boa aula!
Algoritmos
48
Quando precisamos testar a mesma varivel com uma srie de valores, podemos utilizar a Seleo de Mltipla Escolha: Escolha. A varivel do teste deve ser
sempre do tipo inteiro ou caracter. O comando Escolha muito utilizado quando
oferecemos vrias opes ao usurio, deixando que escolha um valor dentre vrios.
A vantagem principal desse comando que ele evita uma srie de testes com o comando SE. A desvantagem que os testes somente iro funcionar para variveis
inteiras ou do tipo caracter. A sintaxe do comando :
Escolha < condio>
Incio
caso 1: comandos;
caso 2: comandos;
seno comandos
Fim;
6.1 Primeiro Exemplo de Seleo de Mltipla Escolha
Algoritmo Exemplo_Escolha;
Variveis sexo: caracter;
Inicio
Escreva ( Programa que Imprime a Letra Referente ao Sexo);
Escreva ( Digite a letra F para Feminino ou M para Masculino: );
Leia (sexo);
Escolha (sexo)
Incio
Caso f,F: Escreva ( Sexo FEMININO);
Caso m,M: Escreva ( Sexo MASCULINO);
Seno Escreva ( Letra Errada -- Favor Digitar Certo da Prxima Vez );
Fim;
Fim.
Algoritmo Exemplo_Escolha
Comentrios:
Algoritmos
49
// Programa Exemplo_Escolha.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
char sexo;
cout<< \n Programa que Imprime a Letra Referente ao Sexo ;
cout<< \n Digite a letra F para Feminino ou M para Masculino: ;
cin>> idade;
switch (sexo)
{
case f,F: {cout << \n Sexo FEMININO; break;}
case m,M: {cout << \n Sexo MASCULINO; break;}
else cout << \n Letra Errada -- Favor Digitar Certo da Prxima Vez;
}
getch( );
}
Programa Exemplo_Escolha.cpp
Consideraes:
No C++ o comando Escolha o switch (). Aps a condio, necessrio
o uso das chaves (que representam o incio e o fim do comando)
Algoritmos
50
Dica:
O algoritmo que verifica o tipo do tringulo: Algorimo Triangulo, no pode utilizar o
comando Escolha. Como no algoritmo Triangulo, h uma srie de condies para
verificar os lados do tringulo. O comando Escolha para um teste simples, com
vrias possibilidades de resultado.
No prximo exemplo, veremos um programa que solicita ao usurio dois nmeros inteiros. Em seguida o usurio deve escolher um caracter entre esses: + ou
ou *, pois cada sinal ir representar o clculo que dever ser feito. Imprima o valor
resultante.
Algoritmo Mini_Calculadora;
Variveis sinal: caracter;
num1, num2 : inteiro;
Inicio
Escreva ( Programa Mini Calculadora);
Escreva ( Informe o Primeiro Nmero: );
Leia (num1);
Escreva ( Informe o Segundo Nmero: );
Leia (num2);
Escreva ( Informe um dos sinais: + - * );
Leia (sinal);
Escolha (sinal)
Incio
Caso +: Escreva ( A soma dos nmeros : , num1 + num2);
Caso -: Escreva ( A subtrao dos nmeros : , num1- num2);
Caso *: Escreva ( O produto dos nmeros : , num1 * num2);
Seno Escreva ( Sinal Errado -- Favor Digitar Certo da Prxima Vez );
Fim;
Fim.
Algoritmo Mini_Calculadora
Comentrio:
No programa no foi criado uma varivel para guardar o resultado das
operaes de clculo. Como simplesmente iremos somar os dois nmeros, podemos calcular diretamente no comando Escreva( ) desde que
Algoritmos
51
Comentrios:
1. A varivel sinal do tipo char e analisada no comando switch () escolha
no algoritmo conforme o valor da varivel, o comando case ser executado.
2. Em cada linha do comando switch(), usamos o case, <opo> e precisamos utilizar o comando break, para forar a sada no camando switch () se
no utilizarmos o break todas as opes do case sero testadas, mesmo se
algum comando case, j tenha sido usado antes.
Algoritmos
52
Exerccio Proposto
1. Faa um algoritmo que pea um nmero inteiro. Cada nmero representa um dia
da semana. Imprima o dia da semana por extenso, utilzando o comando Caso.
Algoritmos
53
Aula 7
ESTRUTURAS DE REPETIO
Objetivos da aula
Ao final desta aula, voc dever ser capaz de:
Contedos da aula
Acompanhe os assuntos desta aula, se preferir, aps o seu trmino, assinale
o contedo j estudado.
Exerccios propostos.
Ol Aluno!
Caso voc j tenha compreendido o assunto at aqui, est evoluindo bem.
Agora iremos entrar em estruturas de repetio.
Boa aula!
Algoritmos
54
7. ESTRUTURAS DE REPETIO
Todos os programas apresentados at agora no permitem que sejam executados mais de uma vez. Se quisermos repetir algum programa precisamos sair do
programa e execut-lo novamente. Isso invivel. Precisamos permitir repeties.
Outra necessidade: imagine se precisssemos calcular a mdia das notas de 500
alunos sabendo-se que cada aluno tem 4 notas. Se fssemos criar todas essas variveis perderamos um tempo enorme s na declarao dessas variveis.
Segundo Forbellone (2000, p.49), uma estrutura de repetio uma estrutura
com controle de fluxo de execuo, que permite repetir diversas vezes um mesmo
trecho do programa. Do mesmo jeito que na estrutura de deciso, a estrutura de repetio depende do teste de uma condio.
So trs os tipos de estruturas de repetio:
Repetio com teste no incio: Enquanto ... Faa
Repetio com teste no fim: Repita ... At
Repetio com varivel de controle Para ... Faa
Algoritmos
C++
while (x>b)
{ comandos;
}
Como funciona?
O comando Enquanto primeiro a condio analisada, se for verdadeira os
comandos sero executados.
do
{
comandos;
}
while( x>b);
for (cont=1; cont<=100;
cont++)
{
comandos;
}
55
Dica:
Coloque sempre dentro do bloco de repetio os comandos: Incio e Fim. Mesmo se
for somente um comando. Isso ajudar a prevenir uma srie de problemas, pois dificilmente teremos somente um comando nessas estruturas de repeties. E no esquea da identao, para facilitar a visualizao do comando.
A estrutura de repetio Para Faa, deve ser usada quando sabemos o nmero exato de repeties. Na estrutura de repetio Para Faa devemos usar uma
varivel de controle. Essa varivel deve ser sempre do tipo inteiro ou caracter. Observe o algoritmo abaixo, que tem como objetivo imprimir na tela do computador,
todos os nmeros de 1 at 100.
Algoritmo Repetir_com_Para;
Variveis cont: inteiro;
Inicio
Escreva ( Programa que Imprime Todos os Nmeros de 1 at 100 );
Para cont= 1 At 100 Faa
Incio
Escreva ( , cont);
Fim;
Fim.
Algoritmo Repetir_com_Para
Comentrios:
No algoritmo Repetir_com_Para, no precisamos pedir nenhum valor. O programa ir imprimir todos os nmeros de 1 at 100.
O funcionamento da varivel cont dentro do Para Faa: primeiro ela, a varivel, recebe o valor um e este valor impresso na tela com o comando Escreva. Aps o comando, internamente, realizada a soma de mais um ao valor
da varivel cont (agora ela ficar com o valor igual a dois) e imprimir na tela
o dois, o comando ficar repitindo essa operao at o valor do cont chegar a
Algoritmos
56
cem, que ser impresso e o comando ir parar. Indo para o prximo comando do algoritmo que, nesse algoritmo, fim, mas poderia ser outro qualquer.
Observe o comando Escreva( ) dentro do Para: Escreva(
,cont) - colo-
camos entre aspas dois espaos em branco, isso impedir que os nmeros fiquem grudados ao aparecer na tela. Sem os espaos, a resposta na tela seria
assim: 12345678910....at chegar ao 100. Com os espaos, ficar assim: 1 2
3 4 5 6 7 8 9 10 11 12 ...at 100
// Programa Repetir_For.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int cont;
cout<< \n Programa que Imprime Todos os Nmeros de 1 at 100 ;
for (cont = 1; cont<=100;cont ++)
{
cout<< << cont;
}
getch( );
}
Programa Repetir_For.cpp
Comentrio:
No C++ o comando Para Faa sofre algumas alteraes. A primeira que
somente escrevemos o for, a segunda que a condio tem trs partes, aonde: cont=1 serve para inicializar a varivel cont; cont<=100 a condio de
teste que determina o limite do for; cont++ (isso o mesmo que cont= cont+
1) significa que cont incrementa mais um, ou seja, que o cont recebe mais um
a cada vez que o comando for executado.
Algoritmos
57
trado quando o resto de sua diviso for igual a zero. Portanto utilize o operador
MOD.
Passos para a resoluo do enunciado:
Definio do resultado: verificar se o nmero par, se for par deveremos
acumular o valor da soma.
Dados de sada: o resultado da soma de todos os pares.
Dados de entrada: nada h para ser solicitado ao usurio.
Algoritmo:
Algoritmo Soma_dos Pares;
Variveis cont,result: inteiro;
Inicio
result=0;
Escreva ( Programa que Imprime a Soma de Todos os Nmeros Pares de 2 at 1000 );
Para cont = 1 At 1000 Faa
Incio
Se (cont MOD 2 = 0) Ento
Incio
result= result + cont;
Fim;
Fim;
Escreva ( A Soma de Todos os Nmeros Pares : , result);
Fim.
Algoritmo Soma_dos Pares
Algoritmos
58
}
}
cout << \n A Soma de Todos os Nmeros Pares : << result;
}
getch( );
}
Programa Soma_Pares.cpp
Comentrios:
No comando for ( cont=1; cont <= 100 ; cont ++), utilizamos a varivel cont
++, isso significa que a varivel cont recebe cont + 1 ou seja, cont = cont +1.
O comando funciona da sequinte forma: primeiro o cont recebe o valor um;
por segundo o comando faz a comparao e enquanto o cont for menor at
100 o comando for ser repetido. Por ltimo, o cont ++ executado aonde o
contador incrementado com mais um.
59
Algoritmos
60
Programa Media_Idades.cpp
Algoritmos
61
Aproveitando o algoritmo Mini_Calculadora, feito na Aula 6, o uso do comando Repita ser demonstrado. Esse programa ir pedir dois nmeros e um sinal ( +
ou ou *). Conforme o sinal, ele ir mostrar o resultado da operao e pronto. Se
desejar repetir com novos nmeros para teste, no ser possvel. A no ser, claro,
que voc feche o programa e o compile novamente.
Para evitar esse transtorno, podemos facilmente utilizar o comando Repita,
perguntando ao usurio se ele deseja continuar a testar o programa, informando novos valores.
Para isso, basta criar uma nova varivel, que ir armazenar a resposta (sim
ou no).
Algoritmos
62
Comentrio:
Aps o programa imprimir o resultado do clculo, uma nova mensagem
ir surgir, perguntando: Deseja Repetir o Programa? Digite S para sim
ou N para no. O comando Leia ( ) ir ler a resposta do usurio. Se for S
o programa ir repetir, mas se for N o programa ir encerrar. Resumindo:
o programa s termina quando for digitada a letra n ou N.
Algoritmos
63
Comentrio:
Nesse programa, o comando getch() no necessrio. Assim que o programa receber a letra n ou N ele ir terminar e no precisa ficar esperando por
nada.
Algoritmos
Incio
Escreva ( numero , x , cont , = , numero * cont);
Fim;
Fim;
Caso R,r: Incio
cont =1;
Repita
Incio
Escreva ( numero , x , cont , = , numero * cont);
cont = cont + 1;
Fim;
At (cont =10);
Fim;
Caso E,e: Incio
cont =1;
Enquanto (cont <=10 ) Faa
Incio
Escreva ( numero , x , cont , = , numero * cont);
cont = cont + 1;
Fim;
Fim;
Else
Escreva ( Escolha Errada....);
Fim;
Fim.
Algoritmo Tabuada
Algoritmos
64
65
else { cout<< \n Letra Errada -- Favor Digitar Certo da Prxima Vez; break; }
}
getch( );
}
Programa Tabuada.cpp
Comentrios:
O programa somente parece complexo. Conforme o que for digitado na varivel opcao (observe que no h acentos e nem o sinal da cedilha) ser
escolhida uma opo com o comando switch () .
Muito cuidado com as chaves, uma a mais ou a menos o programa no ir
funcionar.
Algoritmos
66
Exerccios Propostos
1. Altere o algoritmo Tabuada, para que, alm do que ele j faz, possibilite ao usurio escolher se deseja ou no repetir o programa. Utilize a estrutura Repita ..At.
3. Crie um programa em algoritmo que pea a altura de vrias pessoas. Quando for
digitada a altura -1 o programa dever encerrar e imprimir a mdia das alturas.
Algoritmos
67
Aula 8
VETORES
Objetivos da aula
Ao final desta aula, voc dever ser capaz de:
Introduo a vetores
Declarao e exemplificao de Vetores
Exerccios Propostos
Contedos da aula
Acompanhe os assuntos desta aula, se preferir, aps o seu trmino, assinale
o contedo j estudado.
Exerccios propostos
Caro aluno!
Chegamos a etapa final do nosso estudo.
Preste muita ateno no assunto sobre vetores, pois tambm ser muito usado nos
demais materiais.
Algoritmos
68
8. VETORES
10
ndices do vetor
Figura 5 - Vetor 1
Trabalhar com vetor, significa trabalhar com estruturas de repeties. O motivo simples: trabalharemos com muitas variveis e deixaremos o trabalho mais pesado para a estrutura de repetio. A melhor estrutura de repetio para trabalhar
com vetores o Para...Faa, pelo simples motivo de sempre termos o nmero exato
dos elementos do vetor.
Algoritmos
69
Agora temos um detalhe muito importante: no algoritmo e em vrias linguagens, o ndice do vetor comea sempre do 1. No C++, o ndice comea do 0. Veja a
figura 6. Continuamos com dez elementos, porm o valor do ndice comea do zero.
vetor:numero[10]
ndices do vetor
Figura 6 - Vetor 2
Algoritmo:
Algoritmo Vetor_de_Notas;
Variveis cont, quant: inteiro;
notas[20]: real;
media, acum: real;
Inicio
quant = 0; media=0, cont=0;
Escreva ( Programa que Imprime a Mdia das Notas de 20 alunos );
Escreva ( Imprime a Quantidade de Alunos que Tiveram Notas Menores de 7.0 );
Para cont = 1 At 20 Faa
Incio
Escreva ( Informe a nota do aluno n: , cont);
Algoritmos
70
Comentrios:
Observe a declarao do vetor: notas [20] : real isso cria uma varivel com
vinte posies para guardar informaes.
A leitura da varivel: Leia (notas[ cont ]), dentro dos colchetes precisamos de
uma varivel para controlar o ndice do vetor. Quando o valor do cont for igual
a 1 estaremos nos referindo nota 1, quando o valor do cont for igual a 2, estaremos nos referindo nota 2 e assim sucessivamente.
// Vetor_Notas.cpp
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main( )
{
int cont=0, quant=0;
float notas[20];
float acum=0, media=0;
cout<< \n Programa Programa que Imprime a Mdia das Notas de 20 alunos ;
cout<< \n Imprime a Quantidade de Alunos que Tiveram Notas Menores de 7.0;
cout << setprecision(2);
for (cont = 0; cont<20; cont ++)
{
cout<< \n Informe a nota do aluno n: , cont+1
cin >> notas [ cont ];
acum = acum + notas [ cont ];
if ( notas [cont] < 7)
Algoritmos
71
quant =quant + 1;
}
media= acum / 20;
cout<< \n A mdia das notas dos alunos : << media;
cout<< \n A quantidade de alunos que tiveram notas menos que 7,0 so: << quant;
getch( );
}
Programa Vetor_Notas.cpp
Comentrios:
Em C++, o tipo de varivel real fica como float. Lembrando que o tipo da varivel inserido antes da varivel. Observe que estamos declarando a varivel
e ao mesmo tempo j estamos atribuindo valores, inicalizando as variveis.
Utilizamos mais uma biblioteca: #include<iomanip.h> para podermos utilizar
a funo setprecision(2), que tem como objetivo a impresso de 2 casas decimais aps a vrgula.
O comando for (Para..Faa) essencial ao programa. ele que faz o trabalho pesado do programa. nele que so informadas as 20 notas, acumulando
os valores e testando cada nota para verificar se a nota menor de 7.
Algoritmos
72
Exerccios Propostos
1. Crie um programa que leia 15 nmeros inteiros. Armazene-os num vetor. Some
todos os nmeros e imprima a mdia dos nmeros e a quantidade de nmeros no
vetor que so menores do que a mdia dos nmeros informados.
Algoritmos
73
AULA 1
1. Defina algoritmo.
Algoritmos so seqncias de passos que tm como objetivo atingir um determinado objetivo.
AULA 2
Algoritmos
74
2. O valor de X igual a 15 e o valor de W igual a 23, agora analise as expresses abaixo e informe se a expresso falsa ou verdadeira.
1. ( X < Y ) a expresso : verdadeira
2. ( Y > X ) a expresso : verdadeira
3. ( X = Y ) a expresso : falsa
3. Indique o tipo que a varivel Valor, conforme o valor que a varivel receber. Voc dever informar se a varivel ser do tipo: inteiro, real, caracter ou lgico.
e) Valor = A , o tipo ser: caracter
f) Valor = 15,65 o tipo ser: real
g) Valor = 47 o tipo ser: inteiro
h) Valor = 3 o tipo ser: inteiro
AULA 3
1. Encontre os erros do algoritmo abaixo e reescreva o que est errado:
Algoritmo Procurando Erros;
Variveis numero 1 e numero 2: inteiro;
soma: caracter;
Inicio
Escreva ( Digite o valor do Primeiro Nmero: );
Leia (numero1);
Escreva ( Digite o valor do Segundo Nmero:);
Leia ( numero 2);
soma = numero1 + numero2;
Escreva ( O Nmero 1: , numero1, e o Nmero 2: , numero2, : , soma );
Fim.
Algoritmo Procurando Erros
Erros:
1. Algoritmo Procurando Erros;
No pode haver espao entre Procurando Erros
Forma correta: Algoritmo Procurando_Erros;
Algoritmos
75
2. Crie um programa em algoritmo e em C++, que leia dois nmeros inteiros. O programa dever imprimir: a soma dos dois nmeros, a multiplicao dos dois nmeros.
O programa dever imprimir tambm o resultado do valor da soma, subtrado do valor da multiplicao que foram calculados antes.
Algoritmos
Algoritmo Numeros_Inteiros;
Variveis num1,num2 , soma, mult, result: inteiro;
Inicio
Escreva ( Programa Exerccio );
Escreva ( Informe dois nmeros: );
Leia (num1);
Leia (num2);
soma= num1+ num2;
mult = num1 * num2;
result = soma mult;
Escreva ( O Resultado : , result);
Fim.
Algoritmo Numeros_Inteiros;
// Programa Numeros_Inteiros.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int num1,num2 , soma, mult, result;
cout<< \n Programa Exerccio ;
cout<< \n Informe dois nmeros: ;
cin>> num1;
cin>> num2;
soma= num1+ num2;
mult = num1 * num2;
result = soma mult;
cout<< \n O O Resultado : << result;
getch( );
}
Programa Numeros_Inteiros.cpp
Algoritmos
76
Algoritmo Numeros_Inteiros;
Variveis num1,num2 : inteiro;
Inicio
Escreva ( Programa Exerccio );
Escreva ( Informe dois nmeros: );
Leia (num1);
Leia (num2);
Escreva ( O Resultado : , ( ( num1+ num2) - ( num1* num2) );
Fim.
Algoritmo Numeros_Inteiros
// Programa Numeros_Inteiros.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int num1,num2;
cout<< \n Programa Exerccio ;
cout<< \n Informe dois nmeros: ;
cin>> num1;
cin>> num2;
cout<< \n O O Resultado : << ( ( num1+ num2) - ( num1* num2) );
getch( );
}
Programa Numeros_Inteiros.cpp
Algoritmos
77
78
AULA 4
1.
Algoritmo Votar;
Variveis idade: inteiro;
Inicio
Escreva ( Programa que Verifica Se Voc Pode ou No Votar);
Escreva ( Digite a sua idade: );
Leia (idade);
SE (idade< 16) ENTO
Inicio
Escreva ( Voc no pode votar!);
Fim;
SENO
SE ( (idade >= 16) E ( idade <18) ) ENTO
Inicio
Escreva ( Voc vota se quiser!);
Fim;
SE (idade > = 18) ENTO
Inicio
Escreva ( Voc deve votar!);
Fim;
Fim.
Algoritmo Votar;
Algoritmos
79
AULA 5
1. Faa um algoritmo que pea dois valores: uma letra referente ao sexo e nmero
inteiro referente idade. Imprima uma mensagem avisando se a pessoa poder ou
no se aposentar. Para aposentadoria, os seguintes critrios devero ser analisados:
Aposentadoria para homens somente depois dos 65 anos.
Aposentadoria para mulheres somente depois dos 60 anos.
Algoritmo Aposentadoria;
Variveis sexo: caracter;
idade: inteiro;
Inicio
Escreva ( Programa que Imprime se Voc Pode ou No se Aposentar);
Escreva ( Digite a letra F para Feminino ou M para Masculino: );
Leia (sexo);
Escreva ( Digite a sua Idade: );
Leia (idade);
SE ( ( (sexo = F) OU (sexo = f) ) E ( idade>=60) ) ENTO
Inicio
Escreva ( Sexo FEMININO e pode se aposentar);
Fim;
SENO
SE ( ( (sexo = M) OU (sexo = m) ) E ( idade > = 65) ENTO
Inicio
Escreva ( Sexo MASCULINO e pode se aposentar);
Fim;
Fim.
Algoritmo Aposentadoria;
Algoritmos
80
AULA 6
1. Faa um algoritmo que pea um nmero inteiro. Cada nmero representa um dia
da semana. Imprima o dia da semana por extenso, utilzando o comando Caso.
Algoritmo Dia_Semana;
Variveis dia: inteiro;
Incio
Escreva ( Programa que Imprime o Dia da Semana por Extenso);
Leia (dia);
Escolha (dia)
Inicio
Caso 1: Escreva (Domingo);
Caso 2: Escreva (Segunda);
Caso 3: Escreva (Tera);
Caso 4: Escreva (Quarta);
Caso 5: Escreva (Quinta);
Caso 6: Escreva (Sexta);
Caso 7: Escreva (Sbado);
Seno Escreva ( Nmero no dia da Semana );
Fim;
Fim.
Algoritmo Dia_Semana;
Algoritmos
81
AULA 7
1. Altere o algoritmo Tabuada, para que alm do que ele j faz possibilide ao usurio
escolher se deseja ou no repetir o programa. Utilize a estrutura Repita ..At.
Algoritmo Tabuada;
Variveis opcao: caracter;
numero, cont: inteiro;
resp: caracter;
Incio
REPITA
INCIO
Escreva ( Programa Tabuada de um Nmero Desejado);
Escreva ( Informe um Nmero para a Tabuada: );
Leia (numero);
Escreva ( Escolha uma das Estruturas: );
Escreva ( [ P ] Digite P para Imprimir a Tabuada com o comando Para );
Escreva ( [ R ] Digite R para Imprimir a Tabuada com o comando Repita );
Escreva ( [ E ] Digite E para Imprimir a Tabuada com o comando Enquanto );
Leia (opcao);
Escolha (opcao)
Incio
Caso P,p: Incio
Para cont =1 At 10 Faa
Incio
Escreva ( numero , x , cont , = , numero * cont);
Fim;
Fim;
Caso R,r: Incio
cont =1;
Repita
Incio
Escreva ( numero , x , cont , = , numero * cont);
cont = cont + 1;
Fim;
Algoritmos
82
At (cont =10);
Fim;
Caso E,e: Incio
cont =1;
Enquanto (cont <=10 ) Faa
Incio
Escreva ( numero , x , cont , = , numero * cont);
cont = cont + 1;
Fim;
Fim;
Else
Escreva ( Escolha Errada....);
Fim;
Escreva ( Deseja Repetir o Programa? Digite S para sim ou N para no );
Leia (resp);
Fim;
At ( ( resp = n ) OU (resp = N ) );
Fim.
Algoritmo Tabuada;
2. Crie um programa em algoritmo utilizando a estrutura Para...Faa imprima todos
os nmeros mpares de 3 at 303.
Algoritmo Nmeros_impares;
Variveis cont : inteiro;
Inicio
result=0;
Escreva ( Programa que Imprime Todos os Nmeros mpares de 3 at 303 );
Para cont = 3 At 303 Faa
Incio
Se (cont MOD 2 <> 0) Ento
Incio
Escreva ( , cont);
Fim;
Fim; Fim.
Algoritmo Nmeros_impares
Algoritmos
Algorimo Media_Alturas;
Variveis altura, acumulador, contador: inteiro;
media: real;
Incio
media = 0;
acumulador = 0;
contador = 0;
Escreva ( Programa que Imprimi a Mdia das Alturas de Vrias Pessoas);
Escreva ( Informe Uma Altura Digite [-1] Para Parar);
Leia (altura);
Enquanto (altura<>-1 ) Faa
Incio
contador = contador +1;
acumulador = acumulador + altura;
Escreva ( Informe Uma Altura Digite [-1] Para Parar);
Leia (altura);
Fim;
media = acumulador / contador;
Escreva ( A Quantidade de Alturas Informadas : , contador);
Escreva ( A Mdia das Alturas Informadas : , media);
Fim.
Algorimo Media_Alturas
Algoritmos
83
84
AULA 8
1. Crie um programa que leia 15 nmeros inteiros. Armazene-os num vetor. Some
todos os nmeros e imprima a mdia dos nmeros e a quantidade de nmeros no
vetor que so menores do que a mdia dos nmeros informados.
Algoritmo Vetor_de_Numeros;
Variveis cont, quant: inteiro;
numeros[15]: real;
media, acum: real;
Inicio
quant = 0; media=0, cont=0;
Escreva ( Programa que Imprime a Mdia dos 15 Nmeros Informados );
Escreva ( Informe 15 nmeros);
Para cont = 1 At 15 Faa
Incio
Leia ( numeros [ cont ] );
acum = acum + numeros [ cont ];
Fim;
media= acum / 15;
Para cont = 1 At 15 Faa
Incio
Se ( numeros [cont] <media) Ento
quant =quant + 1;
Fim;
Escreva ( A mdia dos nmeros informados : , media);
Escreva ( A quantidade de nmeros informado e que so menores do que a mdia: , quant);
Fim.
Algoritmos
85
Algoritmo Vetor_de_Caracteres;
Variveis cont, quant: inteiro;
letras[30]: caracter;
Incio
quant = 0; cont=0;
Escreva ( Programa que Imprime a quantidade de Vogais que h no vetor );
Para cont = 1 At 30 Faa
Incio
Escreva ( Informe um Caracter);
Leia ( letras [ cont ] );
Escolha (letras [ cont ] )
Incio
Caso a,A, e,E,i,I,o,O,u,U: quant =quant + 1;
Fim;
Fim;
Escreva ( A quantidade de vogais no vetor de: , quant);
Fim.
Algoritmo Vetor_de_Caracteres;
Variveis cont, quant: inteiro;
letras[30]: caracter;
Inicio
quant = 0; cont=0;
Escreva ( Programa que Imprime a quantidade de Vogais que h no vetor );
Para cont = 1 At 30 Faa
Incio
Escreva ( Informe um Caracter);
Leia ( letras [ cont ] );
SE ( (letras [ cont ] ) = A OU (letras [ cont ] ) = a OU (letras [ cont ] ) = E OU
(letras [ cont ] ) = e OU (letras [ cont ] ) = I OU (letras [ cont ] ) = i OU
Algoritmos
86
Algoritmos
87
REFERNCIAS
MIZRAHI. Victorine Viviane. Treinamento em Linguagem C++: curso completo mdulo 1.So Paulo:McGraw-Hill, 1990.
[COR98] CORDEIRO, Jos. Transio para C++ - para programadores de C. Escola Superior de Tecnologia, Instituto Politcnico de Setbal, 1998.
Algoritmos