Curso de C para Engenharias

Documentos relacionados
Curso de C para Engenharias

LINGUAGEM C. Comandos de Controle do Vídeo, Teclado e especiais. Lógica de Programação

Biblioteca conio2.h Dev-C++

INF 1620 P2-17/05/08 Questão 1 Nome:

INF 1620 P1-17/09/05 Questão 1 Nome:

INF 1620 P3-21/06/08 Questão 1 Nome:

INF 1620 P1-11/04/08 Questão 1 Nome:

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton

INF 1620 P2-14/10/05 Questão 1 Nome:

INF 1620 P4 30/06/07 Questão 1 Nome:

Departamento de Informática - PUC-Rio INF 1007 Programação 2 P3 23/06/2010

INF 1620 P2-23/10/04 Questão 1 Nome:

Introdução a Computação

INF 1620 P2-01/11/03 Questão 1 Nome:

Instituto Federal de São Paulo IFSP Prof.a Tânia M. Preto. Gráficos no Dev-C++ usando a bibliteca graphics.h. 1. Dicas de instalação:

ESCOLA TÉCNICA DATA WAY Av. Francisco Glicério, Telefone: (19) Entrada e Saída

INF 1620 P1-14/04/07 Questão 1 Nome:

Conhecendo a Linguagem de Programação C

P2 Programação II Departamento de Informática/PUC-Rio

Aula prático/expositiva. Resolução de exercícios propostos e participação em sala de aula. 2h 08/05

INF 1620 P1-18/09/04 Questão 1 Nome:

Departamento de Informática - PUC-Rio INF 1007 Programação 2 P3 26/11/2010

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

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

scanf () Funções de Entrada e Saída Formatada leitura de dados; formato geral: scanf (string_de_controle,lista_de_argumentos);

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

Departamento de Informática - PUC-Rio INF 1007 Programação 2 P4 07/12/2010

Introdução à Linguagem C. Adaptado de Deise Saccol

INF 1620 P3-29/06/04 Questão 1 Nome:

Introdução a Linguagem C

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

Introdução a Programação de Jogos

Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer. Índice: Aula1 - Introdução Programa Algoritmo

3. Linguagem de Programação C

Introdução à Linguagem C. Adaptado de slides das Profas. Patrícia Jaques, Mônica Py, Deise Saccol e Vania Bogorny

Aluno: Para todas as questões desta prova considere os tipos estruturados abaixo:

INF 1620 P3-27/11/04 Questão 1 Nome:

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO

Algoritmos RESUMO - LINGUAGEM C

Introdução à Computação

Introdução à Linguagem C

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

a) Implemente uma função que retorne uma aproximação do valor de π, de acordo com a F órmula de Leibniz: ( 1)

INF 1620 P4-13/12/01 Questão 1 Nome:

Departamento de Informática - PUC-Rio INF 1007 Programação 2 P1 17/04/2010

Introdução à Linguagem C

Algoritmos e Programação

Variáveis, Tipos de Dados e Operadores

INF 1620 P4-27/06/02 Questão 1 Nome:

Programas exemplo Gráficos no Dev-C++ usando a biblioteca BGI

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

Curso de C para Engenharias

INF 1620 P1-04/10/03 Questão 1 Nome:

3. Linguagem de Programação C

Tipos Abstratos de Dados

As bibliotecas iostream e cstdlib permitem a utilização de diversos comandos de entrada e saída e funções básicas.

FUNDAÇÃO UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO

DAS5102 Fundamentos da Estrutura da Informação

Introdução à Linguagem C

USP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Computação para Engenharia Ambiental

Introdução a Computação

Linguagens de Programação I

Computação 2. Aula 3. Diego Addan Vetores de caracteres (strings)

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

Linguagem de Programação. Thiago Leite Francisco Barretto

SITUAÇÃO VETORES. Imagine o seguinte problema:

Transcrição:

Aula 8 Cristiano Dalbem Dennis Balreira Gabriel Moreira Miller Biazus Raphael Lupchinski Universidade Federal do Rio Grande do Sul Instituto de Informática Grupo PET Computação

math.h conio2.h Outras bibliotecas Bibliotecas

math.h Bibilotecas math.h conio2.h Outras bibliotecas Funções matemáticas Trigonométricas Hiperbólicas Logarítmicas e exponenciais Potência Arredondamento, resto e valor absoluto

math.h conio2.h Outras bibliotecas Algumas funções pow (double x, double n) x elevano na n sqrt (double a) Calcula a raiz quadrada de a sin (double grau) Retorna o seno de grau (deve estar em radianos) cos(double grau) Retorna o cosseno de grau (deve estar em radianos) fabs(double num) Retorna valor absoluto de num

Exemplo Bibilotecas math.h conio2.h Outras bibliotecas 1 #i n c l u d e <s t d i o. h> 2 #i n c l u d e <math. h> 3 4 i n t main ( ) 5 { 6 double x, y ; 7 p r i n t f ( " D i g i t e d o i s numeros : " ) ; 8 s c a n f ( "%l f %l f ", &x, &y ) ; 9 p r i n t f ( " x^y = %l f ", pow ( x, y ) ) ; 10 p r i n t f ( " x ^(1/2) = %l f ", s q r t ( x ) ) ; 11 p r i n t f ( " cos ( y ) = %l f ", cos ( y ) ) ; 12 p r i n t f ( " v a l o r a b s o l u t o de x = %l f ", f a b s ( y ) ) ; 13 r e t u r n 0 ; 14 }

conio2.h Bibilotecas math.h conio2.h Outras bibliotecas Modo gráco em linha de comando Permite manipular componentes grácas pela interface de linha de comando.

Constantes para cores Bibilotecas math.h conio2.h Outras bibliotecas 1 enum COLORS { 2 BLACK, BLUE, GREEN, CYAN, 3 RED, MAGENTA, BROWN, LIGHTGRAY, 4 DARKGRAY, LIGHTBLUE, LIGHTGREEN, LIGHTCYAN, 5 LIGHTRED, LIGHTMAGENTA, YELLOW, WHITE 6 }

Função para mudar a coordenada math.h conio2.h Outras bibliotecas 1 gotoxy ( x, y ) 2 // Modica a posição do cursor para a coordenada especicada por x e y 1 // Exemplo: 2 #i n c l u d e <c o n i o 2. h> 3 i n t main ( ) { 4 gotoxy ( 1 0, 1 0 ) ; 5 p r i n t f ( "P > P eh o ponto ( 1 0, 1 0 ) " ) ; 6 r e t u r n ( 0 ) ; 7 }

Funções para limpar Bibilotecas math.h conio2.h Outras bibliotecas 1 c l r s c r ( ) 2 // Limpa a tela 1 c l r e o l ( ) 2 // Limpa o resto da linha a partir do cursor 1 // Exemplo: 2 #i n c l u d e <c o n i o 2. h> 3 i n t main ( ) { 4 gotoxy ( 3 0, 1 4 ) ; 5 p r i n t f ( "SUJANDO A TELA" ) ; 6 gotoxy ( 3 0, 1 4 ) ; 7 c l r e o l ( ) ; 8 p r i n t f ( "DE NOVO" ) ; 9 c l r s c r ( ) ; 10 r e t u r n ( 0 ) ; 11 }

Funções para colorir Bibilotecas math.h conio2.h Outras bibliotecas 1 t e x t b a c k g r o u n d ( c o r ) 2 // Altera a cor de fundo - usar constantes especicadas para escolher a cor 1 t e x t c o l o r ( c o r ) 2 // Altera a cor do texto - usar constantes especicadas para escolher a cor 1 // Exemplo: 2 #i n c l u d e <c o n i o 2. h> 3 i n t main ( ) { 4 t e x t b a c k g r o u n d (LIGHTBLUE ) ; 5 c l r s c r ( ) ; 6 t e x t c o l o r (RED ) ; 7 p r i n t f ( "FUNDO EM AZUL CLARO E TEXTO EM VERMELHO" ) ; 8 r e t u r n ( 0 ) ; 9 }

Funções para escrever Bibilotecas math.h conio2.h Outras bibliotecas 1 c p u t s x y ( x, y, s t r i n g ) 2 // Coloca a string devejada nas coordenadas especicadas por x e y 3 putchxy ( x, y, c h a r a c t e r e ) 4 // Coloca o caractere desejado na posição especicada por x e y 1 // Exemplo: 2 #i n c l u d e <c o n i o 2. h> 3 i n t main ( ) { 4 c p u t s x y ( 1 1, 5, " e s t i l o p r i n t f sem gotoxy " ) ; 5 putchxy ( 4 0, 2 0, 'C ' ) ; 6 putchxy ( 4 0, 2 1, ' h ' ) ; 7 putchxy ( 4 0, 2 2, ' a ' ) ; 8 putchxy ( 4 0, 2 3, ' r ' ) ; 9 r e t u r n ( 0 ) ; 10 }

Outras funções Bibilotecas math.h conio2.h Outras bibliotecas 1 g e t c h ( ) 2 // Espera pressionar botão e retorna o charactere pressionado 3 wherex ( ) 4 // Retorna o lugar da posição x 5 wherey ( ) 6 // Retorna o lugar da posição y 7 d e l l i n e ( ) 8 // Deleta a linha atual, puxando todas as linhas abaixo 9 i n s l i n e ( ) 10 // Insere uma linha em branco a partir da linha atual

Exemplo Bibilotecas math.h conio2.h Outras bibliotecas 1 #i n c l u d e <s t d i o. h> 2 #i n c l u d e <c o n i o 2. h> 3 i n t main ( ) { 4 i n t x, y ; 5 char ch ; 6 gotoxy ( x, y ) ; 7 t e x t c o l o r (WHITE ) ; 8 do{ 9 ch = g e t c h ( ) ; 10 i f ( ch == 27) 11 p r i n t f ( "ENTER PRESSIONADO" ) ; 12 i f ( ch == ' a ' ) p r i n t f ( "a" ) ; 13 } 14 while ( ch!= ' q ' ) ; 15 r e t u r n ( 0 ) ; 16 }

Outras bibliotecas Bibilotecas math.h conio2.h Outras bibliotecas stdlib.h - biblioteca padrão, com vários tipos e conversão. time.h - dene funções de manipulação de tempo. ctype.h - funções de classicação e mapeamento de conjuntos. windows.h - manipulação de janelas e arquivos no sistema operacional windows. le.h - funções extras para manipulação de arquivos. OpenGL, GTK, SDL - especialização que dene funções grácas 3D e 2D. Utilizado para aplicações grácas.

Bibilotecas Consiste em um programa que roda sobre o nosso código fonte antes que ocorra a compilação. Inclui o código de um arquivo em outro (diretiva #include) Substitui os valores no código (diretiva #dene)

Inclusão de arquivos Bibilotecas #include <arquivo.h> - arquivo de um diretório padrão #include "arquivo.h" - arquivo dentro da pasta atual

Substituição de #denes Já foi falado diversas vezes #dene NOME valor

Cuidado! Bibilotecas A substituição se dá a nível textual Isso pode causar alguns problemas...

NÃO colocar o ; no nal 1 //um erro classico 2 #d e f i n e MAX 1 0 ; 3 4 i n t main ( ) 5 { 6 i n t a r r a y [MAX] ; // int array[10;]; 7... //seu codigo 8 r e t u r n 0 ; 9 }

Cuidado com as expressões 1 #d e f i n e SEIS 1+5 2 #d e f i n e NOVE 8+1 3 4 i n t main ( ) 5 { 6 p r i n t f ( "6 9 = %d". SEIS NOVE) ; // 6 * 9 = 42, ahnn?? 7 r e t u r n 0 ; 8 }

Headers Bibilotecas São os arquivos.h Úteis para incluir protótipos de funções, e denições de estruturas

Arquivo exemplo Bibilotecas 1 //arquivo Ponto.h 2 s t r u c t Ponto { 3 i n t x ; 4 i n t y ; 5 i n t z ; 6 } ; 7 8 typedef s t r u c t Ponto Ponto ;

Exercício Bibilotecas Jogo da velha Desenvolva um jogo da velha com interface gráca utilizando a biblioteca conio2.h.

Aula 1 Tipos de dados - int, oat, char, double, void printf - Escrever na linha de comando. scanf - Ler variável da linha de comando. Operadores Aritméticos - +, -, *, /, %, =. Algoritmos.

Aula 2 Fluxogramas. Comandos condicionais - if-else, switch. Operadores relacionais - >, >=, <, <=, ==,!=. Operadores booleanos -!, &&,.

Aula 3 Comandos iterativos - for, while, do-while. Vetores e matrizes.

Aula 4 Strings - strcmp, strcpy, strlen, strcat. Ponteiros.

Aula 5 Funções. Passagens de parâmetros - valor e referência. Recursão.

Aula 6 Estruturas. Enumerações.

Aula 7 Arquivos - texto e binário.

Aula 8 Bibliotecas - math.h, conio.h. Pré-processamento - include, dene.

Dúvidas, Sugestões, Críticas www.inf.ufrgs.br/pet pet@inf.ufrgs.br