Mudanças entre as edições de "Sistemas Operacionais e Introdução a Programação - atividades extraclasse 2010-1"
Ir para navegação
Ir para pesquisar
Linha 72: | Linha 72: | ||
==Semana 2== | ==Semana 2== | ||
+ | * A partir dessa semana, seré usado o [http://www.dei.estt.ipt.pt/portugol/node/33 Portugol IDE] como ferramenta didática. | ||
+ | |||
+ | ===Atividades-problema=== | ||
+ | * Apresente um programa que mostre, em sequência: 9, 9^2 (ao quadrado), 9^3 (ao cubo) e a soma desses 3 números. | ||
+ | inicio | ||
+ | |||
+ | inteiro VAR1 | ||
+ | VAR1 <- 9 | ||
+ | escrever VAR1 | ||
+ | |||
+ | escrever "\n" | ||
+ | |||
+ | inteiro VAR2 | ||
+ | VAR2 <- 9 * 9 | ||
+ | escrever VAR2 | ||
+ | |||
+ | escrever "\n" | ||
+ | |||
+ | inteiro VAR3 | ||
+ | VAR3 <- 9 * 9 * 9 | ||
+ | escrever VAR3 | ||
+ | |||
+ | escrever "\n" | ||
+ | |||
+ | inteiro SOMA | ||
+ | SOMA <- VAR1 + VAR2 + VAR3 | ||
+ | escrever SOMA | ||
+ | fim | ||
+ | |||
+ | * A sequência de Fibonacci: apenas os primeiros 10 números da sequência. | ||
+ | INICIO | ||
+ | |||
+ | INTEIRO VARIAVEL_1 | ||
+ | INTEIRO VARIAVEL_2 | ||
+ | INTEIRO SOMA | ||
+ | |||
+ | VARIAVEL_1 <- 1 | ||
+ | VARIAVEL_2 <- 1 | ||
+ | |||
+ | ESCREVER VARIAVEL_1, "\n" | ||
+ | ESCREVER VARIAVEL_1, "\n" | ||
+ | |||
+ | SOMA <- VARIAVEL_1 + VARIAVEL_2 | ||
+ | ESCREVER SOMA, "\n" | ||
+ | |||
+ | VARIAVEL_1 <- VARIAVEL_2 | ||
+ | VARIAVEL_2 <- SOMA | ||
+ | SOMA <- VARIAVEL_1 + VARIAVEL_2 | ||
+ | ESCREVER SOMA, "\n" | ||
+ | |||
+ | VARIAVEL_1 <- VARIAVEL_2 | ||
+ | VARIAVEL_2 <- SOMA | ||
+ | SOMA <- VARIAVEL_1 + VARIAVEL_2 | ||
+ | ESCREVER SOMA, "\n" | ||
+ | |||
+ | VARIAVEL_1 <- VARIAVEL_2 | ||
+ | VARIAVEL_2 <- SOMA | ||
+ | SOMA <- VARIAVEL_1 + VARIAVEL_2 | ||
+ | ESCREVER SOMA, "\n" | ||
+ | |||
+ | VARIAVEL_1 <- VARIAVEL_2 | ||
+ | VARIAVEL_2 <- SOMA | ||
+ | SOMA <- VARIAVEL_1 + VARIAVEL_2 | ||
+ | ESCREVER SOMA, "\n" | ||
+ | |||
+ | VARIAVEL_1 <- VARIAVEL_2 | ||
+ | VARIAVEL_2 <- SOMA | ||
+ | SOMA <- VARIAVEL_1 + VARIAVEL_2 | ||
+ | ESCREVER SOMA, "\n" | ||
+ | |||
+ | VARIAVEL_1 <- VARIAVEL_2 | ||
+ | VARIAVEL_2 <- SOMA | ||
+ | SOMA <- VARIAVEL_1 + VARIAVEL_2 | ||
+ | ESCREVER SOMA, "\n" | ||
+ | |||
+ | VARIAVEL_1 <- VARIAVEL_2 | ||
+ | VARIAVEL_2 <- SOMA | ||
+ | SOMA <- VARIAVEL_1 + VARIAVEL_2 | ||
+ | ESCREVER SOMA, "\n" | ||
+ | |||
+ | VARIAVEL_1 <- VARIAVEL_2 | ||
+ | VARIAVEL_2 <- SOMA | ||
+ | SOMA <- VARIAVEL_1 + VARIAVEL_2 | ||
+ | ESCREVER SOMA, "\n" | ||
+ | |||
+ | FIM | ||
+ | |||
+ | * O mesmo problema acima, desta vez resolvido com apenas duas variáveis (solução do Luiz Henrique) | ||
+ | inicio | ||
+ | |||
+ | inteiro var1, var2 | ||
+ | var1 <- 1 | ||
+ | escrever var1 | ||
+ | escrever "\n" | ||
+ | escrever var1 | ||
+ | escrever "\n" | ||
+ | |||
+ | var2 <- var1 + var1 | ||
+ | escrever var2 | ||
+ | escrever "\n" | ||
+ | escrever var1 + var2 | ||
+ | |||
+ | var1 <- var1 + var2 | ||
+ | escrever "\n" | ||
+ | escrever var1 + var2 | ||
+ | |||
+ | var2 <- var1 + var2 | ||
+ | escrever "\n" | ||
+ | escrever var2 + var1 | ||
+ | var1 <- var2 + var1 | ||
+ | |||
+ | fim | ||
+ | |||
==Semana 3== | ==Semana 3== | ||
==Semana 4== | ==Semana 4== |
Edição das 05h13min de 8 de abril de 2010
Lógica de Programação
Semana 1
São vistos os conceitos básicos de lógica de programação: instrução, algoritmo, sintaxe.
Para fins didáticos, pode-se usar a linguagem Logo através do programa Kturtle.
Linguagem Logo
Para desenhos simples, bastam apenas as seguintes instruções:
- reset
- forward NÚMERO
- turnright NÚMERO
- turnleft NÚMERO
Baseado nesse conjunto de instruções, desenhe:
- Um triângulo equilátero.
- Um triângulo isósceles.
- Um triângulo escaleno.
- Um hexágono.
- Um octógono.
- 7 hexágonos interligados (um central e seis periféricos).
- Uma espiral
Agora, o processo reverso: que desenho será gerado a partir do algoritmo abaixo?
reset repeat 6 { forward 70 turnleft 60 } repeat 6 { forward 70 turnright 60 } turnleft 120 repeat 6 { forward 70 turnleft 60 } forward 70 turnright 60 repeat 6 { forward 70 turnleft 60 } forward 70 turnright 60 repeat 6 { forward 70 turnleft 60 } forward 70 turnright 60 repeat 6 { forward 70 turnleft 60 } forward 70 turnright 60 repeat 6 { forward 70 turnleft 60 }
Jogo: Light Bot
Neste jogo, Light Bot, deve-se programar os movimentos do personagem para avançar à próxima fase.
Semana 2
- A partir dessa semana, seré usado o Portugol IDE como ferramenta didática.
Atividades-problema
- Apresente um programa que mostre, em sequência: 9, 9^2 (ao quadrado), 9^3 (ao cubo) e a soma desses 3 números.
inicio inteiro VAR1 VAR1 <- 9 escrever VAR1 escrever "\n" inteiro VAR2 VAR2 <- 9 * 9 escrever VAR2 escrever "\n" inteiro VAR3 VAR3 <- 9 * 9 * 9 escrever VAR3 escrever "\n" inteiro SOMA SOMA <- VAR1 + VAR2 + VAR3 escrever SOMA fim
- A sequência de Fibonacci: apenas os primeiros 10 números da sequência.
INICIO INTEIRO VARIAVEL_1 INTEIRO VARIAVEL_2 INTEIRO SOMA VARIAVEL_1 <- 1 VARIAVEL_2 <- 1 ESCREVER VARIAVEL_1, "\n" ESCREVER VARIAVEL_1, "\n" SOMA <- VARIAVEL_1 + VARIAVEL_2 ESCREVER SOMA, "\n" VARIAVEL_1 <- VARIAVEL_2 VARIAVEL_2 <- SOMA SOMA <- VARIAVEL_1 + VARIAVEL_2 ESCREVER SOMA, "\n" VARIAVEL_1 <- VARIAVEL_2 VARIAVEL_2 <- SOMA SOMA <- VARIAVEL_1 + VARIAVEL_2 ESCREVER SOMA, "\n" VARIAVEL_1 <- VARIAVEL_2 VARIAVEL_2 <- SOMA SOMA <- VARIAVEL_1 + VARIAVEL_2 ESCREVER SOMA, "\n" VARIAVEL_1 <- VARIAVEL_2 VARIAVEL_2 <- SOMA SOMA <- VARIAVEL_1 + VARIAVEL_2 ESCREVER SOMA, "\n" VARIAVEL_1 <- VARIAVEL_2 VARIAVEL_2 <- SOMA SOMA <- VARIAVEL_1 + VARIAVEL_2 ESCREVER SOMA, "\n" VARIAVEL_1 <- VARIAVEL_2 VARIAVEL_2 <- SOMA SOMA <- VARIAVEL_1 + VARIAVEL_2 ESCREVER SOMA, "\n" VARIAVEL_1 <- VARIAVEL_2 VARIAVEL_2 <- SOMA SOMA <- VARIAVEL_1 + VARIAVEL_2 ESCREVER SOMA, "\n" VARIAVEL_1 <- VARIAVEL_2 VARIAVEL_2 <- SOMA SOMA <- VARIAVEL_1 + VARIAVEL_2 ESCREVER SOMA, "\n" FIM
- O mesmo problema acima, desta vez resolvido com apenas duas variáveis (solução do Luiz Henrique)
inicio inteiro var1, var2 var1 <- 1 escrever var1 escrever "\n" escrever var1 escrever "\n" var2 <- var1 + var1 escrever var2 escrever "\n" escrever var1 + var2 var1 <- var1 + var2 escrever "\n" escrever var1 + var2 var2 <- var1 + var2 escrever "\n" escrever var2 + var1 var1 <- var2 + var1 fim