Computação I (MAB120) DCC/UFRJ

Documentos relacionados
Universidade Federal do Espírito Santo. Programação II. CT IX - Sala 201 Departamento de Informática Centro Tecnológico

Introdução à Computação

Introdução a Computação

Universidade Federal do Espírito Santo. Programação II. CT IX - Sala 206 Departamento de Informática Centro Tecnológico

Introdução à Computação

Introdução à Programação Estruturada Parte 3. Material da Prof. Ana Eliza

Programação: Vetores

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

Introdução a Programação de Jogos

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

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Computação Eletrônica. Tipos de dados, constantes, variáveis, operadores e expressões. Prof: Luciano Barbosa

Introdução à Computação MAC0110

Capítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática

Computação eletrônica: Operadores, expressões e funções

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 3 de setembro de 2010

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 29 de agosto de 2008

Fábio Rodrigues / Israel Lucania

Algoritmos e Lógica de Programação Introdução e formas de representação

Instruções, dados e expressões

Estrutura do programa

Princípios de Desenvolvimento de Algoritmos MAC122

Fluxogramas e variáveis

08/05/2012. Tipos de dados. Tipos de dados. Elementos Básicos. Tipos de dados. Elementos Básicos Tipos de dados. Dados e seus tipos:

Introdução a Programação de Jogos

Algoritmos: tipos de dados, variáveis e expressões

Algoritmos e 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

3. Linguagem de Programação C

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

INF1005: Programação 1. Condicionais. 08/03/10 (c) Rogério Rodrigues 1

LINGUAGEM C: VARIÁVEIS E EXPRESSÕES

Capítulo 4: Condicionais

Disciplina de Algoritmos e Programação

CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: ALGORITMOS

Introdução à Programação

Algoritmos. Conceitos e Comandos

Noções de algoritmos - Aula 1

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior

Aula 4 - Operadores. Prof. Laura Silva de Assis. Engenharia de Computação 2 o Período

Faculdade de Computação

Computação I (MAB120) DCC/UFRJ

3. Linguagem de Programação C

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2

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

CONCEITOS DE ALGORITMOS

Introdução aos Algoritmos

ALGORITMOS E ESTRUTURA DE DADOS

Estruturas de Seleção

Linguagem C: Introdução

Estruturas condicionais

Introdução à Linguagem C

Puca Huachi Vaz Penna

Introdução aos Algoritmos

ponteiros INF Programação I Prof. Roberto Azevedo

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

Algoritmos e Programação

Algoritmos - 2. Alexandre Diehl. Departamento de Física - UFPel

Introdução a Programação de Jogos

Exercícios Repetição

Introdução à Linguagem de Programação C: Variáveis, Constantes, Expressões, Atribuição, Tipos de dados, Entrada e Saída de Dados

1 TECNOLOGIA ELEMENTAR CAPÍTULO 3 E-books PCNA. Vol. 1 TECNOLOGIA ELEMENTAR CAPÍTULO 3 APRESENTANDO A LINGUAGEM C. Página 1

Aula 03: Introdução a C

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

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

ESTRUTURAS COMPOSTAS VETOR

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4

Programação Estruturada Aula - Tipos, Constantes, Variáveis e Identificadores

Linguagens de Programação PROGRAMAÇÃO DE COMPUTADORES. Linguagem C. Linguagem C Estrutura Básica. Constante (literais) Linguagem C Primeiro Programa

Aula 12- Variáveis e valores reais

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

Introdução à Programação. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO

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

ESTRUTURAS COMPOSTAS

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

Variáveis, Expressões Aritméticas e Entrada e Saída de Dados

controle de fluxo - condicionais

Tipos de Dados Simples (Continuação)

Definições de Algoritmos. Algoritmos e Programação I. Conceitos Básicos de Algoritmos. Relação entre Algoritmos e Programação

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

C Operadores e Expressões

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

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

Algoritmos: Conceitos Fundamentais. Slides de autoria de Rosely Sanches e Simone Senger de Souza

Working 03 : Conceitos Básicos I

Algoritmos: Conceitos Fundamentais. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

Introdução à Computação (IC) Linguagem C: Variáveis e Constantes

Conceitos básicos. Computação eletrônica: Gurvan Huiban

Variáveis primitivas e Controle de fluxo

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

PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel

PORTUGUÊS ESTRUTURADO: INTRODUÇÃO INTRODUÇÃO À PROGRAMAÇÃO PROF. ALEXANDRO DOS SANTOS SILVA

Introdução à Programação em Java Constantes, expressões e variáveis

Transcrição:

Computação I (MAB120) DCC/UFRJ Aula 3: conceitos e operações elementares da programação 18 de março de 2019

Objetivos dessa aula Apresentar o conceito de variável em C: declaração, inicialização, atribuição e manipulação Estudar os principais tipos de dados básicos e expressões válidas em C Mostrar como é feita a definição de variáveis e constantes em C Apresentar os comandos elementares usados em programas C

Variável Em programação, uma variável é um nome dado a um local da memória capaz de armazenar um valor através desse nome é possível acessar o valor que lá está e alterá-lo quando necessário

...comparação com uma caixa registradora O conjunto formado por: local da memória e seu respectivo nome é chamado de variável

Mudanças de estados das variáveis Pode-se entender, então, a execução de um programa como um processo de mudança de estados na memória do computador (...) int a, b, c; int maior; scanf("%d %d %d", &a, &b, &c); if(a > b) maior = a; else maior = b; if (c > maior) maior = c; printf("o maior numero eh: %d \n", maior); (...)

Identificadores Um identificador é um símbolo que representa uma entidade criada pelo programador (por exemplo, uma variável) cada linguagem define regras para formação de identificadores em geral: sequência de caracteres alfanuméricos (letras ou dígitos), sem acentos e sem cedilha e o primeiro caracter obrigatoriamente alfabético

Exemplos de identificadores em C exemplos válidos int x1; int letra; int SOMA_TOTAL; int _B32; exemplos inválidos int fim?; //? nao eh um caracter aceito int percentual%; //% nao eh um caracter aceito int 123quatro; //nao pode iniciar com numero int hola!; //! nao eh um caracter aceito int @ARROBA; //@ nao eh um caracter aceito

Identificadores maiúsculos e minúsculos Atenção! C diferencia caracteres minúsculos e maiúsculos (ex., SOMA TOTAL é diferente de soma total ) Boa prática de programação: EVITAR criar identificadores que apenas se diferenciem pelo formato das letras pois prejudica a legibilidade dos programas

Comando de atribuição O comando de atribuição é usado para alterar o valor de uma variável (e consequentemente o estado de um programa) Forma geral: < variavel > = < expressao >; Exemplos: a = 1; z = x + y;

Expressões Aritméticas: operadores e operandos são de tipos numéricos prioridade das operações: 1. multiplicação, divisão e resto de divisão; 2. adição e subtração Relacionais: comparam valores/expressões em C, resultam sempre em 0 (zero) para uma comparação falsa ou 1 (um) para uma comparação verdadeira Lógicas: relacionam os resultados de um conjunto de expressões relacionais (operadores E, OU e NÃO) (mesmo retorno das expressões relacionais)

Exemplo de atribuições e expressões aritméticas (...) float a; // coeficiente angular float b; // coeficiente linear float c; // termo independente float delta; // discriminante float raiz1; // primeira raiz float raiz2; // segunda raiz (...) delta = b * b - 4 * a * c; if(delta >= 0){ raiz1 = (-b + sqrt(delta)) / (2 * a); raiz2 = (-b - sqrt(delta)) / (2 * a); printf("as raizes sao: %f e %f\n", raiz1, raiz2); } else { (...)

Operadores relacionais < (menor que) (a < 10) <= (menor ou igual a) (x <= y) == (igual a) (4 == 2*2) > (maior que) (t > 0) >= (maior ou igual a) (delta >= 0)!= (diferente de) (x!= 9+8*8)

Exemplo de uso de operador relacional int main(void) { float a, b, x; printf("digite os coeficientes da equacao:\n"); scanf("%f %f", &a, &b); if(a==0) { printf("coeficiente a inválido\n"); } else { x = -b/a; printf("o valor de x eh: %f\n", x); } return 0; } Atenção: diferença entre = e == em C

Operadores lógicos && (E) (x >= -1) && (x <= 1) (OU) (x < -1) (x > 1)! (N~AO)!(x < 0)

Exemplos de expressões lógicas (...) if ( (nota >= 3.0) && (nota < 7.0) ) //operador E (&&) printf("deve fazer prova final"); //operador OU ( ) if ( (nota_final < 5.0) (faltas > 11)) printf("reprovado") //operador N~AO (!) if (! (fez(p1) fez(p2)) ) printf("caso excepcional") (...)

Um tipo de dado delimita o conjunto de valores possíveis que uma determinada variável pode representar e as operações básicas possíveis sobre essas variáveis exemplos em C: int, float, char,...

Declaração de variáveis Declarar uma variável consiste em escrever seu tipo e nome Forma geral: < tipo >< identificador >; é possível declarar mais de uma variável em uma mesma linha, desde que todas sejam do mesmo tipo int idade; float valorfracionado, saldo, salariominimo; int altura, largura, comprimento; char ultimaletra, primeiraletra;

Tipo inteiro Representa um intervalo finito do conjunto matemático dos números inteiros existem vários tipos inteiros em C (int, short int, long int), usaremos principalmente o tipo int as operações disponíveis são: soma, subtração, multiplicação, divisão e resto da divisão

Exemplos de operações sobre variáveis do tipo inteiro int main() { int x, y, a, b, c, d, e, f; x = 10; y = 3; a = x + y; b = x - y; c = x * y; d = x / y; // o resultado eh truncado e = x % y; // calcula o resto da divisao f = -x; // inverte o sinal do numero // c = xy; -- erro // c = x. y; -- erro return 0 ; }

Questão OBI (2012, Fase 2, Nível Júnior) João deseja fazer bolos usando uma receita que indica que devem ser usadas 2 xícaras de farinha de trigo, 3 ovos e 5 colheres de sopa de leite. Em casa ele tem A xícaras de farinha de trigo, B ovos e C colheres de sopa de leite. João não tem muita prática com a cozinha, e portanto ele só se arriscará a fazer medidas exatas da receita de bolo (por exemplo, se ele tiver material suficiente para fazer mais do que 2 e menos do que 3 bolos, ele fará somente 2 bolos). Sabendo disso, escreva uma função que determine qual a quantidade máxima de bolos que ele consegue fazer.

, continuação... Ingredientes 2 xícaras de trigo, 3 ovos e 5 colheres de leite Entrada Três números inteiros A, B e C, indicando respectivamente o número de xícaras de trigo, o número de ovos e o número de colheres de leite que João tem em casa. Saída Sua função deve retornar a quantidade máxima de bolos que João consegue fazer. Exemplos Entrada : 4 6 10 - Saída : 2 Entrada : 4 6 9 - Saída : 1

Tipo racional Representa um intervalo dos números racionais existem dois tipos racionais em C (float e double), usaremos principalmente o tipo float as operações disponíveis são: soma, subtração, multiplicação e divisão

Exemplos de operações sobre variáveis do tipo float int main(){ float p, q, x, z; int y = 4; x = 10; z = 4.4; p = 50 / 30; // p receberá 1 (divisao inteira) q = 10.0 / 4; // q receberá 2.5 z = x / y; // z receberá 2.5 } Atenção: para que o resultado de uma divisão seja um valor real (não truncado) é preciso que ao menos um dos argumentos (dividendo ou divisor) seja um valor real

Tipo booleano Tipo de dados mais simples, contém apenas dois valores possíveis: verdadeiro e falso na linguagem C não há uma representação específica para esse tipo de dado e são utilizados valores inteiros para codificá-lo todo valor inteiro diferente de zero é considerado valor VERDADEIRO e o valor zero é considerado FALSO

Tipo caracter Representa letras, números e caracteres especiais (ex., a, +,!) na linguagem C, o tipo char é empregado para representar um caracter na atribuição, o caracter desejado deve ser colocado entre aspas simples

Exemplos de atribuições para variáveis do tipo char int main() { char letraa, letrafmaiuscula, simbolosoma; letraa = a ; letrafmaiuscula = F ; simbolosoma = + ; return 0; }

Conversão de tipos float < int: não há problemas (o conjunto dos números racionais contém o conjunto dos inteiros) int < float: perderá a parte fracionária (truncamento)

Valor pre-determinado que pode ser utilizado em várias partes do código Forma geral: #define <identificador> <valor> para facilitar a leitura do código e simplificar a alteração dessas constantes é possível definir um nome significativo para elas em C, usamos a diretiva define, seguida pelo identificador da constante e pelo seu respectivo valor, todos separados por um espaço em branco

Exemplo de definição de constantes #define PI 3.141593 #define FALSO 0 #define VERDADEIRO 1 #define RAIZDEDOIS 1.414214 int main(){ float raio, comprimento, area; raio = 10; area = PI * raio * raio; comprimento = 2 * PI * raio; return 0; }

Um número extraordinário N na faixa de 100 até 999 é um número que obedece a seguinte regra: n = centenas 3 + dezenas 3 + unidades 3. Por exemplo, o número 153 obedece a regra pois: 153 = 1 3 + 5 3 + 3 3. 1 Escreva um algoritmo em pseudocódigo que receba um número inteiro N e informe se esse número é extraordinário ou não. 2 Agora escreva o algoritmo proposto na linguagem C.

Referências bibliográficas 1 à programação: uma nova abordagem usando C, Flávio Varejão, Elsevier-Campus, 2015 2 Curso de Linguagem C, apostila do prof. Adriano Cruz (DCC/UFRJ), 2013