quinta-feira, 24 de julho de 2008

Comparando linguagens

A melhor maneira de comparar diferentes linguagens de programação é comparar uma mesma seqüência de comandos escrita nas linguagens analisadas. Este exercício também é muito útil quando se deseja começar a aprender uma nova linguagem, tendo conhecimento prévio de outra.

O exemplo abaixo consiste em ligar o motor A por 4s no sentido direto, após parar o motor A, deve-se acender a luz A por 1s e apagá-la em seguida. Se o sensor de toque da porta 1 estiver pressionado, o motor A deve ser ligado no sentido reverso por 2s e parar. Se não for pressionado, nenhuma ação será tomada. O programa deverá ser executado infinitas vezes.

No Robolab, assim ficou a programação:



No FunSoftware, a mesma programação:


E, no NQC:

*/
task main()
{

// infinite loop
while(true)
{
// turning motors on
On(OUT_A);
SetPower(OUT_A, 7);
SetDirection(OUT_A, OUT_FWD);

// waits for a specified amount of time
Wait(400);

// turning outputs off
Off(OUT_A + OUT_B + OUT_C);

// turning a lamp on
On(OUT_A);
SetPower(OUT_A, 7);
// waits for a specified amount of time
Wait(100);

// turning outputs off
Off(OUT_A + OUT_B + OUT_C);

// touch sensor test(branch)
if(SensorType(SENSOR_1) != SENSOR_TYPE_TOUCH)
{
SetSensorType(SENSOR_1, SENSOR_TYPE_TOUCH);
}
if(SENSOR_1 == true)
{
// turning motors on
On(OUT_A);
SetPower(OUT_A, 7);
SetDirection(OUT_A, OUT_REV);

// waits for a specified amount of time
Wait(200);

// turning outputs off
Off(OUT_A);

}
}

}


Desafio: o que significa o sinal abaixo do looping na programação do FunSoftware (que parece um oito deitado)?

12 comentários:

Anônimo disse...

é um loop eterno :)


O símbolo do oito deitado significa "INFINITO"


DIEGO 8ªB

Guilherme disse...

É o símbolo do infinito

Anônimo disse...

Loopim infinito

Lucas H 7ª A

Guilherme disse...

Ei Paulo apesar do robolab não ser o melhor software de programação de robôs, mas é bem melhor q o FunSoftware

Pedro Meira disse...

É um looping infinito.

Lucas Vinicius disse...

Infinito!!!!!!!!!!

Lucas-8ªB

Paulo Marcelo Pontes disse...

Foi fácil, não? É o símbolo de infinito mesmo.

Agora um desafio um pouco mais complicado: quem foi a primeira pessoa a utilizar esse símbolo para o infinito?

Anônimo disse...

significa infinito

Anônimo disse...

sei lá

Anônimo disse...

foi o bouze light yeah!!!!

Moral Jogos disse...

foi o bouze light yeah porque ele sempre diz: ao INFINITO e além!
e ele disse antes de "nóis"!

Guilherme disse...

Marcy Miller