Buscar

Comandos de Entrada e Saída, Operadores Aritméticos e Estruturas de Desvio

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

Algoritmos e Programação I 
Aula 3 – Notas de aula 
Comandos de Entrada e Saída. Operadores aritméticos. Estrutura sequencial. Estrutura de 
desvio. 
- Comandos de Entrada e Saída (continuação) 
 Inserir a biblioteca stdio.h, que contém todas as definições necessárias para 
padrões de entrada e saída (I/O) 
#include <stdio.h> 
 Saída de Dados: printf(string de controle) 
o A string de controle é composta por duas partes: os caracteres que serão 
impressos e o formato que estes serão exibidos. 
printf (“Um, %c, %d, %s”, ‘2’, 3, “quatro”); 
o Saída na tela: Um, 2, 3, quatro 
 Entrada de Dados: scanf (string de controle) 
o A string de controle é composta por 
especificadores de formato, que são precedidos 
por um % e indicam o tipo de dado que será lido. 
o No scanf antes dos nomes da variáveis (que não 
são strings), deve-se inserir um & (indica o 
endereço da variável). 
scanf (“%d%d%f”, &b, &c, &a); 
 C usa códigos com barra invertida para definir alguns caracteres especiais como 
constantes (tabela a seguir) 
 
 Outros formatos e códigos podem ser encontrados no livro: SCHILDT, Herbert. C 
completo e total. São Paulo: Makron Books, 1997. 
- Operadores aritméticos (continuação) 
 Conversão de tipos na atribuição: o valor da direita é convertido no valor da esquerda. 
 Cast: força para que uma expressão assuma determinado tipo de dado. 
 Exemplo: O que será exibido na tela? 
void main(void){ 
 int i=5; 
 float a, b; 
 a = i/2; 
 b = (float) i/2; 
 printf("a = %f, b= %f\n", a, b); 
} 
 
 Atribuições Múltiplas são permitidas: x = y = z = 0; 
 C reduzido: 
x += 10; //Equivale a x = x + 10; 
x -= 5; //Equivale a x = x - 5; 
 
 Operadores ++ e --: 
o podem ser usados antes ou depois do operando. Quando usado antes, a 
operação de incremento ou decremento é realizada antes da avaliação de toda 
a expressão. Quando usado depois, a operação é realizada após a avaliação 
da expressão. 
x = 10; 
y = ++x; //x e y valem 11 
x = 10; 
y = x++; //x vale 11 e y vale 10 
 
 Exemplo: O que será exibido na tela, nos dois exemplos a seguir? 
#include<stdio.h> 
void main(void) { 
 int x, y, z; 
 x = 10; 
 y = ++x * 2; 
 z = -x++; 
 z += 3; 
 printf ("%d, %d, %d", x, y, 
y, z); 
} 
 
#include<stdio.h> 
void main(void){ 
 int x, y; 
 float z; 
 x = 2; 
 z = 5.56; 
 y = z; 
 z = y/x; 
 printf("%d, %d, %f", x, y, z); 
 } 
 
- Estrutura Sequencial 
 Nos algoritmos com estrutura sequencial, as instruções são executadas em sequência, 
de cima para baixo na ordem em que foram escritas, uma após a outra, e nenhuma 
instrução é executada mais de uma vez. 
 A execução sequencial limita muito o conjunto de problemas que pode ser tratados. 
Por isso, existem comandos que permitem uma execução não sequencial das 
instruções, são as Estruturas de Desvio e as Estruturas de Repetição. 
 
- Estrutura de Desvio 
 A estrutura de desvio permite desviar a execução de instruções conforme o valor de 
um dado. 
 Exemplos: Algoritmo para entrar na sala de aula; Exercício 12 da Lista 1. 
 A estrutura de desvio permite que seja testada uma condição. Se a condição for 
verdadeira, um determinado conjunto de instruções é executado. Se a condição for 
falsa, outro conjunto de instruções é executado (ou o programa segue normalmente!). 
 
 Desvio condicional simples, na linguagem C, tem o seguinte formato: 
o sem opção para o caso da condição ser falsa: 
if condição{ 
 //conjunto de instruções 
} 
o com opção para o caso da condição ser falsa: 
 if condição{ 
 //conjunto de instruções 
 } else { 
 //conjunto de instruções 
 } 
 O que é a condição? 
o É o resultado de uma operação com operadores relacionais e lógicos! 
o Esta operação resulta em VERDADEIRO ou FALSO. 
o Em C, como não existe o tipo booleano, se o resultado for 0, é considerado 
FALSO. Se for um número diferente de zero é considerado VERDADEIRO. 
 Operadores relacionais 
o São operadores que geram resultados lógicos 
(verdadeiro ou falso) pela comparação entre 
valores e/ou expressões. Os operadores 
relacionais tem a mesma prioridade. 
o Exemplos: 
 Comparação entre valores: 
10 > 2 
 Comparação entre variáveis: 
x <= y 
 Comparação entre expressões: 
x < (3 + 5 – y) 
(x + t – 1) != (x – 1 * z) 
o Exemplo de operador relacional nas condições das estruturas de desvio. 
if (x > 10) 
 x += 5; 
else 
 x -= 5; 
 
 Operadores lógicos: veremos na próxima aula! 
 Exercícios 
o Desenvolva um algoritmo para ler um número inteiro e informar se este número 
é par ou impar. 
o Escrever um algoritmo para ler dois valores e informar qual é o maior valor lido. 
o Escrever um algoritmo para ler dois valores inteiros e escrever na tela a 
diferença do maior para o menor. 
o Exercício 5, da lista 1. Incluir a seguinte condição: se a média for maior ou 
igual a 7.0, o aluno estará aprovado, caso contrário, em Exame. 
o Exercício 12, da lista 1. Observar que a raiz quadrada existe apenas para 
números positivos e que não é possível realizar uma divisão pelo número zero.

Outros materiais