Prática de Programação

Como será esta disciplina?

[Até o 1o GQ: Desafios - Maratona de Programação]

pré-requisitos

1. Acessar o site SPOJ Brasil https://br.spoj.pl/

2. Criar uma conta individual [login e senha] no site

como funcionará?

1. A cada aula, desafios serão sugeridos [diferentes alunos poderão receber diferentes desafios] e deverão ser solucionados, individualmente, no laboratório [não poderão ser feitos em casa];

2. Os desafios sugeridos em sala [através do ID] deverão ser submetidos ao SPOJ Brasil. O site possui um juiz online para validação da solução [que poderá ser entregue em C/C++/Java];

3. Cada solução entregue somará pontos para compor a nota final;

4. No dia do 1o GQ, cada aluno deverá me apresentar o status com todas as questões feitas (e com os horários e datas de entrega). Questões em atraso terão uma penalização de 50%.

DESAFIO EXTRA: Passeio do Cavalo

Instruções para simular entradas e saídas no seu programa C (mesma estratégia utilizada pelo SPOJ)

1. Abrir o CMD

2. Ir até o diretório onde se encontra o seu arquivo .c

3. Compilar o arquivo C e gerar o executável

Exemplo:

D:\>gcc Arquivo.c -o Arquivo.exe

4. Crie um arquivo com as entradas que seu programa deve receber. Semelhante as entradas apresentadas no SPOJ.

Exemplo:

10000

1000

9999

1

2

3

4

5

7

11

13

15

17

19

23

29

0

Salve este arquivo como entrada.txt, por exemplo.

5. No CMD, rode seu programa jogando as entradas que você criou e indique o lugar onde a saída deve ser gerada.

Exemplo: D:\>Arquivo.exe < entrada.txt > saida.txt

Esta é forma como as analises são feitas no SPOJ [http://www.eduoliveira.com/aulas-1/praticaprogramacao].

Após jogar as mesmas entradas no seu programa e no programa oficial, o juiz compara a saida do seu programa com a saida do programa dele. Por isso que temos que ter

cuidado com printf, system("pause"), etc...

PROJETOS 2oGQ:

pré-requisitos

1. Todos terão aulas de Android [introdução];

como funcionará?

1. Projetos serão definidos e desenvolvidos [em equipe de até 4 pessoas] em sala de aula;

2. Todas as equipes deverão entregar: Documentos listados abaixo;

AVALIAÇÃO: desafios (1o GQ) + projeto (2o GQ)

- DOCUMENTAÇÃO EXIGIDA PARA O 2o GQ

Para a divulgação da nota, os seguintes documentos deverão ser entregues:

- Documento (.DOC) com no máximo 10 páginas, contendo: Capa com titulo do projeto e nome dos alunos, motivação para o desenvolvimento do projeto, tecnologias utilizadas, principais

dificuldades encontradas ao longo do desenvolvimento do projeto e detalhamento sobre a solução empregada.

- Código fonte + roteiro para a configuração e a execução do projeto (caso precise utilizar banco de dados, frameworks, ...)

- Código executável

- PPT

- PROTÓTIPO DA APLICAÇÃO

Apresentações dia XX/XX.

20mins para cada equipe. 10mins de apresentação teórica + 10mins de apresentação do projeto (prática).

[Referências - Android]

ANDROID

passo a passo:

Baixar o SDK Android para o windows em:

http://dl.google.com/android/installer_r20.0.3-windows.exe

Após baixar e instalar o SDK (o diretório que você instalou será utilizado futuramente para o ADT, plugin do Android).

Quando o instalador terminar, lançar o SDK Manager (ele é lançado automaticamente ao clicar em next no final do installer do SDK. Caso não apareça a opção de instalação do SDK Manager, clicar nele na barra de ferramentas no eclipse, no pacote que você baixou) e baixar apenas os targets nos quais iremos trabalhar. Por exemplo, se vamos trabalhar com o Android Jelly Bean, baixar apenas a última versão do Android (se botar para baixar todas as versões, froyo, ginger bread, honey comb, etc, vai demorar MUITO).

Depois disso, instalar o ADT. Instalar como um plugin qualquer do Eclipse, o endereço é: https://dl-ssl.google.com/android/eclipse/

Depois precisaremos atualizar o ADT em Help > Check for updates.

Depois que atualizar o ADT, o ambiente estará OK.

O tutorial completo está aqui: http://developer.android.com/sdk/installing/index.html

- Android SDK

- Eclipse

- [ANDROID] AULAS [PPT] - atualizado [27/09/13]

- Lista de Exercícios 1 - atualizado [18/09/13]

- Codigo FirstApp [27/09/13]

- Codigo 1 [fundamentos]

- Codigo List View

- Codigo BD

-Listas Prática de Programação [revisão de conteúdos já vistos]

- Lista 1 (vetores)

- Lista 2 (vetores)

- Lista 3 (matrizes)

- Lista 4 (strings)

- Lista 5 (struct)

- Lista 6 (funções)

- Lista 7 (ponteiros)

- Lista 8 (recursividade)

- Lista 9 (alocação dinâmica e listas encadeadas)

- Lista 10 (pilhas)

Referências [livros]:

- CORMEN, Thomas H. Algoritmos: teoria e pratica. Rio de Janeiro: Campus, 2002.

- ASCENCIO, A. F. G., CAMPOS, E. A. V. Fundamentos de programação de computadores. São Paulo: Prentice Hall, 2002.

- FARRER, H. et al. Programação estruturada de computadores: algoritmos estruturados. Rio de Janeiro: LTC, 1999.

- FORBELLONE, A. L. V., EBERSPACHER, H. F. Lógica de Programação: a construção de algoritmos e estrutura de dados. São Paulo: Makron Books, 1993.