13 Operadores relacionais

Documentos relacionados
PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C

Introdução à Programação I

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

Programação para Games I

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

11 - Estrutura de um programa em C

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

Linguagens de Programação I

Linguagem C (estruturas condicionais)

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

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

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

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

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

Revisão. Profa Marina Gomes

Lógica de Programação I

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C

Introdução à Programação em C (II)

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

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

C Comandos de Controle

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...

Linguagem C. André Tavares da Silva.

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

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

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

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...

Processamento da Informação Teoria. Desvio Condicional

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

COMANDOS DE CONTROLE DE FLUXO. Luís Charneca.

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

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.

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

INF 1005 Programação I

Processamento da Informação Estruturas de seleção simples e composta

Estrutura do programa

Linguagem de Programação C. Funções e Procedimentos

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

ENGENHARIA DE PRODUÇÃO PROGRAMAÇÃO Algoritmos Conceitos Iniciais. Prof. Luiz Fernando Laguardia Campos FMS

Introdução à Programação em C Input / Output

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

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

LEI 2016 LICENCIATURA EM ENGENHARIA INFORMÁTICA

4.1- Aritméticos + soma - subtração * multiplicação / divisão % módulo (resto da divisão de inteiros ).

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

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

Linguagens de programação. Introdução ao C (continuação)

Introdução à Programação

Aula 05 Estrutura de Seleção em C

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

Introdução à Programação I

Treinamento Olimpíada Brasileira de Informática

Métodos Computacionais em Física

Programação: Vetores

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

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

Introdução à Linguagem C

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

Aula 05: Condicionais (if / else)

ponteiros INF Programação I Prof. Roberto Azevedo

21 Variáveis estruturadas

Estruturas Condicionais

Estruturas de Decisão. Adaptado de Deise Saccol

Linguagem de Programação C. Prof. Fabrício Olivetti de França

3. Linguagem de Programação C

Controlo de Execução das instruções

Introdução à Programação

Aula 8 Comandos de Seleção

C Comandos de Controle

Sistema Operacional Unidade 11.2 Shell Script: estruturas condicionais. QI ESCOLAS E FACULDADES Curso Técnico em Informática

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza.

5 Comando de Seleção Simples e Composta

Aula 03 Introdução à Programação com a Linguagem Python

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

Funções de Entrada e Saída Formatada Constantes de barra invertida

CCO 016 / COM 110 Fundamentos de Programação

Olimpíadas de Informática Aulas preparatórias Introdução a Programação em C.

PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008

Introdução à Computação

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

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

Introdução à Programação

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

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

Programação de Computadores II Aula 03. Linguagem C I

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

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

Introdução a Programação na Linguagem C.

ALGORITMOS E ESRUTRA DE DADOS I. Ponteiros Passagem por Valor e Referência Alocação de Memória

3. Linguagem de Programação C

Programação Estruturada

Estruturas de seleção. Prof.: Jesus

Computação 2. Diego Addan Aula 3. Funções

Módulo 3 Controle de Fluxo

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

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

Transcrição:

13 Operadores relacionais Os operadores relacionais permitam comparar valores (ou expressões) dos tipos: inteiro, real ou caracter devolvendo como resultado: verdadeiro (true) ou falso (false)

E estes valores ( verdadeiro, falso ) são chamados valores lógicos. O valor 1 equivale ao verdadeiro. O valor 0 equivale ao falso.

Operadores relacionais: == igual > maior >= maior ou igual < menor <= menor ou igual!= diferente

Exemplos de expressões com operadores relacionais: a = 1, b = 2, c = 4, d = 5, e = -1; (inteiros!) a = = b -1 verdadeiro c = = d - e falso a = = (b+1)/2 verdadeiro

14 Operadores lógicos Os operadores lógicos permitem comparar expressões que tenham valores lógicos, devolvendo também um valor lógico: verdadeiro (true) ou falso (false).

Operadores lógicos: && e ( and ) ou ( or )! não ( not )

Prioridade sinais ( + - )! maior * / % + - ==!= < <= > >= && menor

Exemplo!(2 = = 3) && 1 = = 1 ( é verdadeiro )

Exemplos de expressões com operadores lógicos: a = 5, b = 4, c = 9, d = -2, e = 3; a + b == c d >= e verdadeiro a == d - e && e <= b falso!(a+1 == b) a+1 == b verdadeiro

15 A instrução if A instrução if permite o desvio do fluxo vertical de um programa conforme o teste de uma condição (valor lógico).

Sintaxe: if (condição) instrução1; else instrução2;

Funcionamento: condição True (sim) instrução1 False (não) instrução2

- se o valor da condição for verdadeiro (true) a instrucão1 é executada. - se o valor da condição for falso (false) a instrucão2 é executada. - apenas uma das instruções é executada.

O if sem o else Em determinadas situações conforme o resultado (valor lógico) de uma condição: se o resultado for verdadeiro, precisamos executar uma instrução, e se o resultado for falso não precisamos fazer nada.

Sintaxe: if (condição) instrução1;

Funcionamento: if sem o else condição True (sim) instrução1 False (não)

- se o valor da condição for verdadeiro (true) a instrucão1 é executada. - se o valor da condição for falso (false) a instrucão1 não é executada.

Observações A condição deve sempre estar entre parênteses. É obrigatório colocar ; (ponto e vírgula) depois da instrução1 e da instrução2.

16 Bloco de instruções É um conjunto de instruções entre chaves { instrução1; instrução2;... }

- Sintaticamente um bloco de instruções equivale a uma única instrução. - Assim se no if queremos utilizar mais de uma instrução no lugar da instrução1 (ou da instrução2) devemos utilizar um bloco de instruções. - Depois de um bloco não é necessário por o ; ( ponto e vírgula ). - Observe que o programa é um grande bloco de instruções.

Exemplo: Programa que lê um código de um produto e o respectivo valor (preço sem iva) e calcula o total (preço com iva). Se o código terminar em 0 (zero) o iva é de 5%, se o código terminar em 1 (um) o iva é de 21%.

Fluxograma (parte principal) c % 10 = = 0 True (sim) iva = 0.05 False (não) iva = 0.21

#include <stdio.h> main ( ) { int c; float iva,valor,total; printf( escreva o código\n ); scanf( %d,&c); printf( escreva o valor\n ); scanf( %f,&valor); if (c % 10 = = 0 ) iva = 0.05; else iva = 0.21; total = valor + (valor*iva); printf( O preço total é %f\n, total); }

O que acontece no programa anterior se o código não terminar nem em zero nem em um? Se for diferente de zero, equivale a ser um. Como resolver este problema:

I -... if (c % 10 = = 0 ) iva = 0.05; else iva = 0.21; total = valor + (valor*iva); if (c % 10!= 0 && c % 10!= 1) printf( O código está errado\n ); else printf( O preço total é %f\n, total); }

I I-... if (c % 10!= 0 && c % 10!=1) printf( O código está errado\n ); else { if (c % 10 = = 0 ) } } iva = 0.05; else iva = 0.21; total = valor + (valor*iva); printf( O preço total é %f\n, total);

Observe neste último if a utilização de um um bloco como sendo a instrução2. if (c % 10!= 0 && c % 10!=1) printf( O código está errado\n ) else { if (c % 10 = = 0 ) } iva = 0.05; else iva = 0.21; total = valor + (valor*iva); printf( O preço total é %f\n, total);

Condições compostas e If encadeados Suponha o seguinte problema: - Enviar um aviso ao encontrar um número inteiro par maior do que 100.

Fluxograma (parte principal) True (sim) n % 2 = = 0 n > 100 True (sim) escrever Aviso!!! False (não) False (não)

que equivale a:... if (n % 2 == 0) if ( n > 100) printf( Aviso!!!\n );...

Observe que utilizamos um segundo if como instrução do primeiro, ou seja encadeados. Neste caso é possível utilizar apenas um if com uma condição composta.

Fluxograma (parte principal) n%2 = = 0 && n>100 True (sim) escrever Aviso!!! False (não)

que equivale a:... if (n % 2 == 0 && n > 100) printf( Aviso!!!\n );...

Exercício: - se o número for par e maior que 100 escrever verde!, - se fosse apenas par (menor ou igual a 100) escrever amarelo!, - se fosse apenas maior que 100 (impar) escrever vermelho!.

Regra importante: Um else sempre pertence ao último if. if (condição) if (condição) instrução; else instrução;

Se, pela lógica do programa, o else devesse pertencer ao primeiro if, deveríamos utilizar chaves (bloco). if (condição) { if (condição) instrução; } else instrução;