Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Agenda
s
Laboratrio de Programao I
Laboratrio de Programao I
Laboratrio de Programao I
Laboratrio de Programao I
Laboratrio de Programao I
Laboratrio de Programao I
Laboratrio de Programao I
Laboratrio de Programao I
Laboratrio de Programao I
Modificadores
So palavras que alteram o tamanho do conjunto de valores que o tipo pode representar. Exemplos do uso de modificadores Permitir que possam ser usados mais do que 32 bits para armazenar nmeros inteiros. Obrigar uma varivel armazenar apenas nmeros inteiros sem sinal.
Laboratrio de Programao I
Modificadores
Tipos de modificadores unsigned: Aplicado aos tipos int e char. Faz com que o bit de sinal no seja usado, ou seja o tipo passa a ter um bit a mais. signed: Aplicado aos tipos int e char. O uso de signed com int redundante. long: Aplicado aos tipos int e double. Aumenta o nmero de bytes para armazenamento. short: Aplicado aos tipos int e double. Reduz o nmero de bytes para armazenamento.
Laboratrio de Programao I
Tipo
bits
signed unsigned
char
Laboratrio de Programao I
Laboratrio de Programao I
Tipo
bits
signed unsigned
char
Laboratrio de Programao I
Laboratrio de Programao I
Identificadores
So os nomes das variveis e funes usadas no programa. Devem seguir as seguintes regras de construo: Comear por uma letra (a - z , A - Z) ou um underscore ( _ ). O resto do identificador deve conter apenas letras, underscores ou dgitos (0 - 9). Em C, podem ter at 32 caracteres. Respeitar maisculas e minsculas. No podem ser iguais a uma palavra reservada. No devem ser iguais a funes da biblioteca C.
Laboratrio de Programao I
Palavras Reservadas
So os nomes de uso restrito da linguagem (comandos, estruturas, declaraes, etc.). No podem sem usadas com identificadores.
Laboratrio de Programao I
Palavras Reservadas
asm auto break case cdecl char class const continue _cs default delete do double -ds else enum _es extern _export far _fastcall float for friend goto huge if inline int interrupt _loadds long near new operator pascal private protected template this typedef union unsigned virtual void volatile while public register return _saveregs _seg short signed sizeof _ss static struct switch
Laboratrio de Programao I
Variveis
So nomes dados para posies de memria a fim de facilitar o manuseio dos dados durante a criao dos programas. Regras para os nomes das variveis Comear por uma letra (a - z , A - Z) ou um underscore ( _ ). O resto do identificador deve conter apenas letras, underscores ou dgitos (0 - 9). Respeitar maisculas e minsculas. No pode usar palavras reservadas.
Laboratrio de Programao I
Variveis
Recomendaes para os nomes das variveis Utilizar nomes que identifiquem o propsito da varivel No utilizem variveis com o nome todo em letras maisculas, uma vez que esse uma prtica usada para constantes. Variveis simples devem ser escritas todas com letras minsculas. Variveis compostas devem iniciar com maiscula a partir da segunda palavra.
Laboratrio de Programao I
Variveis
Declarao de Variveis Para usar uma varivel em um programa, necessrio fazer sua declarao antes. Informa ao processador quais so os nomes utilizados para armazenar dados variveis e quais so os tipos usados. Deste modo o processador pode alocar (reservar) o espao necessrio na memria para a manipulao destas variveis. possvel declarar mais de uma varivel ao mesmo tempo, basta separ-las por vrgulas.
Laboratrio de Programao I
Variveis
Declarao de Variveis (cont.) A sintaxe para declarao de variveis : [modificador] tipo nome_var1[, nome_var2, . . .]; Exemplos de declaraes de variveis int numInteiro; int i, j, k; char letra; float nota1, nota2, media; double numReal; unsigned int numInteiroSemSinal;
Laboratrio de Programao I
Variveis
Escopo Onde uma varivel definida. Determina a regio em que ela poder ser usada. Tipos: Local Parmetro Formal Global
Laboratrio de Programao I
Variveis
Escopo Local S podem ser utilizadas dentro do bloco que foram definidas. Criada no incio do bloco e destruda no final. A memria s ser alocada quando necessria. Evita problemas em outras partes do cdigo. Exemplo void atribui1() { int x; x = 20; } void atribui2() { int y; y = -50; }
Prof. Frederico Viana
Laboratrio de Programao I
Variveis
Escopo de Parmetro Formal Definidas depois do nome da funo e entre parnteses. So os valores que sero passados para uma funo. Exemplo void calculaSoma(float nota1, nota2) { soma = nota1 + nota2; }
Laboratrio de Programao I
Variveis
Escopo Global So definidas nas declaraes globais; Reconhecidas no cdigo inteiro; Podem ser usadas em qualquer lugar do cdigo, pois guardam os seus valores durante toda a execuo do programa; Alocadas quando o programa inicia e destrudas quando o programa termina.
Laboratrio de Programao I
Variveis
Modificadores
Tipo Significado Exemplo const int ref = 14;
const
static
static int a;
Laboratrio de Programao I
Variveis
Inicializao Exemplo1 char letra = a; int primeiro = 0; float num = 123.23; Exemplo2 int valor; valor = 25;
Laboratrio de Programao I
Constantes
Valores que no podem sem alterados pelo programa. Tipos bsicos de constantes: Inteira; Ponto Flutuante; Caractere; Cadeia de Caracteres.
Laboratrio de Programao I
Constantes
Constante Inteira: Nmero de valor inteiro Seqncia de dgitos decimais Exemplos: const int num1 = 0; const int num2 = -45; const int num3 = 1010;
Laboratrio de Programao I
Constantes
Constante Ponto Flutuante: Nmero de valor real Parte inteira separada da fracionria por ponto (.) Exemplos: const float num1 = 0.123; const float num2 = .76; const float num3 = 1.2e3; const float num4 = 10.6E2; const float num5 = -1e-1; const float num6 = 345.; const float num7 = 67;
Laboratrio de Programao I
Constantes
Constante Caractere: Caractere delimitado por aspas simples () Nmero da tabela ASCII Caractere especial precedido da barra invertida Exemplos: const char caractere1 = A; const char caractere2 = 1; const char caractere3 = 65; const char caractere4 = \n; const char caractere5 = \; const char caractere6 = \\;
Laboratrio de Programao I
Constantes
Constante Cadeia de Caracteres: Seqncia de caracteres delimitados por aspas duplas () Caractere especial precedido da barra invertida Exemplos: const char *cadeia1 = A; const char *cadeia2 = 1; const char *cadeia3 = Linha 01; const char *cadeia4 = Linha 01/nLinha 02;
Laboratrio de Programao I
Operadores
Responsveis pelas operaes elementares de uma linguagem. Aplicados a um ou mais valores. Podem ser de: Atribuio Aritmticos Atribuio aritmtica Incrementais Relacionais Lgicos
Laboratrio de Programao I
Operadores Atribuio
Usado para transferir o resultado de uma expresso para uma varivel. Sintaxe identificador = expressao; Atribuies Mltiplas var_1 [= var_2] [= var_3 . . .] = expressao; Converso de Tipo Automtica: int num1 = 5.7; Explcita: float num2 = (int) (3.6 + 2.1);
Laboratrio de Programao I
Operadores Aritmticos
Sintaxe operando operador operando Operadores + : adio - : subtrao * : multiplicao / : diviso % : mdulo (resto da diviso inteira)
Laboratrio de Programao I
Operadores Aritmticos
Diviso O resto trucado quando aplicado a nmeros inteiros: 5 / 2 == 2 Caso se deseje o valor fracionrio deve-se transformar pelo menos um nmero em ponto flutuante: 5 / 2.0 == 2.5 ou 5.0 / 2 == 2.5 Caso as variveis sejam inteiras, usa-se o casting Exemplo float x; int y = 5, z = 2; x = y / (float) z;
Laboratrio de Programao I
Operadores Aritmticos
Resto No pode ser usado em ponto flutuante Precedncia Multiplicao (*), diviso (/) e mdulo (%) tm precedncia sobre os operadores de adio. Entre operadores de mesma precedncia as operaes so efetuadas da esquerda para a direita.
Laboratrio de Programao I
Laboratrio de Programao I
Operadores Incrementais
Instrues chamadas de incremento e decremento. Operadores ++var (var = var + 1;) var++ (var = var + 1;) --var (var = var - 1;) var-- (var = var - 1;)
Laboratrio de Programao I
Operadores Incrementais
Se o operador for colocado esquerda da varivel, o valor da varivel ser incrementado (ou decrementado) antes que a varivel seja usada em alguma outra operao. Caso o operador seja colocado direita da varivel, o valor da varivel ser incrementado (ou decrementado) depois que a varivel for usada em alguma outra operao.
Laboratrio de Programao I
Operadores Incrementais
No exemplo 1, y = ++x, significa que primeiro x ter seu valor incrementado depois y receber o valor de x. Portanto, ao fim do programa, x ser 11 e y ser 11. No exemplo 2, y = x++, significa que primeiro y receber o valor de x, depois x ter seu valor incrementado. Portanto, ao fim do programa, y ser 10 e x ser 11. Exemplo1 int x, y; x = 10; y = ++x; Exemplo2 int x, y; x = 10; y = x++;
Laboratrio de Programao I
Operadores Relacionais
Verificam a relao de magnitude e igualdade entre dois valores. Operadores > : maior que < : menor que >= : maior ou igual a <= : menor ou igual a == : igual a != : diferente de
Laboratrio de Programao I
Operadores Relacionais
Sintaxe
expressao_1 operador expressao_2
Precedncia
Os operadores relacionais de igualdade tem precedncia menor que os de magnitude que tem precedncia menor que os operadores aritmticos. Operadores relacionais de mesma precedncia so avaliados da esquerda para a direita.
Laboratrio de Programao I Prof. Frederico Viana
Operadores Lgicos
Definem as maneiras como as relaes podem ser conectadas. Operadores && (AND) : expressao_1 && expressao_2 || (OR) : expressao_1 || expressao_2 ! (NOT) : ! expressao_1
Laboratrio de Programao I
Operadores Lgicos
O resultado de uma expresso lgica um valor numrico: expresso verdadeira recebe o valor 1 expresso falsa recebe o valor 0. Precedncia O operador && tem precedncia sobre o operador ||. Estes dois tm precedncia menor que os operadores relacionais. O operador ! tem a mesma precedncia que os operadores incrementais.
Laboratrio de Programao I
Laboratrio de Programao I