Programação II Estruturas de Dados Aula 01 [email protected] Désiré NGuessan Programa = Algoritmo + Estruturas de Dados [email protected] Désiré NGuessan Introdução a Linguagem C • • Ambiente de programação DEV-C++ Declaração de Variáveis – Todas as variáveis devem ser explicitamente declaradas (antes de serem usadas), especificando: • • • tipo de dado; nome da variável Exemplo – int x; – float x; – Tipos básicos Désiré NGuessan Introdução a Linguagem C • Declaração de Variáveis – Tipos básicos (Estruturas de dados primitivas) • • char, int, float, long int, double Diferem entre si pelo espaço de memória que ocupam TIPO Tamanho Representatividade char 1byte -128 a 127 int 2 bytes -32768 a 32767 float 4 bytes 3.4x10-38 a 3.4x10 38 Long int 4 bytes -2147483648 a 2147483647 Double 8 bytes 1.7x10-308 a 1.7x10 308 Désiré NGuessan Introdução a Linguagem C • Operadores –Aritméticos: *, /, % (modulo ou resto da divisão), +, – atribuição, • i = i+2 ; –i+=2; // atribuição composta •: Désiré NGuessan Introdução a Linguagem C • Operadores •x *= y+1; –x = x*(y+1); –incremento, decremento: •Incrementar ou decrementar uma unidade no valor armazenado na variável: Désiré NGuessan Introdução a Linguagem C • Operadores •n++; // incrementa 1 no valor da variável n •n--; // decrementa 1 do valor da variável n Désiré NGuessan Introdução a Linguagem C – incremento, decremento: • Podem ser colocados antes ou depois da variável a • modificar. Se inseridos antes, modificam o valor antes da expressão ser usada e, se inseridos depois, modificam depois do uso. Alguns exemplos: – x = 2; – var = ++x; // o valor de var será 3 e o de x será 3 – x = 2; – var = x++; //o valor de var será 2 e o de x será 3. Désiré NGuessan Introdução a Linguagem C • Operadores – Relacionais: <; <=; >=; ==; != • O resultado produzido é 1 (true) ou 0 (false) • Qualquer valor diferente de o é considerado com TRUE – Lógicos : Exemplo : • • • && : (AND) || (OR) ! (NOT) int a,b; int c= 23; int d = c+4; a =(c<20) || (d>c); // Verdadeiro b= (c<20) && (d>c); // falso Désiré NGuessan Introdução a Linguagem C • Operadores – Tabela Verdade P Q P && Q P || Q V V V V V F F V F V F V F F F F Exemplo : int a,b; int c= 23; int d = c+4; a =(c<20) || (d>c); // verdadeiro b = (c<20) && (d>c); // falso Désiré NGuessan Introdução a Linguagem C • Entrada e Saída Básicas –a biblioteca padrão <stdio.h> possui funções básicas que permitem as operações de E/S , funções matemáticas (raiz quadrada, cosseno seno, etc.), manipulação de cadeias de caracteres. Désiré NGuessan Introdução a Linguagem C • Entrada e Saída Básicas (continuação) –Para usar essas funções basta incluir no programa: • # include <stdio.h> –Funções de E/S • printf() • scanf() Désiré NGuessan Introdução a Linguagem C – Função printf () • • Possibilita a saída de valores Sintaxe – – printf (formato, lista de constante/variáveis/expressõs...); Especificação de formatos: Formato especificação de formato %c char %d int %u unsigned int %f double ou float %e Double ou float no formato cientifica %s Cadeia de caracteres %g Double ou float no formato mais apropriado Désiré NGuessan Introdução a Linguagem C – Função printf () • • Exemplos: – – – – – printf (“%d %g\n”, 33, 5.3); / / imprime 33 5,3 printf (“Inteiro = %d Real = %g\n”, 33, 5.3); // imprime Inteiro = 33 Real = 5,3 printf (“ Estruturas de Dados \n“ ); // exibe apenas a mensagem Estruturas de Dados na tela Alguns caracteres de Escape Escape significado \n Caractere de nova linha \t Caractere de tabulação \r Caractere de retrocesso \” O caractere de “ \\ O caractere \ Désiré NGuessan Introdução a Linguagem C – Função printf () • É possível especificar o tamanho do campo no forma – – %4d » Um int de tamanho 4 - - - - %7.2f » » Um double ou float de tamanho 7 com duas casas decimais ----.-- Désiré NGuessan Introdução a Linguagem C – Função scanf () • • Permite capturar valores via teclado pelo usuário e armazená-los em variáveis do programa Sintaxe – – scanf (formato, lista de lista de endereço das vari\veis...); Especificação de formatos: Formato especificação de formato %c char %d int %u unsigned int %f, %e, %g float %lf, %le, %lg double %s Cadeia de caracteres Désiré NGuessan –Exercicio : Converter a altura de uma pessoa, dada em metros para uma altura expressa em pés e polegadas. Sabe-se que 1 pé tem 30,48 cm e 1 polegada tem 2,54 cm. Assim se o usuário entrar com o valor 1,8 (em metros), o programa deve exibir o valor 5ft 10.9pol. Désiré NGuessan #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int f; // numero de pé float p; // nuumero de polegadas float h ;// altura em metros // ler altura em metros printf(" Digite a altura em metros: "); scanf("%f", &h); // calcula altura em pés e polegados h= 100*h; // converte centimetros f= (int)(h/30.48); // calcula o numero de pés p = (h-f*30.48)/2.54; // calcula numero de polegadas do restante // Exibir altura convertidas printf(" Altura: %dft %.1fpol\n", f,p); system("PAUSE"); return 0; } Désiré NGuessan – Atividade • Lista d e exercícios: questão 66,73, 79, 80 e 81 [ Introdução a programação] Désiré NGuessan Quais os valores das variáveis um e dois no final da execução do trecho do programa a seguir. int um = 1;double dois = 2; dois= dois/um++; dois+=um; Désiré NGuessan