Você está na página 1de 10

ATIVIDADES PRTICAS

SUPERVISIONADAS

CST em Redes de Computadores
3 Srie
Programao Estruturada

A atividade prtica supervisionada (ATPS) um procedimento metodolgico de
ensino-aprendizagem desenvolvido por meio de um conjunto de etapas
programadas e supervisionadas e que tem por objetivos:
Favorecer a aprendizagem.
Estimular a corresponsabilidade do aluno pelo aprendizado eficiente e
eficaz.
Promover o estudo, a convivncia e o trabalho em grupo.
Desenvolver os estudos independentes, sistemticos e o autoaprendizado.
Oferecer diferentes ambientes de aprendizagem.
Auxiliar no desenvolvimento das competncias requeridas pelas Diretrizes
Curriculares Nacionais dos Cursos de Graduao.
Promover a aplicao da teoria e conceitos para a soluo de problemas
prticos relativos profisso.
Direcionar o estudante para a busca do raciocnio crtico e a emancipao
intelectual.
Para atingir estes objetivos a ATPS prope um desafio e indica os passos a
serem percorridos ao longo do semestre para a sua soluo.
A sua participao nesta proposta essencial para que adquira as
competncias e habilidades requeridas na sua atuao profissional.
Aproveite esta oportunidade de estudar e aprender com desafios da vida
profissional.
AUTORIA:
Marcelo Augusto Cicogna
Faculdade Anhanguera de Valinhos
Jeanne Dobgenski
Anhanguera Educacional Ltda
Jaqueline Brigladori Pugliesi
Faculdade Anhanguera de Valinhos
CST em Redes de Computadores 3 Srie Programao Estruturada

Jaqueline Brigladori Pugliesi, Jeanne Dobgenski, Marcelo Augusto Cicogna
Pg. 2 de 10

COMPETNCIAS E HABILIDADES

Ao concluir as etapas propostas neste desafio voc ter desenvolvido as competncias
e habilidades descritas a seguir.
Compreender tecnologias relacionadas comunicao e processamento de dados e
informaes.
Produo Acadmica
Relatrios parciais, com os resultados das pesquisas e atividades realizadas.
Relatrio final com todo o projeto documentado.
Participao
Esta atividade ser, em parte, desenvolvida individualmente pelo aluno e, em parte,
pelo grupo. Para tanto, os alunos devero:
Organizar-se, previamente, em equipes de participantes conforme orientao do
professor.
Entregar seus nomes, RAs e e-mails ao professor da disciplina.
Observar, no decorrer das etapas, as indicaes: Aluno e Equipe.
Padronizao
O material escrito solicitado nesta atividade deve ser produzido de acordo com as
normas da ABNT
1
, com o seguinte padro:
Em papel branco, formato A4.
Com margens esquerda e superior de 3cm, direita e inferior de 2cm.
Fonte Times New Roman tamanho 12, cor preta.
Espaamento de 1,5 entre linhas.
Se houver citaes com mais de trs linhas, devem ser em fonte tamanho 10, com
um recuo de 4cm da margem esquerda e espaamento simples entre linhas.
Com capa, contendo:
Nome de sua Unidade de Ensino, Curso e Disciplina.
Nome e RA de cada participante.
Ttulo da atividade.
Nome do professor da disciplina.
Cidade e data da entrega, apresentao ou publicao.

DESAFIO

Para os alunos que iniciam uma jornada por meio dos assuntos de Algoritmos e
Programao Estruturada, acaba-se constatando que o domnio das ferramentas de
desenvolvimento faz bastante diferena na elaborao e realizao do trabalho de
programao, bem como na qualidade final dos resultados obtidos.
Este desafio ir apresentar e incentivar o aluno a explorar algumas ferramentas de
desenvolvimento de cdigo para realizar a programao do algoritmo desenvolvido na
Atividade Prtica Supervisionada de Construo de Algoritmos.

1
Consulte o Manual para Elaborao de Trabalhos Acadmicos. Unianhanguera. Disponvel em:
<http://www.unianhanguera.edu.br/anhanguera/bibliotecas/normas_bibliograficas/index.html>.
CST em Redes de Computadores 3 Srie Programao Estruturada

Jaqueline Brigladori Pugliesi, Jeanne Dobgenski, Marcelo Augusto Cicogna
Pg. 3 de 10

A atividade tem incio, claro, com o compilador. Ou melhor, tem-se incio com um
ambiente de desenvolvimento de cdigo. O termo em ingls Integrated Development
Enviroment, que pode ser traduzido para Ambiente Integrado de Desenvolvimento. Os termos
Ambiente e Integrado fazem referncia a um conjunto de ferramentas que auxiliam o
programador nas tarefas mais comuns do desenvolvimento de programas para computador.
Num segundo momento, sugere-se explorar uma ferramenta que permita ao aluno
entender e controlar a evoluo de seu cdigo.
Para facilitar, transcreve-se a seguir a situao problema a ser considerada e resolvida.

Problema
Uma agncia de viagens sentiu a necessidade de disponibilizar em sua pgina da
internet um programa que faa a converso de moedas, devido ao grande nmero de
pedidos de seus clientes. Alm disso, percebeu que essa ferramenta poder trazer novos
visitantes a sua pgina principal, incrementando sua ao de marketing.
Para realizar esse projeto o diretor da agncia solicitou empresa responsvel pela
pgina de internet que providenciasse o aplicativo, tendo especificado as seguintes
caractersticas:
1. suportar as moedas disponveis nos conversores usuais, como o da pgina do UOL
Economia. Disponvel em: <http://economia.uol.com.br/cotacoes>. Acesso em: 11
ago. 2011;
2. permitir converso da moeda x para y como de y para x, a escolha do usurio;
3. guardar as cotaes dirias por ms;
4. fazer mdias as mdias mensais das cotaes das moedas;
5. indicar o menor e o maior valor da moeda no ms.
Para resolver esse desafio considere que voc e seus colegas fazem parte da equipe
que desenvolver o aplicativo descrito e que o professor da disciplina o gerente do projeto.
Leiam atentamente as etapas a seguir e boa sorte!

Objetivo do desafio
Apresentar e incentivar o aluno a explorar algumas ferramentas de desenvolvimento
de cdigo e realizar a programao do algoritmo para o problema proposto.


ETAPA 1 (tempo para realizao: 5 horas)

Aula tema: Reviso geral de linguagem C. Tipos de Dados. Modularizao: uso de
funes. Passagem de parmetros: por valor.
Esta atividade importante para que voc compreenda os recursos disponveis no
ambiente de desenvolvimento denominado Code::Blocks.
Para realiz-la importante seguir os passos descritos.





PASSOS

CST em Redes de Computadores 3 Srie Programao Estruturada

Jaqueline Brigladori Pugliesi, Jeanne Dobgenski, Marcelo Augusto Cicogna
Pg. 4 de 10

Passo 1 (Equipe)
Acessar o site da IDE Code::Blocks. Disponvel em: <http://www.codeblocks.org>. Acesso
em: 11 ago. 2011. No site possvel descobrir os principais recursos deste ambiente integrado
de desenvolvimento de cdigo em Linguagens C e C++.
Na Figura 1, apresenta-se uma viso geral do Code::Blocks.


Figura 1. Viso geral ao se acessar a IDE Code::Blocks.

Caso o laboratrio de sua Unidade no possua o Code::Blocks instalado, este o
momento de pedir ao professor da disciplina que encaminhe uma solicitao ao Apoio
Docente ou para Coordenao do Curso, para a instalao de tal sistema.
Ao mesmo tempo, neste primeiro passo, pede-se aos alunos explorarem o site do
Code::Blocks com o objetivo de responder a algumas perguntas:
a) Qual benefcio voc encontra no fato da IDE Code::Blocks ser um software
distribudo segundo a licena GPL v3.0? Faa uma pesquisa na internet sobre
licenas GPL para responder a esta pergunta.
b) Qual benefcio voc pode relatar a partir do fato de que a IDE Code::Blocks um
software Cross Plataform, ou seja, este software funciona com os sistemas
operacionais Windows, Linux e Mac?
c) Faa uma avaliao geral do site do Code::Blocks. Voc considera um bom site?
Ele atendeu s suas necessidades iniciais de acesso e entendimento do
Code::Blocks?
d) Quais compiladores C e C++ so compatveis com o Code::Blocks? Veja que o
GCC apenas um dos compiladores disponveis. De fato, esse compilador vem
junto com a instalao do Code::Blocks. Que vantagens voc acredita existirem
numa IDE que pode utilizar vrios tipos de Compiladores? Associe sua resposta
com a resposta do item b.
CST em Redes de Computadores 3 Srie Programao Estruturada

Jaqueline Brigladori Pugliesi, Jeanne Dobgenski, Marcelo Augusto Cicogna
Pg. 5 de 10

e) Por fim, faa uma anlise das vantagens de se obter esse tipo de conhecimento em
complemento aos contedos das disciplinas de Algoritmos e de Programao
Estruturada. Voc acredita que um desenvolvedor que domine um grande
conjunto de ferramentas, ainda durante a sua graduao, possuir um bom
diferencial de mercado?

Passo 2 (Equipe)
Iniciar o uso do Code::Blocks. Para isto, vamos criar um programa bem simples. Este passo
ser dividido em tarefas, conforme a seguinte lista:
a) Utilizar o menu File > New > Empty file para criar um arquivo em branco.
b) Por meio do menu File > Save, salvar o arquivo como HelloWord.c em alguma
pasta vazia de seu computador.
c) No arquivo recm criado, escrever o cdigo da Listagem 1. Enquanto voc digita o
cdigo, preste ateno nas cores e realces que so apresentados automaticamente.
Quando terminar, salvar seu trabalho com o menu File > Save.
d) Para compilar seu programa, escolha o menu Build > Build ou tecle Ctrl-F9
simultaneamente. Se o programa foi digitado corretamente, voc ver um
resultado de compilao semelhante ao apresentado na Figura 2.
e) Para executar o seu programa recm criado, utilizar o menu Build > Run.

Listagem 1. Pequeno programa para testar o ambiente de desenvolvimento.

#include <stdio.h>

int main()
{
printf("Hello World!");
return (0);
}



Figura 2. Resultado de uma compilao bem sucedida com o Code::Blocks.

Passo 3 (Equipe)
Investigar as opes de depurao do cdigo fonte. Para isto, pode-se utilizar os exemplos de
programa apresentados na Etapa 2. Entretanto, os alunos so fortemente convidados a
implementar o algoritmo que desenvolveram na Etapa 1 do primeiro Desafio proposto na
Disciplina de Construo de Algoritmos.

Passo 4 (Equipe)
Entregar um mini-relatrio contendo as respostas e observaes realizadas a partir das
questes do Passo 1.


CST em Redes de Computadores 3 Srie Programao Estruturada

Jaqueline Brigladori Pugliesi, Jeanne Dobgenski, Marcelo Augusto Cicogna
Pg. 6 de 10

ETAPA 2 (tempo para realizao: 5 horas)

Aula tema: Reviso geral de linguagem C. Tipos de Dados. Modularizao: uso de
funes. Passagem de parmetros: por valor.
Esta atividade importante para que voc compreenda os recursos disponveis no
software de comparao e mesclagem de verses de cdigo do WinMerge.
Para realiz-la importante seguir os passos descritos.

PASSOS

Passo 1 (Equipe)
Acessar o site do programa WinMerge disponvel em <http://winmerge.org>. Acesso em: 13
ago. 2011. No site possvel descobrir os principais recursos deste aplicativo.
O programa WinMerge oferece recursos que auxiliam os desenvolvedores no controle
de verses do cdigo fonte. Na Figura 3, apresenta-se uma viso geral do WinMerge na
comparao de dois arquivos de cdigo desenvolvido em Linguagem C.


Figura 3. Viso geral do programa WinMerge.

Repetindo uma instruo j apresentada neste desafio, caso o laboratrio de sua
Unidade no possua o WinMerge instalado, este o momento de pedir ao professor da
disciplina que encaminhe uma solicitao ao Apoio Docente ou para Coordenao do
Curso, para instalao de tal programa.

Passo 2 (Equipe)
Ler o texto e faa as atividades a seguir:
Como dito anteriormente, o WinMerge oferece recursos para o programador comparar
e mesclar verses diferentes de um documento em formato Somente Texto (ASCII). No caso
especfico, o documento ser um arquivo de cdigo fonte escrito em Linguagem C.
CST em Redes de Computadores 3 Srie Programao Estruturada

Jaqueline Brigladori Pugliesi, Jeanne Dobgenski, Marcelo Augusto Cicogna
Pg. 7 de 10

Para dar incio ao entendimento do funcionamento do WinMerge, vamos considerar
um programa simples escrito em Linguagem C. Este programa pede ao seu usurio fornecer
dois nmeros inteiros e apresenta a soma destes nmeros. Em outras palavras, o programa
bem simples, pois o foco aqui descobrir o que o WinMerge pode fazer. O cdigo fonte da
Verso 1 do programa apresentado na Listagem 2.

Listagem 2. Verso 1 de um programa simples em Linguagem C.
#include <stdio.h>

int main()
{
int num1, num2, soma;

printf("Exemplo de Programa Escrito em Linguagem C");
printf("Digite um nmero inteiro:");
scanf("%d", &num1);
printf("Digite um nmero inteiro:");
scanf("%d", &num1);
soma = num1 + num2;
printf("A soma dos dois nmeros fornecidos igual a %d", soma);

return (0);
}


Vamos considerar que o desenvolvedor do cdigo anterior decida melhor-lo
adicionando comentrios para um melhor entendimento. claro que o programa bastante
simples e talvez no fossem necessrios tantos comentrios. Mais uma vez, o objetivo
descobrir os recursos do programa WinMerge. A Verso 2 do cdigo anterior est
apresentada na Listagem 3.

Listagem 3. Verso 2 do programa com a adio de comentrios.
#include <stdio.h>

int main()
{
//Decrao de variveis.
int num1, num2, soma;
//Apresentao do programa para o usurio.
printf("Exemplo de Programa Escrito em Linguagem C\n\n");
//Leitura de dados de entrada.
//... primeiro valor.
printf("Digite um nmero inteiro:");
scanf("%d", &num1);
//... segundo valor.
printf("Digite um nmero inteiro:");
scanf("%d", &num1);
//Clculo ou determinao dos resultados.
soma = num1 + num2;
//Apresentao dos resultados ao usurio.
printf("A soma dos dois nmeros fornecidos igual a %d", soma);

return (0);
}

O trabalho agora copiar as Listagens 1 e 2 para arquivos chamados WM-Exemplo-
v1.c e WM-Exemplo-v2.c, respectivamente.




CST em Redes de Computadores 3 Srie Programao Estruturada

Jaqueline Brigladori Pugliesi, Jeanne Dobgenski, Marcelo Augusto Cicogna
Pg. 8 de 10

Passo 3 (Equipe)
Utilizar os arquivos WM-Exemplo-v1.c e WM-Exemplo-v2.c e o WinMerge para comparar os
contedos destes programas. Voc obter algo semelhante ao apresentado na Figura 3.
Tente abrir os dois arquivos utilizando o menu Arquivo > Abrir. Outra forma de
fazer isso, selecionar os dois arquivos no Windows Explorer e com o menu que acionado
com o boto direito, escolher a opo WinMerge.
Explorar as formas que WinMerge possui para demonstrar as diferenas dos dois
arquivos. Por exemplo, como voc explicaria a existncia de linhas de cor cinza na
apresentao do arquivo WM-Exemplo-v1.c. Que vantagens voc v no desenho apresentado
no quadro Painel de Localizao?
Fazer outras alteraes que desejar no cdigo como, por exemplo, alterar o texto dos
comandos printf(). Dica: realizar as alteraes dentro da prpria interface do WinMerge e,
ento, tecle F5 para o programa atualizar a comparao dos arquivos.

Passo 4 (Equipe)
Entregar um relatrio contendo as respostas e observaes realizadas nesta etapa do projeto.


ETAPA 3 (tempo para realizao: 5 horas)

Aula tema: Uso de vetores e matrizes. Registros. Ponteiros e sua aplicao.
Esta atividade importante para que voc desenvolva sua habilidade em trabalhar
com vetores como estrutura de dados, implementando-os corretamente.
Para realiz-la importante seguir os passos descritos.

PASSOS

Passo 1 (Equipe)
Considerar que por precauo o gerente do projeto pediu que a equipe realizasse a
implementao de uma instncia menor do problema, de forma a testar e validar a soluo
para ento aplic-la ao problema completo.
Por isso a equipe dever usar para testes o Real e o Euro. As cotaes dirias,
referentes a um ms, devero ser armazenadas num vetor.
Considerar o perodo de um ms (30 dias) para calcular a mdia, o menor e maior
valor da cotao da moeda.
O cdigo deve conter comentrios que detalhem as variveis usadas, os testes e loops
realizados pelo algoritmo.

Passo 2 (Equipe)
Apresentar, para mostrar que o algoritmo desenvolvido, no Passo 1 dessa Etapa, funciona
corretamente, testes numricos (pelo menos trs testes oriundos de base de dados distintas)
que validem a soluo proposta.



CST em Redes de Computadores 3 Srie Programao Estruturada

Jaqueline Brigladori Pugliesi, Jeanne Dobgenski, Marcelo Augusto Cicogna
Pg. 9 de 10

Passo 3 (Equipe)
Documentar essa etapa de estudos apresentando quais foram os resultados alcanados em
cada Passo. Por isso, elaborar um relatrio (at 6 pginas), a ser entregue ao gerente do
projeto - professor da disciplina, contendo capa, sumrio, descrio do algoritmo
explicando a lgica utilizada, apresentao dos testes e referncias bibliogrficas. Em anexo
colocar a listagem do cdigo fonte.


ETAPA 4 (tempo para realizao: 5 horas)

Aula tema: Uso de vetores e matrizes. Registros. Ponteiros e sua aplicao.
Esta atividade importante para que voc exercite o uso de matrizes, implementando-
as em C e verifique o uso de estrutura de dados distintas.
Para realiz-la importante seguir os passos descritos.

PASSOS

Passo 1 (Equipe)
Considerar que o algoritmo implementado na Etapa 1 do Passo 3 dever ser ampliado de
forma a apresentar a mdia, o menor e maior valor das cotaes de todas as moedas que o
aplicativo suportar.
Definir uma matriz como estrutura para guardar as informaes das cotaes dirias
de cada moeda, sendo que as linhas devero corresponder moeda e as colunas aos dias do
ms. Para identificao de cada moeda, usar um vetor, sendo que a posio do vetor em que
uma moeda est alocada corresponda linha da matriz que contm suas cotaes dirias.
Dica: analisem o cdigo fonte da pgina do conversor do UOL Economia. Disponvel
em: <http://economia.uol.com.br/cotacoes>. Acesso em: 15 set. 2012. Peguem as 66 moedas
que esse conversor utiliza para o programa em desenvolvimento.

Passo 2 (Equipe)
Considerar que outra solicitao feita pelo diretor da agncia que o aplicativo mostre a
mdia, maior e menor valor da cotao de uma moeda dentro de perodos pr-definidos.
Na Tabela 1 constam os perodos que devero ser adicionados ao algoritmo e as
informaes que devero ser apresentadas.

Tabela 1: Parmetros para a realizao dos testes computacionais
Perodo do ms
para anlise
Mdia das cotaes
no perodo
Menor cotao
no perodo
Maior cotao
no perodo
1. ao 10. dia
11. ao 20. dia
21. ao 30. dia
Ms completo

importante que o algoritmo permita que o usurio escolha o perodo que quer
verificar a mdia, menor e maior cotao da moeda. Mas, alm disso, dever permitir a
escolha de todas as estatsticas.
CST em Redes de Computadores 3 Srie Programao Estruturada

Jaqueline Brigladori Pugliesi, Jeanne Dobgenski, Marcelo Augusto Cicogna
Pg. 10 de 10

A equipe dever apresentar o pseudocdigo do algoritmo que foi alterado para
atender o solicitado nesse Passo.

Passo 3 (Equipe)
Considerar que a equipe resolveu impressionar o gerente de projetos. Para isso, resolveram
apresentar os dados, que so solicitados na Tabela 1 do Passo anterior, em forma de grfico.
Mas o grupo est dividido: alguns acham mais simples usar as sadas do programa e jogar no
Excel para plotar o grfico; outros querem implementar o grfico dentro do prprio sistema e
usando C.
Voc e seus colegas de equipe devero escolher a forma que acharem mais adequada e
que, de preferncia, contribua mais efetivamente para a formao de todos.

Passo 4 (Equipe)
Documentar os estudos desenvolvidos.
Portanto, elaborar o relatrio final que ser entregue ao gerente do projeto, contendo
capa, sumrio, descrio do que foi realizado em cada Passo, os testes que mostrem o
funcionamento do programa e as referncias bibliogrficas. Em anexo colocar a listagem do
cdigo fonte.

Livro Texto da Disciplina

MIZRAHI, Victorine V.. Treinamento em Linguagem C. 2 ed. So Paulo: Pearson, 2008.

Você também pode gostar