Linguagem C (estruturas condicionais)

Documentos relacionados
Linguagem C. André Tavares da Silva.

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

Comando Switch. Embora a escada if else-if possa executar testes de várias maneiras, ela não é de maneira nenhuma elegante.

COMANDOS DE CONTROLE DE FLUXO. Luís Charneca.

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

Comandos de decisão. Tiago Alves de Oliveira. Adaptado de slides das Profas. Patrícia Jaques, Mônica Py e Deise Sacol

Aula 2 Comandos de Decisão

Entrada. Comando 1 Comando 2. Saída

Introdução à Programação I

Estruturas de Decisão. Adaptado de Deise Saccol

controle de fluxo - condicionais

C Comandos de Controle

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

INSTITUTO FEDERAL CATARINENSE Campus Ibirama

Modulo 3: Else, Case, For...

Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo

Linguagens de Programação I

ESTRUTURAS CONDICIONAIS. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

Programação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02

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

C Comandos de Controle

Módulo 3 Controle de Fluxo

Estrutura do programa

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

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

Lógica de Programação I

Comandos em C (cont.)

ESTRUTURAS CONDICIONAIS. Introdução à Ciência da ComputaçãoI Simone Senger de Souza

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

GFM015 Introdução à Computação Algoritmos e Programação / Controle de Fluxo / Estutura Condicional

Cap. 3 Entrada e Saída e Controle de Fluxo

Treinamento Olimpíada Brasileira de Informática

Modulo 4: while do while (limites de variáveis)

Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Exercício... Para começar... Resolução... Para começar... Para começar...

Estrutura de Seleção Múltipla Switch

Estruturas de seleção

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

3. Linguagem de Programação C

Linguagem de Programação C. Comandos de Seleção e Desvio

Programação Estruturada

Para começar... Para começar... Para começar... Para começar... Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Estruturas condicionais...

MC-102 Aula 04 Expressões Relacionais, Lógicas e Comandos Condicionais

Programação científica C++

Estruturas de seleção. Prof.: Jesus

ALGORITMO I ESTRUTURA DE CONTROLE DECISÃO SE / CASO;

Estruturas de Controle

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

Fundamentos de Programação1

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

Linguagem C. Programação Estruturada. Estruturas de Controle. Prof. Luis Nícolas de Amorim Trigo

Controle de Fluxo Utilizando C

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

Algoritmos e Estruturas de Dados I IEC012. Linguagem C - Estruturas de Controle - Seleção. Prof. César Melo

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C

CCO 016 / COM 110 Fundamentos de Programação

INF1007: Programação 2. 0 Revisão. 06/08/2015 (c) Dept. de Informática - PUC-Rio 1

UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Estruturas de condição. Prof. Alex Camargo

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

Controle de Fluxo - Condicionais. INF1005 Programação I Profa. Simone D.J. Barbosa sala 410 RDC

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

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO. Prof. Esp. Fabiano Taguchi

Linguagem C Controle de Fluxo

Linguagem C/C++ Estrutura Condicional. Prof: Rosemary Melo

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO. Prof. Esp. Fabiano Taguchi

Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria

CCO 016 / COM 110 Fundamentos de Programação

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

Aula 05: Condicionais (if / else)

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

Linguagem C (repetição)

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

Estruturas de Decisão em C

Introdução à Linguagem C

Decisão. Prof. Dr. Silvio do Lago Pereira. Departamento de Tecnologia da Informação Faculdade de Tecnologia de São Paulo

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

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

Introdução a Linguagem C (Parte I) UFPA Sistemas de Informação. Roberto Araujo 2013

Estruturas de Repetição

Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Prof. Alessandro Zimmer Introdução à Linguagem C

Programação Básica. Estrutura de um algoritmo

Comandos de Controle do Programa

Aula 05 Estrutura de Seleção em C

Algoritmos e Programação

LEI 2016 LICENCIATURA EM ENGENHARIA INFORMÁTICA

Operadores. A linguagem C é muito rica em operadores internos. Ela define quatro classes de operadores:

Capítulo 2: Condicionais. Pontifícia Universidade Católica Departamento de Informática

Programação: Vetores

Aula 02 -Introdução àlinguagc Programação: Estrutura-Seleção. OPL e IC1 Prof: Anilton Joaquim da Silva

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA DE CIÊNCIAS E TECNOLOGIA. ECT1203 Linguagem de Programação Turma Prof.

Fundamentos de Programação 1

Capítulo 4: Condicionais

Programação para Games I

Parte 1. Programação (linguagem C) Introdução Geral

Revisão. Profa Marina Gomes

1ª Lista de Exercícios

13 Operadores relacionais

3. Linguagem de Programação C

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

Transcrição:

Linguagem C (estruturas condicionais) André Tavares da Silva atavares@joinville.udesc.br

Comandos de Controle de Fluxo Todos os comandos devem ser terminados com um ;. { e são usados para delimitar um bloco de comandos. Não é necessário colocar ponto-e-vírgula após.

if if (condição) comando; if (condição){ bloco de comandos; Se a condição for verdadeira, o comando ou bloco de comandos que forma o corpo do if é executado. Caso o valor retornado seja falso, o corpo do if é pulado.

if #include <stdio.h> #include <stdlib.h> void main( ){ int num_magico, x; num_magico = rand(); printf( Digite um número: ); scanf( %d, &x); if(x == num_magico) printf( Parabéns, você acertou o número mágico!!\n );

if-else if (condição) comando; else outrocomando; if (condição){ bloco de comandos; else{ outrocomando; Se a condição for verdadeira, o comando ou bloco de comandos que segue o if é executado. Caso o valor retornado seja falso, o comando que segue o else é executado. Cada comando else refere-se ao último if aberto.

if-else #include <stdio.h> #include <stdlib.h> void main( ){ int num_magico, x; num_magico = rand(); printf( Digite um número: ); scanf( %d, &x); if(x == num_magico) printf( Parabéns, você acertou o número mágico!!\n ); else printf( Infelizmente você errou!!!\n );

A escada if-else if if (condição) comando; else if(condição) outrocomando; else if(condição) maisumcomando;... else comando;

A escada if-else if Assim que uma condição verdadeira é encontrada, o comando associado a ela é executado e os demais comandos são desviados. Se todas as condições forem falsas, o último else é executado. Caso não exista o último else e todas as condições forem falsas, nenhum ação ocorrerá.

#include <stdio.h> #include <stdlib.h> A escada if-else if void main( ){ int num_magico, x; num_magico = rand(); printf( Digite um número: ); scanf( %d, &x); if(x == num_magico) printf( Parabéns, você acertou o número mágico!!\n ); else if(x > num_magico) printf( O número digitado é muito alto!!!\n ); else printf( O número digitado é muito baixo!!!\n );

O operador ternário?: Exp1? Exp2 : Exp3 Se Exp1 é verdadeira, o resultado da expressão é Exp2. Se Exp1 é falsa, o resultado da expressão é Exp3.

#include <stdio.h> #include <stdlib.h> O operador ternário?: void main( ){ int a, b, maior, menor; printf( Digite dois números inteiros: ); scanf( %d %d, &a, &b); maior = (a>b)? a : b; menor = (a<b)? a : b; printf( %d é maior e %d é menor.\n, maior, menor);

#include <stdio.h> #include <stdlib.h> O operador ternário?: void main( ){ int a, b; printf( Digite dois números inteiros: ); scanf( %d %d, &a, &b); printf( %d é maior.\n, (a>b)? a : b);

A expressão condicional Utiliza-se qualquer comando válido em C para controlar o if ou o operador?:. Não é necessário utilizar apenas comandos envolvendo os operadores relacionais e lógicos.

#include <stdio.h> void main( ){ int a, b; A expressão condicional printf( Digite dois números: ); scanf( %d %d, &a, &b); if(b) printf( Resultado da divisão: %d\n, a/b); else printf( Não existe divisão por zero!\n );

switch switch(expressão){ case constante1: comandos; break; case constante2: comandos; break;... default: comandos;

switch Valor da expressão testado, na ordem, contra os valores das constantes especificados nos comandos case. Quando encontrar coincidência, os comandos associados ao case são executados. Comando default é executado se nenhuma coincidência for detectada. Default é opcional. Comando switch, diferente do if, só pode testar igualdade. Duas constantes case no mesmo switch não podem ter valores idênticos. Constantes de caracteres em um switch são automaticamente convertidas para seus valores inteiros.

switch #include <stdio.h> void main( ){ float oper1, oper2; char op; while(1){ printf( Digite: operando1 operador operando2\n ); scanf( %f %c %f, &oper1, &op, &oper2); switch(op){ case + : printf( %f+%f = %f\n, oper1, oper2, oper1+oper2); break; case - : printf( %f-%f = %f\n, oper1, oper2, oper1-oper2); break; case * : printf( %f*%f = %f\n, oper1, oper2, oper1*oper2); break; case / : printf( %f/%f = %f\n, oper1, oper2, oper1/oper2); break; default: printf( Operador %c desconhecido!\n, op);

switch Se o comando break é omitido, a execução continua pelos próximos comandos case até que um break ou o fim do switch seja encontrado. switch(expressão){ case constante1: comandos; case constante2: comandos; case constante3: comandos; break;

Exercícios Escreva um programa, utilizando a expressão condicional switch, que calcule a área de um círculo, quadrado ou triângulo. O programa deverá ler do usuário uma letra que deverá ser ou C (para calcular a área de um círculo), ou Q (para calcular a área de um quadrado), ou T (para calcular a área de um triângulo). Conforme a figura geométrica desejada, o programa deverá solicitar do usuário a informação necessária para efetuar o cálculo da área correspondente. Por exemplo, para um círculo o usuário deve informar o raio do círculo; para um quadrado o usuário deve informar o lado do quadrado e para um triângulo o usuário deve informar o valor da base e altura do triângulo.

Exercícios Ler dois números quaisquer e dividir o primeiro pelo segundo (evitando divisão por zero). Ler dois números inteiros e exibir o maior deles. Ler um número inteiro e imprimir se ele é par ou ímpar. Ler três números inteiros e exibir o maior deles.

Exercícios Fazer um algoritmo que leia 3 notas de um aluno (tipo float) e imprima a mensagem de aluno aprovado ou reprovado conforme o seguinte critério: se a média final do aluno (média aritmética simples) for maior ou igual a 6 (seis) e nenhuma das notas for inferior a 5 (cinco), o aluno foi aprovado, caso contrário o aluno foi reprovado. Use operadores lógicos (&&,, etc...) para diminuir o número de comandos IF...ELSE utilizados.