Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms....

25
Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches

Transcript of Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms....

Page 1: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

Linguagem C – Estrutura de Repetição

Automação IndustrialInformática BásicaProfa. Ms. Viviane Guimarães RibeiroProf. João Sanches

Page 2: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

2

Estruturas de RepetiçãoEssas estruturas são utilizadas para que uma parte de seu programa possa ser repetida n vezes sem a necessidade de reescrevê-lo. Também são conhecidas com LOOP ou laços.

Existem 3 estruturas de repetição na linguagem C:• for;• while;• do... while.

Page 3: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

3

forA idéia básica do comando for é que você execute um conjunto de comandos, um número fixo de vezes, enquanto uma variável de controle é incrementada ou decrementada a cada passagem pelo loop.

Page 4: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

4

forFluxograma

Page 5: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

5

forPseudocódigo

Para <var> de <início> até <fim> incr de <inc> faça <comando 1>;

Fim_para

Page 6: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

6

forLinguagem C

for ( <var> = <início>; <fim> ; <inc> ){

<comando 1>; }

Page 7: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

7

forObserve que dentro dos parênteses tem 3 expressões separadas por ponto-e-virgula. A primeira expressão é, normalmente, a inicialização da variável de controle do for. A segunda expressão é um teste que, enquanto o resultado for verdadeiro, reflete em continuação do laço. A terceira expressão é, normalmente, o incremento ou decremento da variável de controle do for.

Page 8: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

8

forExemplo 1:

#include <stdio.h>main(){

int i;for(i=1; i<=10; i++){

printf(“%d \n”,i);}

}

Page 9: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

9

forExemplo 2:

#include <stdio.h>main(){int i,j;for(i=1; i<=10; i++){for(j=1; j<=10; j++){ printf(“\n %d x %d = %d”,i,j,i*j);}}}

Page 10: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

10

for

Veja que o laço externo executa 10 vezes, enquanto o laço interno executa 10 vezes para cada passagem do laço externo, totalizando assim, 10x10 = 100 vezes.

Page 11: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

11

while

É o mais genérico dos 3 e pode ser usado para substituir os outros 2; em outras palavras, o laço while supre todas as necessidades. Já os outros dois são usados por uma questão de comodidade.

Page 12: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

12

while

Fluxograma

Page 13: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

13

while

Pseudocódigo

Enquanto <condição> faça<comando>;

Fim_enquanto

Page 14: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

14

while

Linguagem C

while (condição){

<comando>;}

Page 15: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

15

whileExemplo:

#include <stdio.h>main(){int x,y;x = y = 0;while(y<10){x += ++y;}printf(“\n x=%d \n y=%d”,x,y);}

Page 16: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

16

do.. while

O comando do.. while é semelhante ao comando while. A diferença está no momento da avaliação da expressão, o que ocorre sempre após a execução do comando do. Isso faz com que o comando do laço do.. While sempre execute pelo menos uma vez antes de realizar tal teste.

Page 17: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

17

do.. while

Fluxograma

Page 18: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

18

do.. while

Pseudocódigo

Repita<comando 1>;

até que <condição>

Page 19: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

19

do.. while

Linguagem C

do<comando 1>;

while (condição);

Page 20: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

20

do.. whileExemplo

#include <stdio.h>main(){

int i = 1;do

printf(“%d \n“,i);while (++i<=10);

}

Page 21: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

21

Comando break

O comando break, quando utilizado em um bloco de comandos, associado a um for, while ou do.. While, faz com que o laço seja imediatamente interrompido, transferindo o processamento para o primeiro comando seguinte do laço.

Page 22: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

22

Comando break#include <stdio.h>#include <conio.h>main() {

char ch;int i;for(i =0; i<10; i++){ ch =getch(); if(ch==‘\x1b’){ /*ESC*/

break; }

printf(“\n %c”, ch);}puts(“\n acabou”);getch();

}

Page 23: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

23

Comando continue

O comando continue funciona de forma semelhante ao comando break. A diferença reside em que, ao invés de interromper a execução do laço, como o comando break, o comando continue pula as instruções que tiverem abaixo e força a próxima iteração do laço.

Page 24: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

24

Comando continue#include <stdio.h>#include <conio.h>main() {

char ch;int i;for(i =0; i<10; i++){ ch =getch(); if(ch==‘\x1b’){ /*ESC*/

continue; }

printf(“\n %c”, ch);}puts(“\n acabou”);getch();

}

Page 25: Linguagem C – Estrutura de Repetição Automação Industrial Informática Básica Profa. Ms. Viviane Guimarães Ribeiro Prof. João Sanches.

25

Exercícios

Faça o fluxograma, portugol e três códigos em linguagem C, cada código utilizando cada uma das estruturas de repetição, para cada exercício abaixo.

1. Imprimir todos os números existentes entre 1 e 20 em ordem crescente.2. Imprimir todos os números existentes entre 1 e 20 em ordem decrescente.3. Imprimir a soma de todos os números existentes entre 10 e 35 em ordem crescente.