Controle de Fluxo. Laços e Desvios incondicionais

Documentos relacionados
Controle de Fluxo. Laços e Desvios incondicionais

Programação I Estruturas de Repetição

Linguagem C (repetição)

Programação Estruturada Aula - Estruturas de Repetição

Programação de Computadores I Funções de Repetição da Linguagem C PROFESSORA CINTIA CAETANO

Algoritmos e Programação

C Comandos de Controle

LINGUAGEM C: COMANDOS DE REPETIÇÃO

5 - COMANDOS DE CONTROLE DE PROGRAMA Em C existem os comandos de decisões, os comandos de iteração (ou de laços) e os comandos de desvios.

ECT1203 Linguagem de Programação

C Comandos de Controle

Algoritmos e Programação

Linguagem C Controle de Fluxo

Linguagem C++ Estruturas de controle Parte II Estruturas de repetição

Aula 7 Oficina de Programação Estruturas de Repetição no C. Profa. Elaine Faria UFU

Estruturas de Controle

Programação de Computadores I. Linguagem C Estruturas de Repetição

13 a Aula - Instruções Condicionais. Ciclos. Pré-processador. Variáveis de ambiente. Mestrado em Engenharia Física Tecnológica

Desenvolvimento de Aplicações Desktop

Introdução à Programação. Estruturas de Repetição

Estruturas de Repetição. for() while() do-while() break; continue;

Abaixo vemos um programa que coloca os primeiros 100 números inteiros na tela:

Prof. A. G. Silva. 28 de agosto de Prof. A. G. Silva INE5603 Introdução à POO 28 de agosto de / 1

Linguagem C Estruturas de Repetição

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: estruturas de repetição While / Do While / For

Variáveis primitivas e Controle de fluxo

Métodos Computacionais. Comandos Condicionais e de Repetição em C

Estruturas de Repetição

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição

Linguagem C (estruturas condicionais)

CONTROLE DE FLUXO. Algoritmos e Programação. Prof. Alceu Britto Slides cedidos pelo Prof. Edson J. R. Justino (PUCPR) Aula 9 e 10

Capítulo 8. Estruturas de Controle no Nível de Sentença

LINGUAGEM C CONTROLE DE FLUXO

CICLOS DE REPETIÇÃO. Luís Charneca.

3. Linguagem de Programação C

Programação Estruturada Prof. Rodrigo Hausen Condicionais e Laços

Hello World. Linguagem C. Tipos de Dados. Palavras Reservadas. Operadores Aritméticos. Pré e pós incremento e pré e pós decremento

Estruturas de repetição

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C

Técnicas de Programação: Comandos de Controle de DEE UFPB

Seleção Múltipla Laços (while, do-while, for) AULA 05

Revisão C++ - Parte 1

Laços de repetição for, while, do-while

Comandos em C (cont.)

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: Operadores relacionais e lógicos estruturas condicionais If...

Vetores. e o programa deverá ler os valores separadamente:

Introdução à Linguagem C

Tipos Primitivos, estruturas de iteração e decisão.

Apresentar os comandos de controle associados com as estruturas de repetição.

Introdução à Ciência da Computação

Controlo de Execução. K&R: Capitulo 3

Estruturas de Decisão

Introdução à Programação. Estruturas de Repetição

Linguagem de Programação C

ICMC USP. 1.semestre/2011 SCC120 - ICC. Aula: Comandos em C. Profa. Roseli Ap. Francelin Romero

Linguagem C para Microcontroladores

Laboratório de Programação II

Sintaxe Básica de Java Parte 2

Estruturas de Repetição

INSTITUTO FEDERAL CATARINENSE Campus Ibirama

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO

Declarações. C diferencia letras maiúsculas de minúsculas! int n, N; n é diferente de N!

Aula 14: Estruturas de Seleção e Controle em C

#include <stdio.h> Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C

Aula 7 Estruturas de Repetição Cleverton Hentz

Aula 4 Estruturas de Controle

Aula 01. Programação Condicional Programação repetitiva

SSC304 Introdução à Programação Para Engenharias. Controle de Fluxo. GE4 Bio

Comandos de controle de fluxo: if / for / while / do while.

Linguagens de Programação I

Módulo 9 VARIÁVEIS, TIPOS DE DADOS, OPERADORES, ESTRUTURAS DE CONTROLO P S I C P T G P S I

Comandos de Controle do Programa

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta?

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues

Engenharia Elétrica AAM. Professor: Marco Shawn Meireles Machado

Aula 11 - Repetições Encaixadas

Revisão Linguagem C Parte 1

Estruturas de repetição. Objetivos: - Compreender diversos tipos de comandos de repetições disponíveis na linguagem C.

Estruturas de Decisão e loops

05/11/2018. Linguagem de Programação e Estruturada

Linguagem de Programação I. Aula 07 Linguagem C: Estruturas de Controle

Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação. Lista de Exercícios 1

Linguagem C. Prof.ª Márcia Jani Cícero

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

Linguagem C Controle do Fluxo de Execução. Lógica de Programação

Linguagem C Princípios Básicos (parte 1)

ESTRUTURAS DE CONTROLE

Linguagem C. André Tavares da Silva.

Estruturas de Controle

Algoritmos e Técnicas de Programação. Professora: Luciana Faria

Introdução à Programação SCC-121

Aula 6 Oficina de Programação Estruturas Condicionais no C. Profa. Elaine Faria UFU

Linguagem de Programação C

Introdução à Programação. Expressões Booleanas e Comandos Condicionais

ALGORITMOS. Estruturas de Controle de fluxo

Linguagem de Programação Java Terceira aula. Prof. Rogério Albuquerque de Almeida

Algoritmos e Técnicas de

Transcrição:

Controle de Fluxo Laços e Desvios incondicionais

Laços Em C, há três comandos de ITERAÇÃO ou LAÇOS: for while do... while Estes permitem que um conjunto de instruções seja executado até que ocorra uma certa condição. Esta condição pode ser pré-definida (como no laço for) ou com o final em aberto (como nos laços while e do... while). 2

Laço For Forma Geral for(inicialização; CONDIÇÃO; INCREMENTO) { } COMANDO; Cada parte possui um significado próprio dado a seguir 3

Laço For INICIALIZAÇÃO - geralmente um comando de atribuição para colocar um valor na variável de controle do laço; CONDIÇÃO - é uma expressão relacional que determina quando o laço acaba; INCREMENTO - define como a variável de controle do laço varia cada vez que o laço é repetido; COMANDO - um único comando ou um bloco de comandos executados enquato a CONDIÇÃO é verdadeira. 4

Variações 1. Operador Vígula - uma das variações mais comuns é o uso do operador vírgula para permitir que duas ou mais variáveis controlem o laço: for( x = 0, y = 100 ; x < y ; x ++, y -= x ) printf("x = %i, y = %i\n",x,y); 5

Variações 2. Laço infinito - Nenhuma das três expressões que formam um laço for é obrigatória. Assim, você pode criar um laço infinito assim: for ( ; ; ) printf(" Laço infinito \n"); 6

Variações 3. Laço sem corpo - Um comando pode ser vazio. Isso significa que o corpo do laço for (ou qualquer outro laço) também pode ser vazio. int pausa ( unsigned long int p) { for ( t = 0 ; t < p ; t++ ) ; } 7

Laço While FORMA GERAL while( CONDIÇÃO ) COMANDO; COMANDO é executado enquanto a CONDIÇÃO for verdadeira ( diferente de zero ); quando for falsa, o controle passa para a linha após COMANDO. 8

Variações 1. Laço infinito : while ( 1 ) printf(" Laço infinito \n"); 9

Variações 2. Laço sem corpo. int pausa ( unsigned long int p) { while ( p-- ) ; } 10

Laço do...while Ao contrário dos laços for e while, que testam a condição do laço no começo, o laço do... while verifica a condição ao final do laço. Isso significa que um laço do... while SEMPRE SERÁ EXECUTADO AO MENOS UMA VEZ. FORMA GERAL do { COMANDO; }while( CONDIÇÃO ); 11

Laço do...while Embora as chaves não sejam necessárias quando apenas um comando está presente, elas são geralmente usadas para evitar confusão (para você, não para o compilador) com o while O laço do... while repete até que a CONDIÇÃO se torne falsa. 12

Variações 1. Laço infinito : do{ printf(" Laço infinito \n"); } while ( 1 ) ; 13

Variações 2. Laço sem corpo. int pausa ( unsigned long int p) { do { } while ( p-- ); } 14

Desvios Incondicionais return goto break continue 15

O comando return Este comando é usado para retornar de uma função. Ele é um comando de desvio porque faz com que a execução retorne (salte de volta) ao ponto em que a chamada à função foi feita. FORMA GERAL return EXPRESSÃO; 16

O comando return Se return tem um valor associado a ele, esse valor é o valor de retorno da função. Se nenhum valor de retorno é especificado, assume-se que apenas lixo é retornado (alguns compiladores irão automaticamente retornar 0 se nenhum valor for especificado, mas não conte com isso). 17

O comando goto Na programação estruturada, não há nenhuma situação que necessite do goto. No entanto, o goto é uma conveniência que, se usada com prudência, pode ser uma vantagem em certas situações. FORMA GERAL goto RÓTULO;... RÓTULO: 18

O comando goto O comando goto requer um RÓTULO - um identificador válido seguido por doispontos). O RÓTULO tem de estar na mesma função do goto que o usa não é permitido desvios entre funções. O RÓTULO pode vir antes, e não apenas depois, do comando goto. 19

Laço infinito 1. LOOP: printf("laço infinito\n"); 2. goto LOOP; 20

O comando Break O comando break tem dois usos. Você pode usá-lo para terminar um case em um comando switch Você pode também utilizá-lo para forçar uma terminação imediata de um laço, evitando o teste condicional normal do laço. Quando o comando break é encontrado dentro de um laço, o laço é imediatamente terminado e o controle do programa retorna ao comando seguinte ao laço. 21

O comando continue O comando continue trabalha de uma forma pouco parecida com a do comando break. Porém, em vez de forçar a terminação, continue força que ocorra a próxima iteração do laço, pulando qualquer código intermediário. Para o laço for, o comando continue faz com que o incremento e o teste condicional sejam executados. 22

O comando continue Para os laços while e do... while, o controle do programa passa para o teste condicional. int conta_espacos(const char * str) { int i = 0, nesp = 0; while ( str[i] ) { if ( str[i]!= ' ' ) continue; nesp ++; } return nesp; } 23

Atividades Seja N um número quadrado perfeito. Se somarmos os números ímpares consecutivos (1+3+5+7+9+...) até que esta soma seja igual a N, o número M de termos somados será igual a raiz quadrada de N. Exemplo: N = 16 16 = 1 + 3 + 5 + 7 M = 4 termos. Logo, a raiz quadrada de 16 é 4. Fazer um programa em C para ler um número inteiro e positivo N e responder se N é quadrado perfeito. 24

Atividades Fazer um programa em C para calcular a soma dos N primeiros múltiplos de um inteiro K, onde N e K são lidos e são números inteiros e positivos. 25