Pesquisar aqui

Mostrar mensagens com a etiqueta loop while. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta loop while. Mostrar todas as mensagens

segunda-feira, 4 de maio de 2020

Iniciação ao JS: While loop

A estrutura de repetição que vou falar hoje é o while, Esta, em oposição ao for, é normalmente utilizada quando o programador não sabe o número de vezes que o loop terá que se repetir. Esta, para além de muito simples, é também transversal à maioria das linguagens de programação.


Como podem ver neste exemplo, o código dentro do loop é executado enquanto a variável i for verdadeira, no momento em que não o seja, o loop é quebrado o programa não executa o mesmo. É importante denotar que dentro dos parênteses colocamos a condição para que a estrutura seja executada, sendo que a mesma o é, sempre que o que se encontra dentro de parênteses seja True. Ou seja, funciona como um booleano, é executada quando o valor é True e não o é, quando o valor da condição é igual a False.

Imagem produzida pelo autor.

sexta-feira, 10 de janeiro de 2020

C++ - Break/Continue

No C++, existe o break e o continue.

São palavras-chave (keywords) usadas para manipular os loops (while e for).

Break
O break para e termina o loop completamente.

int i = 0;

while(true){
    if(i == 20){
        break;
    }
    i++;
}

O loop supostamente é infinito, dado que a condição "true" é sempre verdadeira.
Porém apenas acontece 20 vezes, dado que temos um i sendo incrementado a cada ciclo e ao fim de 20 temos um break que termina o loop.



Continue
O continue ignora o resto do código do ciclo, passando para o próximo.

for(int i = 0; i < 12; i++){
    cout << "Hey" << endl;
    continue;
    cout << "Man" << endl;
}

Como temos um continue, em vez de em cada ciclo ser feito o print de "Hey", e "Man", apenas é feito o print de "Hey", e "Man", como está depois do continue, é ignorado.


Programa exemplo
int main()
{
    for(int i = 0; i < 10; i++){
        cout << i << endl;
        
        if(i <= 4){
            continue;
        }
        
        if(i > 5){
            break;
        }
        
        i++;
    }
}
  1. Faz-se print do i.
  2. Enquanto i for menor ou igual a 4, ignora-se o resto do código do ciclo (continue).
  3. Quando i for maior que 5, o loop termina.
  4. Adiciona-se mais 1 a i.

Output:
0
1
2
3
4
5
7


Referências - 3/12/2019


quarta-feira, 20 de novembro de 2019

C++ - While loop

Quando temos código que queremos que seja executado múltiplas vezes, o que fazemos?
Copiamos e colamos o código várias vezes?

Não. Usamos os loops (ciclos).

O while loop continua a executar o código enquanto uma condição é verdade.

Escrevendo:
Um "while", seguido de um valor lógico (condição) entre ( ) e um bloco de código (código entre { }).
while(true){
//código
}
Este loop é infinito, porque true é sempre true.

A condição é verificada no início de cada ciclo, ou seja, logo no começo, e a seguir do código ser executado.

Exemplo:
int num = 2;

while(num < 4){
    num += 1;
}

  • O inteiro num tem valor 2.
  • Começa o while loop e é logo verificada a condição, neste caso "num < 4". Como num é 2 e 2 é menor que 4, executamos o código.
  • A única coisa que o código faz é incrementar 1 ao valor de num, ficando 3.
  • Volta-se a verificar a condição, e como 3 < 4, executa-se o código novamente, mudando o valor de num para 4.
  • Verifica-se mais uma vez a condição, mas desta vez é falsa, 4 não é menor que 4: Acaba-se o loop.
  • num foi modificado, e continua com valor 4.

Do... while
Este loop é exatamente o mesmo que o while, com uma pequena diferença. O código é executado pelo menos uma vez, e apenas a partir daí passa a ser testada a condição para os próximos ciclos.

Escreve-se com um "do" seguido de um bloco de código. No fim do bloco de código (após o }), "while" seguido da condição, e um ";" para finalizar.
do{
//código
}
while(false);
O código é executado pelo menos uma vez, e verifica-se a condição. Neste caso, o loop para porque false é sempre false.

Tem o mesmo efeito que copiar e colar o código antes do while loop.

Programa exemplo
#include <iostream>
using namespace std;

int main()
{
    int num = 0;
    cout << "Escreve 5!" << endl;
    
    while(num != 5){
        cin >> num;
    }
    
    cout << "Boa!!! Escreveste 5!" << endl;
}
  • O programa começa por dizer ao utilizador para escrever o número 5.
  • Um while loop começa e enquanto num for diferente de 5, pede input do utilizador na variável num.
  • Quando o utilizador escrever 5 em vez de outra coisa, o loop termina e o programa parabeniza-o por escrever 5.
Escrevendo 3 e depois 5:
Escreve 5!
3
5
Boa!!! Escreveste 5!


Referências - 19/11/2019



sexta-feira, 15 de novembro de 2019

Python - Ciclos (Loops)

Ciclo ou loop, é a maneira mais fácil em Python de repetir uma instrução n vezes. Existem os ciclos 'for' e os ciclos 'while', que são sendo que os ciclos while exigem uma sintaxe mais complexa.

Nota: deve consultar a publicação 'Python - Condições' antes desta, visto que fala de tipos de condições e de funções 'if', 'elif' e 'else'.

A seguinte imagem é um esquema de como cada um dos loops funciona: num for loop, 'dizemos ao computador' para repetir um pedaço de código n vezes que quisermos, enquanto que no while loop, é composto por uma condição e um bloco de código, que se repete enquanto a condição for verdadeira (True):

  • Ciclo for (For loop) - como referi acima, este tipo de loop é normalmente utilizado para repetir um bloco de código as vezes desejadas normalmente para interagir com membros de sequências, utilizamos comandos como 'for' , 'in' e 'range' como no exemplo a seguir:
for num in range(1, 10):
    print(num)

#que tambem pode ser escrito:

numb = range(1,10)
for count in numb:
    print(count)

No exemplo acima, resultaria em ambos os casos:

1
2
3
4
5
6
7
8
9

Na imagem seguinte podemos observar as diferentes maneiras de usar o comando range:
No exemplo que dei, utilizei da segunda maneira, também podendo utilizar "range(10)"

  • Ciclo while (While loop) - como referi acima, nos while loops, "dizemos ao computador" para fazer algo enquanto a condição for verdadeira:
a = 0
while a < 10:
    a = a + 1
    print(a)

e o output seria:


1
2
3
4
5
6
7
8
9
10

Loops são das coisas mais importantes de aprender para programar enúmeros tipos de programas, que devem ser utilizados em exercícios porque não há melhor maneira de aprender que experimentar!

Referências:

domingo, 10 de março de 2019

Tutorial de JavaScript: Variáveis Locais e Globais, Loop While e Mini-Aplicação

Estás interessado em JavaScript? 

Queres aprender como funcionam variáveis globais e locais e onde utilizar quais destas? Gostavas de aprender a desenvolver uma mini-aplicação e fazê-la correr na web? Então temos o tutorial ideal para ti. 

Neste projeto eu, Filipa Costa, e o meu colega Tomás Philippart criámos um vídeo tutorial que explica tudo isto e um pouco mais (como while loop e boas práticas de programação em JavaScript). Incluímos no vídeo um mini-projeto, a criação de uma aplicação que nos canta a famosa música "99 Bottles of Beer".

Não te preocupes mais em ser o novato da programação no teu bootcamp ou sequer penses que esta linguagem é difícil. Neste vídeo sintetizamos tudo o que precisas para teres um começo ideal na programação em JavaScript e esperamos que te dê as ferramentas que precisas para seres o melhor programador que sabes ser. Clica no vídeo abaixo e visita o nosso site para mais informação. Boa sorte!




Ao longo do vídeo baseamo-nos no livro Head First: JavaScript Programming.
No desenvolvimento deste vídeo utilizámos também outras ferramentas:
Screencastify (plugin do Chrome, que permite a gravação de ecrã); 
Audacity (sistema de gravação e edição de som); 
PhotoShop (edição de imagem, criação dos slides explicativos); 
OpenShot (programa de edição de vídeo, gratuito); 
Google Sites (permitiu a criação do site de apoio ao tutorial);
Google Docs (planeamento do vídeo e conteúdos a abordar).

Esta atividade foi desenvolvida em resposta a uma proposta de trabalho para a disciplina de AIB com o professor Luís Pitta, na Escola Secundária José Gomes Ferreira.