Você está na página 1de 4

Universidade Federal do Rio Grande do Norte

Centro de Cincias Exatas e da Terra


Departamento de Informtica e Matemtica Aplicada
DIM0320 - Algoritmo e Programao de Computadores
Docente: Alyppyo Coutinho (alyppyo@dimap.ufrn.br)

Atividade I

Descrio Geral
Esta atividade consiste em 15 (quinze) questes sobre o contedo apresentado durante a Unidade I. Para respond-las,
os alunos sero divididos em grupos com at 5 (cinco) integrantes. Para cada questo dever ser desenvolvido um
algoritmo, o qual dever ser representado em fluxograma e pseudocdigo. Seu valor de 3,0 pontos, correspondendo
a 30% da nota da unidade, com possibilidade de acrscimo de at 1,0 ponto ou penalizaes dependendo do
desempenho do grupo. A atividade ser dividida em 2 (duas) etapas obrigatrias, de acordo com o seguinte esquema:
Parte 1: entrega dos algoritmos via SIGAA; e
Parte 2: apresentao de resultados em sala.
Para a Parte 2, sero realizados sorteios para definio (i) dos alunos que iro apresentar, (ii) das questes e (iii)
da representao do algoritmo (fluxograma ou pseudocdigo). Devido ao carter aleatrio da escolha da questo,
mesmo que as questes sejam divididas entre os membros do grupo, todos devero conhecer as solues dos demais.

Objetivos
O objetivo desta atividade a elaborao de algoritmos para soluo das questes solicitadas. Cada algoritmo dever
ser representado atravs de fluxograma e pseudocdigo. A definio do aplicativo para criao dos fluxogramas fica
a critrio do grupo. Contudo, o desenvolvimento dos algoritmos em pseudocdigo dever ser realizado com o auxlio
da ferramenta VisuAlg, por ser o aplicativo adotado pela disciplina. O grupo dever desenvolver interfaces amigveis
para o usurio, para que os programas sejam manuseados sem a necessidade de instrues extras. O cdigo tambm
ser analisado, para verificar se os componentes do grupo conseguiram assimilar o contedo da unidade de forma
satisfatria. Dessa forma, o uso de comentrios tambm estimulado.

Itens solicitados
1. Interface com o usurio (0,9 pt)
As mensagens ao usurio e a formatao dos itens da inteface sero definidas pelo desenvolvedor. Entretanto, algumas
funcionalidades so desejadas, como:
Identificao do programa: todos os programas devem se identificar e indicar sua funcionalidade.
Interao clara e objetiva: o programa dever guiar o usurio do comeo ao fim de sua execuo, sem a
possibilidade de dvidas sobre como se deve interagir com ele.
Formatao de itens na tela: a visualizao da interface dever ser agradvel, com mensagens bem escritas
e fazendo uso adequado de espaamentos, quebras de linha e caracteres decorativos.
2. Cdigo (1,5 pt)
A anlise de cdigo indicar o quanto o grupo absorveu do contedo e como estruturou a soluo do problema. Os
itens analisados nessa seo sero:
Indentao: todas as intrues de um determinado bloco devero estar afastados ligeiramente para frente
com relao a ele, o que caracteriza uma indentao.
Comentrios: uma boa prtica de programao comentar o seu cdigo para indicar qual a sua inteno ao
utilizar um determinado comando ou qual a ideia por trs de um bloco. Esse item ser computado caso o
cdigo esteja bem explicado com comentrios, estando claro como o aluno resolveu os problemas.
Nomes de variveis: variveis com nomes bem definidos que facilitem a leitura do cdigo por outros desenvolvedores.
1

Soluo estruturada: soluo bem definida e decomposta logicamente em estruturas, com blocos bem indentados, iniciados e devidamente finalizados.
Execuo: se a execuo foi bem sucedida, sem erros.
3. Fluxograma (0,6 pt)
O grupo apresentar suas solues tambm em fluxogramas, respeitando as seguintes definies:
Uso correto dos componentes: cada componente possui uma forma bem definida e uma funcionalidade.
Utilize-as adequadamente.
Distribuio dos componentes: os componentes devero estar distribudos de forma a facilitar a visualizao
do fluxo. Evite ao mximo cruzamento entre linhas, usando-as apenas quando no houver outra alternativa.
Fluxos completos: todos as rotas do fluxograma devem ser completas, indo do incio ao fim sem deixar dvidas
sobre o que fazer em determinado ponto.

Pontuao
A seguir, um resumo indicando os itens solicitados e suas respectivas pontuaes.
#
1
1.1
1.2
1.3
2
2.1
2.2
2.3
2.4
2.5
3
3.1
3.2
3.3

Descrio
Interface com o Usurio
Identificao do programa
Interao clara e objetiva
Formatao de itens na tela
Cdigo
Indentao
Comentrios
Nomes de Variveis
Soluo estrutrutada
Execuo
Fluxograma
Uso correto dos componentes
Distribuio dos componentes
Fluxos completos
Total:

Pontos
0,9
0,3
0,3
0,3
1,5
0,3
0,3
0,2
0,5
0,2
0,6
0,2
0,2
0,2
3,0

Tabela 1: Tabela com as pontuaes por item solicitado

Disposies Finais
Os membros do grupo devero enviar a lista de integrantes, at um mximo de 5 alunos, para o professor via e-mail
(disponibilizado no cabealho deste documento) ou SIGAA at o dia 12 de maro de 2015. de suma importncia
que a lista seja enviada o mais breve possvel para que o grupo possa ser cadastrado no SIGAA, liberando o acesso
dos integrantes tarefa e ao arquivo que contm as questes.
Aps a data mencionada, grupos aleatrios sero criados com os alunos remanescentes, fato que pode resultar
em grupos com integrantes que no estejam comprometidos com a atividade, prejudicando o desempenho coletivo.
A tarefa valer 3,0 pontos, com possibilidade de acrscimo de at 1,0 ponto ou de penalizaes no dia da
apresentao. A entrega da Parte 1 dever ser realizada via SIGAA, at as 23h59 do dia 16 de maro de 2015 na
tarefa correspondente.
A Parte 2 ser realizada no dia designado para a reviso do contedo da unidade, ou seja, dia 17 de maro de
2015. As apresentaes sero definidas por sorteio, ento imperativo que todos os alunos estejam presentes
no horrio de incio da aula. As apresentaes continuaro at o trmino do horrio da aula ou caso no haja mais
alunos aptos para realizao do sorteio. Os critrios para obteno de ponto extra e/ou penalizaes so os abaixo
descritos:
1. Aluno responde a questo adequadamente: acrscimo de 0,5 pt para a nota do grupo
2. Aluno sorteado, est presente mas no quer apresentar a resposta: decrscimo de 0,5 pt para a nota
do grupo
2

3. Aluno sorteado, est presente mas no apresenta adequadamente a resposta: decrscimo de 0,5 pt
para a nota do grupo
4. Aluno sorteado, mas no est presente: decrscimo de 0,5 pt para a nota do grupo
5. Todos os integrantes do grupo faltaram: decrscimo de 50% na nota do grupo
Cada grupo poder ter, no mximo, dois de seus integrantes sorteados. Ao ser sorteado, o aluno ter um tempo
mximo de 15 minutos para apresentar sua soluo de acordo com os moldes definidos pelo sorteio. O professor
tambm se reserva o direito de realizar perguntas para verificar o domnio do aluno sobre a questo que est
apresentando.
Os resultados sero divulgados em conjunto com os resultados finais da disciplina.
O professor ficar disponvel para retirar dvidas atravs do SIGAA ou por e-mail. Em caso de dvida que s
possa ser retirada pessoalmente, ser necessrio notificar o professor com pelo menos 24 horas de antecedncia. Aps
receber a notificao, o professor combinar com o grupo horrio e local de atendimento.

Questes
1. Elabore um algoritmo que leia um nmero no formato CDU (Centena, Dezena, Unidade) e imprima-o invertido,
no formato UDC (Unidade, Dezena, Centena). O nmero invertido deve ser inserido em outra varivel antes
de ser impresso. Exemplo: caso se entre com o nmero 321, o nmero invertido impresso ser 123.
2. Dados a razo de uma Progresso Aritmtica (PA) e o valor de seu 1 termo, elabore um algoritmo que receba
um valor n e indique o valor do n-simo termo desta PA.
3. Em pocas de crise econmica, os comerciantes procuram aumentar suas vendas oferecendo descontos sobre
suas mercadorias. Faa um algoritmo que recebe o valor de um produto e a porcentagem de desconto oferecido
e imprima o novo valor do produto com o desconto.
4. Crie um algoritmo que leia um valor (entre 0 e 85.399) representando a quantidade de segundos que se passou
desde a meia-noite e, baseado nesse valor, indique que horrio esse nmero representa. O horrio deve ser
impresso com preciso de horas, minutos e segundos.
5. Elabore um algoritmo que, dado um nmero de conta corrente com trs dgitos, retorne o seu dgito verificador,
o qual calculado da seguinte maneira:
Exemplo: nmero da conta = 235
Somar o nmero da conta com o seu inverso: 235 + 532 = 767
Multiplicar cada dgito do resultado (767) pela sua ordem posicional e somar estes valores:

O ltimo dgito desse resultado o dgito verificador: 40 0


6. Dados a data de nascimento de uma pessoa e a data atual, crie um algoritmo que informe a idade desta pessoa.
No se esquea de verificar se o ano de nascimento vlido.
7. Elabore um algoritmo que, dada a sigla de um estado, imprima seu adjetivo ptrio correspondente:
RN: Potiguar
MG: Mineiro
RJ: Fluminense
SP: Bandeirante
ES: Capixaba
RS: Gacho
SC: Barriga Verde
Outras Siglas: Estado fora da lista
3

8. Fazer um algoritmo que receba o valor atual da cotao do dlar e possibilite ao usurio escolher entre dois
tipos de converso: real para dlar ou dlar para real. Aps informar o tipo de converso, o usurio informar
a quantia na moeda de origem que deseja converter, e o programa dever calcular o valor na moeda de destino.
9. Segundo uma tabela mdica, o peso ideal est relacionado com a altura e o gnero. Faa um algoritmo que
receba a altura e o gnero de uma pessoa, calcule e imprima seu peso ideal, utilizando as seguintes frmulas:
Para homens: (72.7 * Altura) - 58
Para mulheres: (62.1 * Altura) - 44.7
10. Crie um algoritmo que leia a idade de uma pessoa e informe a sua classe eleitoral:
No-eleitor (abaixo de 16 anos)
Eleitor obrigatrio (entre 18 e 65 anos)
Eleitor facultativo (entre 16 e 18 anos e maiores de 65 anos)
11. Crie um algoritmo que leia o nome e o total de pontos (distintos) de trs finalistas de um campeonato de
pingue-pongue e exiba a ordem de colocao da seguinte forma:
Vencedor: <nome do vencedor> - <quantidade de pontos do vencedor>
Segundo Colocado: <nome do segundo colocado> - <quantidade de pontos do segundo colocado>
Terceiro Colocado: <nome do terceiro colocado> - <quantidade de pontos do terceiro colocado>
12. A biblioteca de uma universidade deseja fazer um algoritmo que leia o nome do livro que ser emprestado, o
tipo de usurio (professor ou aluno) e possa imprimir um recibo no qual consta o nome do livro, o tipo de
usurio e o total de dias para devoluo. Considere que o professor tem dez dias para devolver o livro e o aluno
s trs dias.
13. Criar um algoritmo que leia o destino do passageiro, se a viagem inclui retorno (ida e volta) e informe o preo
total da passagem conforme a tabela a seguir:
Destino
Norte
Nordeste
Centro-Oeste
Sul
Sudeste

R$
R$
R$
R$
R$

Ida
500,00
350,00
350,00
400,00
450,00

Volta
R$ 400,00
R$ 400,00
R$ 350,00
R$ 450,00
R$ 500,00

14. Desenvolver um algoritmo que leia uma data (dia, ms e ano em separado) e informe se a data fornecida
vlida ou no.
15. Elaborar um algoritmo que leia uma data no formato ddmmaaaa e que a imprima como no exemplo:
Exemplo de entrada: 19032015
Sada esperada: Dia 19 de maro de 2015

Boa sorte!

Fim

Você também pode gostar