aula prática 1 aula de apresentação monitoria 2009.2
TRANSCRIPT
![Page 1: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/1.jpg)
Aula Prática 1
Aula de apresentação
Monitoria 2009.2
![Page 2: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/2.jpg)
Apresentação do corpo de monitores Divisão dos alunos por monitor Listas de exercícios/Exercícios de aula Apresentação do site da disciplina Apresentação à IDE Code::Blocks Exercícios
![Page 3: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/3.jpg)
Crystal Santos ([email protected]) Eduardo Rocha ([email protected]) Fred Rabelo ([email protected]) Helder Cavalcanti ([email protected]) Henrique Figueirôa ([email protected]) Josiane Bezerra ([email protected]) Marcelo Lima ([email protected]) Ronald Dener ([email protected]) Vanessa Larize ([email protected]) Vitor Albuquerque ([email protected])
![Page 4: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/4.jpg)
Durante o curso teremos 5 listas de exercícios.
Valem 30% da nota da primeira unidade.
![Page 5: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/5.jpg)
Composição da nota
Lógica de programação – 70% da nota Endentação – 10% da nota Modularização – 10% da nota Comentários – 10% da nota
![Page 6: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/6.jpg)
As listas de exercícios deverão ser enviadas para o email [email protected] com cópia para o e-mail do seu monitor até a data e horário limites previamente estabelecidos (listas enviadas fora do horário não serão aceitas).
O assunto do e-mail da lista deverá seguir o seguinte padrão: [Lista IP] [Número da Lista] [Al: Login do aluno] [Mo: Login do monitor]
![Page 7: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/7.jpg)
Exemplo:
[Lista IP] [1] [Al: cms4] [Mo: vlac]
![Page 8: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/8.jpg)
As questões da lista devem ser enviadas compactadas em um arquivo .rar ou .zip cujo nome deve seguir o seguinte padrão:
Lista IP X – login do aluno
![Page 9: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/9.jpg)
Exemplo
Lista IP 3 – cms4.zip
![Page 10: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/10.jpg)
Cada questão deve estar contida em um arquivo .c.
O nome de cada arquivo .c deve seguir o seguinte padrão:
LxQy.c
Onde “x” representa o numero da listae “y” representa o numero da questão
![Page 11: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/11.jpg)
Exemplo
L1Q3.c
![Page 12: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/12.jpg)
O aluno que obtiver 90% de aproveitamento nos exercícios de aula terá direito de fazer uma questão extra na prova valendo 1 ponto extra na nota da segunda prova.
Os alunos deverão enviar os exercícios até o final da aula prática para o e-mail [email protected] com cópia para o e-mail do seu monitor.
![Page 13: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/13.jpg)
Os e-mail de dúvidas devem ser enviados para os e-mails dos seus respectivos monitores com o assunto [Monitoria IP].
Os monitores tem horários reservados para tirar dúvidas pessoalmente. Confira no site da disciplina.
![Page 14: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/14.jpg)
Os padrões para envio dos exercícios de aula são:
Assunto: [Aula Prática IP] [Número da aula prática] [login do aluno] [login do monitor]
Anexo: Aula X – login do aluno.rar
Nome dos arquivos .C: APxQy.c, onde x representa o numero da aula prática e y o número da questão.
![Page 15: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/15.jpg)
O site da disciplina pode ser acessado através do endereço: http://www.cin.ufpe.br/~if669ec.
Nele serão disponibilizadas as listas de exercício, avisos, notas, conteúdo
programático, etc.
![Page 16: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/16.jpg)
Durante o curso teremos 5 mini-provas.
Valem 20% da nota da primeira unidade.
![Page 17: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/17.jpg)
Foi adotada a IDE* Code::Blocks em conjunto com o compilador MinGW nas aulas práticas
da disciplina. O uso de uma IDE visa aumentar a produtividade e ter a disposição uma série
de ferramentas de auxílio num único ambiente.
*IDE – Integrated Development Enviroment ou Ambiente de Desenvolvimento Integrado
![Page 18: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/18.jpg)
O Code::Blocks pode ter sua versão mais recente (8.02) baixada no site oficial
(www.codeblocks.org/downloads/5). No site oficial há versões para Windows, Linux e MacOS.
Para praticidade pode também ser utilizado o pacote disponível no site da disciplina na seção de downloads. Somente versão para Windows.
![Page 19: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/19.jpg)
Versão disponível no site da disciplina
![Page 20: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/20.jpg)
Baixe o arquivo ZIP na área de downloads do site da disciplina.
![Page 21: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/21.jpg)
Descompacte num diretório da sua preferência.
![Page 22: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/22.jpg)
Execute o arquivo codeblocks.exe
![Page 23: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/23.jpg)
Versão disponível no site oficial
![Page 24: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/24.jpg)
Instalação para Windows No site oficial, baixe o arquivo codeblocks-
8.02mingw-setup.exe. Siga os passos da instalação. Execute a aplicação.
![Page 25: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/25.jpg)
Instalação para Linux (Ubuntu) sudo apt-get install build-essential sudo apt-get install libwxgtk2.8-0 Baixar codeblocks_8.02-0ubuntu1.deb.tar.gz Descompactar (tar -zxf code...tar.gz) Entrar no diretório criado sudo dpkg -i *.deb Executar a aplicação (pelo menu ou pelo
console através do comando codeblocks)
![Page 26: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/26.jpg)
Criar um projeto para Console Application
![Page 27: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/27.jpg)
Selecionar Console Application
![Page 28: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/28.jpg)
Selecionar C apertar em Next
![Page 29: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/29.jpg)
Em Project Title, colocar Primeiro Projeto Em Folder ... in, colocar H:\CB_Projects\ apertar em
Next e na tela seguinte, Finish.
Apertar em Next e na tela seguinte, Finish.
![Page 30: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/30.jpg)
Selecionar o projeto na lista lateral
![Page 31: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/31.jpg)
Apertar F9
![Page 32: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/32.jpg)
Editar o arquivo do projeto
Clicar nas setinha ao lado Primeiro Projeto
![Page 33: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/33.jpg)
Clicar na setinha ao lado da pasta Sources.
![Page 34: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/34.jpg)
Clicar em main.c, o modo de edição seráaberto. Modifique “Hello world!\n” por “Oi, mundo!\n”
![Page 35: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/35.jpg)
Aperte F9
![Page 36: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/36.jpg)
Uma função é um bloco de código de programa que pode ser usado diversas vezes em sua execução. O uso de funções permite que o programa fique mais legível, mais bem estruturado. Um programa em C consiste, no fundo, de várias funções colocadas juntas.
![Page 37: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/37.jpg)
#include <stdio.h> void mensagem () /* Funcao simples: so imprime Ola! */ { printf ("Ola! "); } void main () { mensagem(); printf ("Eu estou vivo!\n"); }
![Page 38: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/38.jpg)
Argumentos são as entradas que a função recebe. É através dos argumentos que passamos parâmetros para a função.
Muitas vezes é necessário fazer com que uma função retorne um valor. Podemos especificar um tipo de retorno indicando-o antes do nome da função. Mas para dizer ao C o que vamos retornar precisamos da palavra reservada return.
![Page 39: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/39.jpg)
Apresentamos aqui a forma geral de uma função:
tipo_de_retorno nome_da_função (lista_de_argumentos) { código_da_função }
![Page 40: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/40.jpg)
A função printf() tem a seguinte forma geral:
printf (string_de_controle,lista_de_argumentos);
![Page 41: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/41.jpg)
O formato geral da função scanf() é:
scanf (string-de-controle,lista-de-argumentos);
![Page 42: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/42.jpg)
Apresentamos agora alguns dos códigos %:
![Page 43: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/43.jpg)
1. Média Aritmética
Faça um programa que receba dois números (float) do usuário e retorne a média aritmética dos número. (OBS.: Use uma função para calcular a média aritmética).
Arquivo: AP1Q1.c
![Page 44: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/44.jpg)
2. Interagindo com o usuário Fazer um programa que pergunte “Qual o seu
ano de nascimento?” Capture de alguma forma a resposta do usuário. Escreva na tela “Seu ano de nascimento e: <ano de nascimento capturado>!”
Arquivo: AP1Q2.c
![Page 45: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/45.jpg)
3. Usando funções Criar uma função soma que recebe dois
parâmetros inteiros e retorna a multiplicação dos dois valores recebidos.
Perguntar dois números ao usuário e imprimir a multiplicação dos dois números utilizando esta função para o cálculo.
Arquivo: AP1Q3.c
![Page 46: Aula Prática 1 Aula de apresentação Monitoria 2009.2](https://reader035.vdocuments.mx/reader035/viewer/2022062223/5706386d1a28abb823905fab/html5/thumbnails/46.jpg)
???