Estruturas de Repetição: mudanças entre as edições
De Wikiunicentro
| Linha 220: | Linha 220: | ||
* [https://www.urionlinejudge.com.br/judge/pt/problems/view/1064 1064 - Positivos e Média]  | * [https://www.urionlinejudge.com.br/judge/pt/problems/view/1064 1064 - Positivos e Média]  | ||
* [https://www.urionlinejudge.com.br/judge/pt/problems/view/1074 1074 - Par ou Ímpar]  | |||
* [https://www.urionlinejudge.com.br/judge/pt/problems/view/1151 1151 - Fibonacci Fácil]  | * [https://www.urionlinejudge.com.br/judge/pt/problems/view/1151 1151 - Fibonacci Fácil]  | ||
* [https://www.urionlinejudge.com.br/judge/pt/problems/view/2862 2862 - Inseto!]  | * [https://www.urionlinejudge.com.br/judge/pt/problems/view/2862 2862 - Inseto!]  | ||
Edição atual tal como às 01h36min de 9 de março de 2020
Estruturas de Repetição
As estruturas de repetição também são conhecidas como laços (loops) e são utilizados para executar, repetidamente, uma instrução ou bloco de instrução enquanto determinada condição estiver sendo satisfeita. Assista a videoaula sobre este tipo de estrutura aqui.
As principais formas de implementar o loop são o enquanto (ou while) e o para de até (ou for).
Sintaxe enquanto:
Pseudocódigo             
                         
Enquanto (condição) Faça 
   (bloco de código)     
FimEnquanto             
________________________
Pascal
while(condição) do
   begin
      (bloco de código)
   end
________________________
Linguagem C
while(condição){
   (bloco de código)
}
________________________
Python
while(condição):
   (bloco de código)
________________________
C++
while(condição){
   (bloco de código)
}
Exemplo enquanto:
Um loop que apresenta até o numero 10.
var i : Inteiro.
Pseudocódigo             
                         
i = 1;                   
                         
Enquanto (i <= 10) Faça  
   escreva(i);           
   i = i + 1;            
Fim Enquanto             
                         
________________________
Pascal 
i := 1;
while(i <= 10)do
   begin
      writeln(i);
      i:= i+1;
   end;
________________________
Linguagem C
i = 1;
while(i <= 10){
   print("%d",i);
   i = i+1;
}
________________________
Python
i = 1;
while(i<=100):
   print(i);
   i = i + 1;
________________________
C++
i = 1;
while(i <= 10){
   cout << i;
   i = i+1;
}
Sintaxe para de até:
Pseudocódigo
Para (variavel) de (valor inicial) ATÉ (valor final) passo (incremento) faça  
   (bloco de código)
Fim Para            
__________________
Pascal
FOR (variável):=(valor inicial) to (valor final) do	
   begin
      (bloco de código)
   end;
__________________
Linguagem C
for(variável = valor inicial; variável <= valor inicial; variável = variável + 1){
      (bloco de código)
}
__________________
Python
for x in range(valor inicial , valor final):
   (bloco de código)
__________________
C++
for(variável = valor inicial; variável <= valor inicial; variável = variável + 1){
      (bloco de código)
}
Exemplo para de até:
Um loop que apresenta até o numero 10.
var i : Inteiro.
Pseudocódigo                 
                             
Para i de 1 ATÉ 10 + 1 faça  
    escreva(i);              
Fim Para                     
                             
__________________
Pascal
FOR i := 1 to 10 + 1 do
   begin
      write(i);
   end;
__________________
Linguagem C
for(i = 1; i <= 10; i = i + 1){
   print("%d",i);
}
__________________
Python
for i in range (i,10 + 1):
   print(i);
__________________
 
C++;
for(i = 1; i <= 10; i = i + 1){
   cout << i;
}
Note que usando o enquanto dispensamos o incremento da variável controladora dentro do bloco de código, esse incremento é definido na assinatura loop.
Exemplo
1078 - Tabuada
#include <stdio.h>
#include <stdlib.h>
int main(){
	int n = 0 ,i = 0;
	scanf("%d", &n);
	for(i = 1; i < 11; i++){
		int resultado = i * n;
		printf("%d x %d = %d\n",i,n,resultado);
	}
}
