Aula Prática 1 Aula de Apresentação Monitoria 2013.1 Introdução à Programação.
-
Upload
diego-leveck-caetano -
Category
Documents
-
view
215 -
download
1
Transcript of Aula Prática 1 Aula de Apresentação Monitoria 2013.1 Introdução à Programação.
Aula Prática 1Aula Prática 1Aula de ApresentaçãoAula de Apresentação
Monitoria 2013.1Monitoria 2013.1
Introdução à Programação
RoteiroRoteiro
Apresentação do Corpo de monitoresApresentação do Corpo de monitores Divisão dos alunos por monitorDivisão dos alunos por monitor Lista de exercícios/Exercícios de aulaLista de exercícios/Exercícios de aula Apresentação do site da disciplinaApresentação do site da disciplina Apresentação da IDE Code::BlocksApresentação da IDE Code::Blocks ExercíciosExercícios
Corpo de monitoresCorpo de monitores
http://www.cin.ufpe.br/~if669ec/monitoriahttp://www.cin.ufpe.br/~if669ec/monitoria
Listas de exercícioListas de exercício
Durante o semestre havéra 6 listas de Durante o semestre havéra 6 listas de exercício.exercício.
As listas valerão 30% das notas da As listas valerão 30% das notas da primeira e segunda unidades.primeira e segunda unidades.
Todas as listas foram formuladas e serão Todas as listas foram formuladas e serão corrigidas pelos monitores.corrigidas pelos monitores.
Listas de exercícioListas de exercício
1ª Unidade1ª Unidade Prova (70%)Prova (70%) Listas 1, 2 e 3 (30%)Listas 1, 2 e 3 (30%)
2ª Unidade2ª Unidade Prova (70%)Prova (70%) Listas 4, 5 e 6 (30%)Listas 4, 5 e 6 (30%)
3ª Unidade3ª Unidade Prova (60%)Prova (60%) Projeto (40%)Projeto (40%)
* Na primeira e segunda unidade caso a média entre as 3 listas da unidade correspondente seja maior ou igual a 8 a nota da prova da unidade será acrescida de 0,5.
Listas de exercícioListas de exercício
Lógica de programação – 70% da notaLógica de programação – 70% da nota
Modularização – 20% da nota.Modularização – 20% da nota.
Legibilidade – 10% da nota.Legibilidade – 10% da nota.
Composição da nota
Listas de exercícioListas de exercício
As listas deverão ser entregues pelo sistema de As listas deverão ser entregues pelo sistema de submissão:submissão:
Sistema de submissão
Listas de exercícioListas de exercício
As listas só serão aceitas até a hora As listas só serão aceitas até a hora especificada na página do sistema, especificada na página do sistema, portanto preocupem-se em mandar em um portanto preocupem-se em mandar em um horário confortável.horário confortável.
Caso a lista seja enviada mais de uma vez, Caso a lista seja enviada mais de uma vez, a antiga será substituida.a antiga será substituida.
Listas de exercícioListas de exercício
Deve ser enviado apenas o arquivo com Deve ser enviado apenas o arquivo com extensão .cextensão .c
O nome de cada arquivo .c deve seguir o O nome de cada arquivo .c deve seguir o padrão:padrão:
LxQyLxQy..Onde “x” representa o numero da lista eOnde “x” representa o numero da lista e
“ “y” representa o numero da questão.y” representa o numero da questão.Exemplo: L1Q3.cExemplo: L1Q3.c
Aula PráticaAula Prática
O aluno com pelo menos 80% de O aluno com pelo menos 80% de aproveitamento nas aulas práticas terá aproveitamento nas aulas práticas terá direito à 1 ponto extra na terceira nota.direito à 1 ponto extra na terceira nota.
Os alunos deverão enviar os exercícios até Os alunos deverão enviar os exercícios até as 23:59 do dia da aula prática através do as 23:59 do dia da aula prática através do site do sistema de submissão.site do sistema de submissão.
Os arquivos enviados deve seguir o padrãoOs arquivos enviados deve seguir o padrão
APxQy.cAPxQy.cMesmo formato das listas.Mesmo formato das listas.
Exemplo: “AP3Q2.c”Exemplo: “AP3Q2.c”
DúvidasDúvidas
Os e-mails de dúvidas deverão ser enviados Os e-mails de dúvidas deverão ser enviados para o e-mail do seu monitor com o assunto para o e-mail do seu monitor com o assunto [Monitoria IP][Monitoria IP]
Ou enviados para o grupo: Ou enviados para o grupo: [email protected]@googlegroups.com (grupo com (grupo com monitores e alunos)monitores e alunos)
Para tratar apenas com os monitores envie Para tratar apenas com os monitores envie um e-mail para:um e-mail para:[email protected]@googlegroups.com
Site da disciplinaSite da disciplina
O site da disciplina pode ser acessado O site da disciplina pode ser acessado através do endereço:através do endereço:
www.cin.ufpe.br/~if669ecwww.cin.ufpe.br/~if669ec
Nele serão disponibilizadas as listas de Nele serão disponibilizadas as listas de exercícios, avisos, notas, conteúdo exercícios, avisos, notas, conteúdo programática, etc.programática, etc.
Code::BlocksCode::Blocks
Foi adotada a IDE* Code::Blocks em conjunto com o Foi adotada a IDE* Code::Blocks em conjunto com o compilador MinGW** nas aulas práticas da compilador MinGW** nas aulas práticas da disciplina. O uso de uma IDE visa aumentar a disciplina. O uso de uma IDE visa aumentar a produtividade e ter à disposição uma série de produtividade e ter à disposição uma série de ferramentas de auxílio num único ambiente.ferramentas de auxílio num único ambiente.
* Integrated Development Environment, ou Ambiente de * Integrated Development Environment, ou Ambiente de Desenvolvimento Integrado.Desenvolvimento Integrado.** Minimalistic GNU for Windows, um port do GNU Compiler ** Minimalistic GNU for Windows, um port do GNU Compiler Collection para Windows.Collection para Windows.
Code::BlocksCode::Blocks
Pode ser usada a versão mais recente do Pode ser usada a versão mais recente do Code::Blocks, disponível no site oficial:Code::Blocks, disponível no site oficial:
http://www.codeblocks.org/downloadshttp://www.codeblocks.org/downloads No site oficial há versões para Windows, Linux e No site oficial há versões para Windows, Linux e
MacOS.MacOS.
Para praticidade, está disponível no site da disciplina Para praticidade, está disponível no site da disciplina o pacote completo, no menu do lado direito o pacote completo, no menu do lado direito (Somente a versão para Windows).(Somente a versão para Windows).
Instalando o Instalando o Code::BlocksCode::Blocks
Baixe o pacote disponível no site da disciplina:Baixe o pacote disponível no site da disciplina:
http://cin.ufpe.br/~if669ec/files/CB_4551_alleg.ziphttp://cin.ufpe.br/~if669ec/files/CB_4551_alleg.zip
Descompacte num diretório da sua preferência.Descompacte num diretório da sua preferência.Sugestão : C\temp\CodeBlocksSugestão : C\temp\CodeBlocks
Usando o Usando o Code::BlocksCode::Blocks
Execute o arquivo “codeblocks.exe”.Execute o arquivo “codeblocks.exe”. Crie um projeto do tipo “Console Application”.Crie um projeto do tipo “Console Application”.
Usando o Usando o Code::BlocksCode::Blocks
Selecione c, em seguida clique em Next.Selecione c, em seguida clique em Next.
Usando o Usando o Code::BlocksCode::Blocks
Em Project Title, coloque qualquer nome.Em Project Title, coloque qualquer nome. Em Folder... In, coloque H:\CB_Projects\ e aperte Em Folder... In, coloque H:\CB_Projects\ e aperte
em Next.em Next.
Clique em Next e na tela seguinte, Finish.Clique em Next e na tela seguinte, Finish.
Usando o Usando o Code::BlocksCode::Blocks
Na lista lateral, clique no projeto.Na lista lateral, clique no projeto.
Usando o Usando o Code::BlocksCode::Blocks
Aperte F9 para executar o projeto atual.Aperte F9 para executar o projeto atual.
Usando o Usando o Code::BlocksCode::Blocks
Para editar o arquivo contendo o código expanda a Para editar o arquivo contendo o código expanda a pasta “Primeiro projeto”.pasta “Primeiro projeto”.
Expanda a pasta “Sources”.Expanda a pasta “Sources”.
Usando o Usando o Code::BlocksCode::Blocks
Abra o arquivo “main.c”, e o editor do Abra o arquivo “main.c”, e o editor do Code::Blocks será aberto.Code::Blocks será aberto.
Modifique “Hello world!\n” por “Oi, mundo!\n”Modifique “Hello world!\n” por “Oi, mundo!\n”
Usando o Usando o Code::BlocksCode::Blocks
Compile e execute (Apertando F9).Compile e execute (Apertando F9).
Função printf(char*,...)Função printf(char*,...)
A função printf() imprime dados na saída padrão A função printf() imprime dados na saída padrão (stdout).(stdout).
Ela tem a seguinte assinatura:Ela tem a seguinte assinatura: int printf( const char * format, ... )int printf( const char * format, ... )
format é a string de controle, dizendo qual a formatação dos dadosformat é a string de controle, dizendo qual a formatação dos dados Os outros argumentos passados são os dados a ser exibidos.Os outros argumentos passados são os dados a ser exibidos.
Exemplos:Exemplos:printf(“Ola mundo\n”);printf(“Ola mundo\n”);
printf(“Hoje e dia %d/%d”,23,8);printf(“Hoje e dia %d/%d”,23,8);
Função scanf(char*,...)Função scanf(char*,...)
A função scanf() recebe dados da entrada padrão A função scanf() recebe dados da entrada padrão (stdin).(stdin).
Ela tem a seguinte assinatura:Ela tem a seguinte assinatura: int scanf( const char * format, ... )int scanf( const char * format, ... )
format é a string de controle, dizendo qual a formatação dos dadosformat é a string de controle, dizendo qual a formatação dos dados Os outros argumentos passados são para onde os dados serão lidos.Os outros argumentos passados são para onde os dados serão lidos.
Exemplos:Exemplos:scanf(“%d”, &idade);scanf(“%d”, &idade);
scanf(“%d/%d”,&dia,&mes);scanf(“%d/%d”,&dia,&mes);
Função scanf(char*,...)Função scanf(char*,...)
Alguns códigos de formataçãoAlguns códigos de formatação
Mais códigos:Mais códigos:scanfscanfprintfprintf
Código Significado%d Inteiro%f Float%c Caractere%s String%% Imprime % na
tela
Dúvidas?Dúvidas?
Exercício 1Exercício 1
Escreva um programa que calcule a idade Escreva um programa que calcule a idade que o usuário terá no ano atual. O programa que o usuário terá no ano atual. O programa receberá 2 anos (inteiros) como entrada e receberá 2 anos (inteiros) como entrada e deverá imprimir a idade atual do usuário.deverá imprimir a idade atual do usuário.
Exemplo:Exemplo:Entrada:Entrada: 1992 // Ano de Nascimento1992 // Ano de Nascimento
20132013 // Ano atual // Ano atual Saída: 21 anosSaída: 21 anos
Exercício 2Exercício 2
Em criptografia, a Cifra de César, é uma das mais Em criptografia, a Cifra de César, é uma das mais simples e conhecidas técnicas de criptografia. É um simples e conhecidas técnicas de criptografia. É um tipo de cifra de substituição na qual cada letra do tipo de cifra de substituição na qual cada letra do texto é substituída por outra, que se apresenta no texto é substituída por outra, que se apresenta no alfabeto abaixo dela um número fixo de alfabeto abaixo dela um número fixo de vezes. Escreva um programa que receba 3 letras e vezes. Escreva um programa que receba 3 letras e uma chave (inteiro) e criptografe de acordo com a uma chave (inteiro) e criptografe de acordo com a cifra de césar.cifra de césar.
Exemplo:Exemplo:Entrada: asa 3 Entrada: asa 3 Saída: dvdSaída: dvd
Exercício 3Exercício 3
Faça um programa que receba uma Faça um programa que receba uma quantidade inteira de minutos e calcule quantidade inteira de minutos e calcule quantas horas e segundos completos quantas horas e segundos completos correspondem a essa quantia. Imprima o correspondem a essa quantia. Imprima o resultado. resultado.
Exemplo:Exemplo: Entrada: 3665 //segundosEntrada: 3665 //segundos Saída: 1 hora(s) 1 minuto(s) 5 segundo(s)Saída: 1 hora(s) 1 minuto(s) 5 segundo(s)