met comp´ compiladores c metodos computacionais …helder/metcomp/2017-1/aula2/aula2.pdf ·...

114
et Comp Compiladores C Exerc´ ıcio C: Literais C: Vari´ aveis Exerc´ ıcio C: Mem ´ oria Exemplo Operac ¸˜ oes Exerc´ ıcio Leitura Exerc´ ıcio Func ¸˜ oes Bases etodos Computacionais em F´ ısica Jos ´ e Helder Lopes e Sandra Amato Instituto de F´ ısica Universidade Federal do Rio de Janeiro Primeiro Semestre de 2017

Upload: buimien

Post on 08-Oct-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Metodos Computacionais em Fısica

Jose Helder Lopes e Sandra Amato

Instituto de FısicaUniversidade Federal do Rio de Janeiro

Primeiro Semestre de 2017

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O que e um Programa

Ü Um programa e a transcricao de um algoritmo parauma serie de instrucoes que podem ser executadaspor um computador.

Ü E preciso criar um modo de transcrever comandoscompreensıveis para humanos

programa fonteem comandos executaveis por uma CPU

programa executavelIsso depende da CPU e de um codigo pre-definido(linguagem).

8 O transcritor e chamado de compilador.8 A linguagem de programacao usada na disciplina

sera o C.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O que e um Programa

Ü Um programa e a transcricao de um algoritmo parauma serie de instrucoes que podem ser executadaspor um computador.

Ü E preciso criar um modo de transcrever comandoscompreensıveis para humanos

programa fonteem comandos executaveis por uma CPU

programa executavelIsso depende da CPU e de um codigo pre-definido(linguagem).

8 O transcritor e chamado de compilador.8 A linguagem de programacao usada na disciplina

sera o C.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O que e um Programa

Ü Um programa e a transcricao de um algoritmo parauma serie de instrucoes que podem ser executadaspor um computador.

Ü E preciso criar um modo de transcrever comandoscompreensıveis para humanos

programa fonteem comandos executaveis por uma CPU

programa executavelIsso depende da CPU e de um codigo pre-definido(linguagem).

8 O transcritor e chamado de compilador.

8 A linguagem de programacao usada na disciplinasera o C.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O que e um Programa

Ü Um programa e a transcricao de um algoritmo parauma serie de instrucoes que podem ser executadaspor um computador.

Ü E preciso criar um modo de transcrever comandoscompreensıveis para humanos

programa fonteem comandos executaveis por uma CPU

programa executavelIsso depende da CPU e de um codigo pre-definido(linguagem).

8 O transcritor e chamado de compilador.8 A linguagem de programacao usada na disciplina

sera o C.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Criando um programa executavel

8 O programa fonte e escrito em ascii.Ü Letras (maiusculas 6= minusculas)Ü Algarismos 0-9Ü Sımbolos: "#$%&’()*+,-. / : ;<=>?@[\]ˆ_‘ {|} !

8 O nome do arquivo que contem o codigo fonte tera aextensao *.c

8 Um arquivo executavel e criado quando compilamos oprograma usando o comando:gcc programa.c -o programa(Nesse processo ocorrem 3 etapas: pre-processamento,compilacao e linkagem com bibliotecas)

8 Para executar o programa, usamos o comando:./programa

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Linguagem C - Visao geral

Ü A linguagem C foi inicialmente desenvolvida por DennisRitchie, dos Laboratorios Bell, entre 1969 e 1973.

Ü Fornece uma eficiente relacao com instrucoes tıpicasde linguagem de maquina ou linguagens de baixonıvel, como o assembly.

Ü Foi logo utilizada para codificar inumeros aplicativos,desde sistema operacionais ate software parasupercomputadores. E portavel e eficiente.

Ü A origem do C esta interligada com a do sistemaoperacional UNIX, posteriormente re-escrito em C.

Ü Muitas outras linguagens herdaram caracterısticas doC: C++, Java, LPC, C#, Objective-C, Perl, PHP, Python,a Unix’s C shell, . . . .

Ü C e uma linguagem de proposito generico. E a maislargamente utilizada de todos os tempos.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O Primeiro Programa em C

8 Escolha um editor detexto (vi, gedit ...) paracriar um arquivo: *.c

8 O programa principaldeve ficar entre {}

8 Inclua biblioteca padraode entrada e saıda (I/O)

8 Inclua os comandos8 printf→ funcao que

imprime texto8 \n e notacao de nova

linha

gedit primeiroPrograma.c &

#include <stdio.h>int main( ){

printf(”Funciona!\n”);return 0;

}

8 A execucao da funcao termina ao encontrar o return

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O Primeiro Programa em C

8 Escolha um editor detexto (vi, gedit ...) paracriar um arquivo: *.c

8 O programa principal(main) deve ficar entre {}

8 Inclua biblioteca padraode entrada e saıda (I/O)

8 Inclua os comandos8 printf→ funcao que

imprime texto8 \n e notacao de nova

linha

#include <stdio.h>

int main( ){

printf(”Funciona!\n”);return 0;

}

8 A execucao da funcao termina ao encontrar o return

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O Primeiro Programa em C

8 Escolha um editor detexto (vi, gedit ...) paracriar um arquivo: *.c

8 O programa principaldeve ficar entre {}

8 Inclua biblioteca padrao(standard) de entrada esaıda (I/O)

8 Inclua os comandos8 printf→ funcao que

imprime texto8 \n e notacao de nova

linha

#include <stdio.h>int main( ){

printf(”Funciona!\n”);return 0;

}

8 A execucao da funcao termina ao encontrar o return

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O Primeiro Programa em C

8 Escolha um editor detexto (vi, gedit ...) paracriar um arquivo: *.c

8 O programa principaldeve ficar entre {}

8 Inclua biblioteca padraode entrada e saıda (I/O)

8 Inclua os comandos

8 printf→ funcao queimprime texto

8 \n e notacao de novalinha

#include <stdio.h>int main( ){

printf(”Funciona!\n”);

return 0;

}

8 A execucao da funcao termina ao encontrar o return

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O Primeiro Programa em C

8 Escolha um editor detexto (vi, gedit ...) paracriar um arquivo: *.c

8 O programa principaldeve ficar entre {}

8 Inclua biblioteca padraode entrada e saıda (I/O)

8 Inclua os comandos8 Note o ;

8 printf→ funcao queimprime texto

8 \n e notacao de novalinha

#include <stdio.h>int main( ){

printf(”Funciona!\n”);return 0;

}

8 A execucao da funcao termina ao encontrar o return

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O Primeiro Programa em C

8 Escolha um editor detexto (vi, gedit ...) paracriar um arquivo: *.c

8 O programa principaldeve ficar entre {}

8 Inclua biblioteca padraode entrada e saıda (I/O)

8 Inclua os comandos8 printf→ funcao que

imprime texto

8 \n e notacao de novalinha

#include <stdio.h>int main( ){

printf(”Funciona!\n”);return 0;

}

8 A execucao da funcao termina ao encontrar o return

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O Primeiro Programa em C

8 Escolha um editor detexto (vi, gedit ...) paracriar um arquivo: *.c

8 O programa principaldeve ficar entre {}

8 Inclua biblioteca padraode entrada e saıda (I/O)

8 Inclua os comandos8 printf→ funcao que

imprime texto8 \n e notacao de nova

linha

#include <stdio.h>int main( ){

printf(”Funciona!\n”);return 0;

}

8 A execucao da funcao termina ao encontrar o return

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

O Primeiro Programa em C

8 Escolha um editor detexto (vi, gedit ...) paracriar um arquivo: *.c

8 O programa principaldeve ficar entre {}

8 Inclua biblioteca padraode entrada e saıda (I/O)

8 Inclua os comandos8 printf→ funcao que

imprime texto8 \n e notacao de nova

linha

#include <stdio.h>int main( ){

printf(”Funciona!\n”);return 0;

}

8 A execucao da funcao termina ao encontrar o return

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

8 Um programa em C se organiza em funcoes.8 Temos uma funcao especial: main(). Todo programa

em C deve ter uma e somente uma funcao main(), oprograma comeca a ser executado no inıcio dela.

8 As expressoes que compoem uma funcao saoenvolvidas por {}

8 Usualmente a funcao main() chamara outras funcoes.Neste exemplo temos apenas uma: printf

8 Um metodo de comunicacao entre funcoes e passaruma lista de valores, chamados argumentos e que saocolocados entre parentesis. Neste exemplo a funcaomain() nao tem argumentos e a funcao printf recebecomo argumento o que se deseja imprimir na tela.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exercıcio 1

Escreva e rode um programa usando o comando printf.

Experimente alguns dos seguintes caracteres de escape nolugar do \n:\t: horizontal tab, \v: vertical tab, \b: backspace,\r: carriage return, \f: formfeed, \a: bell, \\ : backslash,\?: question mark , \’: single quote, \” : double quote.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Valores literais em C

Como devemos escrever os dados num programa em C ?Ü Inteiros de precisao simples: 3, 540, ...Ü Inteiros de precisao dupla: 120l, 15L ( l ou L→ long)Ü Reais no formato decimal: 10.3, 102.5761, ...

O ponto decimal e obrigatorio.Ü Reais no formato exponencial: 1.e-3, 13E-5, 1.7e-6, ...

O ponto decimal nao e obrigatorioÜ Reais de precisao dupla: 14.6L, 1.8025e-2L, ...Ü Caracteres: A letra entre “plics”: ’a’, ’G’, ’9’, ’\n’, ’\t’, ...Ü Sequencia de caracteres ou String: Caracteres entre

aspas: “Bom dia”, “Tudo\tbem?\n”, ...

Outros (pesquise): 13u, 57ul, 036, 0x25dF, ’\u03C0’, ...

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Valores literais em C

Como devemos escrever os dados num programa em C ?Ü Inteiros de precisao simples: 3, 540, ...Ü Inteiros de precisao dupla: 120l, 15L ( l ou L→ long)Ü Reais no formato decimal: 10.3, 102.5761, ...

O ponto decimal e obrigatorio.Ü Reais no formato exponencial: 1.e-3, 13E-5, 1.7e-6, ...

O ponto decimal nao e obrigatorioÜ Reais de precisao dupla: 14.6L, 1.8025e-2L, ...Ü Caracteres: A letra entre “plics”: ’a’, ’G’, ’9’, ’\n’, ’\t’, ...Ü Sequencia de caracteres ou String: Caracteres entre

aspas: “Bom dia”, “Tudo\tbem?\n”, ...Outros (pesquise): 13u, 57ul, 036, 0x25dF, ’\u03C0’, ...

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Valores literais em C

Observacoes:’a’ e diferente de ”a”1 e diferente de ’1’ ou ”1”e de 1.0E muito melhor escrever 1e-6 do que 0.000001 ...

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Identificadores em C

Ü Na linguagem C usamos nomes arbitrarios para designarvariaveis, constantes e funcoes, chamados deidentificadores.Nenhum identificador e reconhecido pelo programa antes deser declarado.

Ü No inıcio de cada bloco de codigo sao feitas as declaracoesde variaveis e constantes, onde definimos seus nomes etipos. Precisamos especificar o tipo de todas as variaveis.

Ü Os nomes dos identificadores devem refletir seusignificado!

Ü Na escolha dos identificadores as letras minusculas saodiferenciadas das maiusculas, os nomes podem conterletras e numeros, mas devem iniciar por uma letra.

Ü O uso de letras minusculas e uma tradicao em C. Paranomes compostos sugere-se usar o “ ” (sublinhado) ouletras maiusculas como separador.Ex.: velocidade media ou velocidadeMedia

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis em C

Ü Todas os identificadores usados em umprograma devem ser declarados

Ü Exemplos de declaracao de variaveis:int certos, errados;long contador;float sigma;double massa, velocidade;

Outros tipos: short, unsigned int, char, ...

Ü Exemplos de declaracao de variaveiscom inicializacao:char letra = ’c’;double aceleracao = 1.2e+2;

Ü Exemplos de declaracao de constantes:const double pi=3.141592654;const int N=3;

Escolha bemos nomes dassuas variaveis

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis em C

Ü Todas os identificadores usados em umprograma devem ser declarados

Ü Exemplos de declaracao de variaveis:int certos, errados;long contador;float sigma;double massa, velocidade;

Outros tipos: short, unsigned int, char, ...

Ü Exemplos de declaracao de variaveiscom inicializacao:char letra = ’c’;double aceleracao = 1.2e+2;

Ü Exemplos de declaracao de constantes:const double pi=3.141592654;const int N=3;

Escolha bemos nomes dassuas variaveis

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis em C

Ü Todas os identificadores usados em umprograma devem ser declarados

Ü Exemplos de declaracao de variaveis:int certos, errados;long contador;float sigma;double massa, velocidade;

Outros tipos: short, unsigned int, char, ...

Ü Exemplos de declaracao de variaveiscom inicializacao:char letra = ’c’;double aceleracao = 1.2e+2;

Ü Exemplos de declaracao de constantes:const double pi=3.141592654;const int N=3;

Escolha bemos nomes dassuas variaveis

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis em C

Ü Todas os identificadores usados em umprograma devem ser declarados

Ü Exemplos de declaracao de variaveis:int certos, errados;long contador;float sigma;double massa, velocidade;

Outros tipos: short, unsigned int, char, ...

Ü Exemplos de declaracao de variaveiscom inicializacao:char letra = ’c’;double aceleracao = 1.2e+2;

Ü Exemplos de declaracao de constantes:const double pi=3.141592654;const int N=3;

Escolha bemos nomes dassuas variaveis

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis em C

Ü Todas os identificadores usados em umprograma devem ser declarados

Ü Exemplos de declaracao de variaveis:int certos, errados;long contador;float sigma;double massa, velocidade;

Outros tipos: short, unsigned int, char, ...

Ü Exemplos de declaracao de variaveiscom inicializacao:char letra = ’c’;double aceleracao = 1.2e+2;

Ü Exemplos de declaracao de constantes:const double pi=3.141592654;const int N=3;

Escolha bemos nomes dassuas variaveis

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Essas expressoes tem o efeito de solicitar que sejamreservados espacos de memoria com o tamanho eestrutura especıficos de cada tipo de dado, eassocia-los aos nomes que escolhemos.

O valor inicial das variaveis em geral e algum lixo,essencialmente o conteudo que ja existia naquela posicaode memoria.

Ü Atribuicao de um valor a uma variavel (ja declaradaanteriormente):errados = 0;velocidade = 10.34;k = 3;forca = k*x;

Ü Cuidado! Uma variavel esta associada a uma regiao damemoria. Se voce nao definir um valor inicial adequado, oprograma usa o valor que ja existia nessa posicao

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Essas expressoes tem o efeito de solicitar que sejamreservados espacos de memoria com o tamanho eestrutura especıficos de cada tipo de dado, eassocia-los aos nomes que escolhemos.

O valor inicial das variaveis em geral e algum lixo,essencialmente o conteudo que ja existia naquela posicaode memoria.

Ü Atribuicao de um valor a uma variavel (ja declaradaanteriormente):errados = 0;velocidade = 10.34;k = 3;forca = k*x;

Ü Cuidado! Uma variavel esta associada a uma regiao damemoria. Se voce nao definir um valor inicial adequado, oprograma usa o valor que ja existia nessa posicao

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis em C

Ü Para imprimir uma variavel:printf(”resposta = %d \n”, errados);

printf(”item: %d valor: %f \n”, i, val);

Especificacoes de formato:%d: inteiro,%f: float, notacao decimal%g: float,notacao decimal ou cientıfica,%c: caracter.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis em C

Ü Para imprimir uma variavel:printf(”resposta = %d \n”, errados);printf(”item: %d valor: %f \n”, i, val);

Especificacoes de formato:%d: inteiro,%f: float, notacao decimal%g: float,notacao decimal ou cientıfica,%c: caracter.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis em C

Ü Para imprimir uma variavel:printf(”resposta = %d \n”, errados);printf(”item: %d valor: %f \n”, i, val);

Especificacoes de formato:%d: inteiro,%f: float, notacao decimal%g: float,notacao decimal ou cientıfica,%c: caracter.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis em C

Ü Para imprimir uma variavel:printf(”resposta = %d \n”, errados);printf(”item: %d valor: %f \n”, i, val);

Especificacoes de formato:%d: inteiro,%f: float, notacao decimal%g: float,notacao decimal ou cientıfica,%c: caracter.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exercıcio 2

Escreva um programa que imprima varios tipos de variaveisantes e apos o valor ser atribuıdo

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis e Memoria

Ü O tamanho da area de memoria reservada para cadatipo de variavel pode ser obtido atraves do operadorsizeof

Ü O comando abaixo imprime a area reservada paravariaveis do tipo int.

printf(”um inteiro tem %d bytes\n”,sizeof(int));Ü Baixe os programas sizes.c e limits.c da pagina do

curso. Veja o conteudo, compile, rode cada um.Observe o resultado.

Ü Recomendamos o uso de tipo double para variaveisreais

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis e Memoria

Ü O tamanho da area de memoria reservada para cadatipo de variavel pode ser obtido atraves do operadorsizeof

Ü O comando abaixo imprime a area reservada paravariaveis do tipo int.

printf(”um inteiro tem %d bytes\n”,sizeof(int));

Ü Baixe os programas sizes.c e limits.c da pagina docurso. Veja o conteudo, compile, rode cada um.Observe o resultado.

Ü Recomendamos o uso de tipo double para variaveisreais

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis e Memoria

Ü O tamanho da area de memoria reservada para cadatipo de variavel pode ser obtido atraves do operadorsizeof

Ü O comando abaixo imprime a area reservada paravariaveis do tipo int.

printf(”um inteiro tem %d bytes\n”,sizeof(int));Ü Baixe os programas sizes.c e limits.c da pagina do

curso. Veja o conteudo, compile, rode cada um.Observe o resultado.

Ü Recomendamos o uso de tipo double para variaveisreais

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Variaveis e Memoria

Ü O tamanho da area de memoria reservada para cadatipo de variavel pode ser obtido atraves do operadorsizeof

Ü O comando abaixo imprime a area reservada paravariaveis do tipo int.

printf(”um inteiro tem %d bytes\n”,sizeof(int));Ü Baixe os programas sizes.c e limits.c da pagina do

curso. Veja o conteudo, compile, rode cada um.Observe o resultado.

Ü Recomendamos o uso de tipo double para variaveisreais

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exemplo

Programa sizes.c

#include <stdio.h>int main(){printf("um caracter tem %d bytes\n",sizeof(char));printf("um inteiro tem %d bytes\n",sizeof(int));printf("um inteiro curto tem %d bytes\n",sizeof(short));printf("um inteiro longo tem %d bytes\n",sizeof(long));printf("um real tem %d bytes\n",sizeof(float));printf("um real duplo tem %d bytes\n",sizeof(double));return 0;

}

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes Aritmeticas Simples

Os operadores aritmeticos binarios sao +, -, *, / e %.

Exemplo de operacao

double x, a; Ü Memoria e alocada para x e aa = 2.0; Ü O valor 2.0 e atribuıdo a ax = 10.5; Ü O valor 10.5 e atribuıdo a xx = a*x; Ü O produto (21.0) e atribuıdo a x

Exemplo com inteiros

int i=3, j=2, k;k = i/j; Ü k passa a valer 1 e nao 1.5k = j/i; Ü k passa a valer 0 e nao 0.66...

% e o operador modulo ou resto: calcula o resto da divisaodo primeiro operando pelo segundo. Os operandos devemser inteiros: 3%2 = 1, 4%2 = 0

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes Aritmeticas Simples

Os operadores aritmeticos binarios sao +, -, *, / e %.

Exemplo de operacaodouble x, a; Ü Memoria e alocada para x e a

a = 2.0; Ü O valor 2.0 e atribuıdo a ax = 10.5; Ü O valor 10.5 e atribuıdo a xx = a*x; Ü O produto (21.0) e atribuıdo a x

Exemplo com inteiros

int i=3, j=2, k;k = i/j; Ü k passa a valer 1 e nao 1.5k = j/i; Ü k passa a valer 0 e nao 0.66...

% e o operador modulo ou resto: calcula o resto da divisaodo primeiro operando pelo segundo. Os operandos devemser inteiros: 3%2 = 1, 4%2 = 0

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes Aritmeticas Simples

Os operadores aritmeticos binarios sao +, -, *, / e %.

Exemplo de operacaodouble x, a; Ü Memoria e alocada para x e aa = 2.0; Ü O valor 2.0 e atribuıdo a ax = 10.5; Ü O valor 10.5 e atribuıdo a x

x = a*x; Ü O produto (21.0) e atribuıdo a x

Exemplo com inteiros

int i=3, j=2, k;k = i/j; Ü k passa a valer 1 e nao 1.5k = j/i; Ü k passa a valer 0 e nao 0.66...

% e o operador modulo ou resto: calcula o resto da divisaodo primeiro operando pelo segundo. Os operandos devemser inteiros: 3%2 = 1, 4%2 = 0

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes Aritmeticas Simples

Os operadores aritmeticos binarios sao +, -, *, / e %.

Exemplo de operacaodouble x, a; Ü Memoria e alocada para x e aa = 2.0; Ü O valor 2.0 e atribuıdo a ax = 10.5; Ü O valor 10.5 e atribuıdo a xx = a*x; Ü O produto (21.0) e atribuıdo a x

Exemplo com inteiros

int i=3, j=2, k;k = i/j; Ü k passa a valer 1 e nao 1.5k = j/i; Ü k passa a valer 0 e nao 0.66...

% e o operador modulo ou resto: calcula o resto da divisaodo primeiro operando pelo segundo. Os operandos devemser inteiros: 3%2 = 1, 4%2 = 0

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes Aritmeticas Simples

Os operadores aritmeticos binarios sao +, -, *, / e %.

Exemplo de operacaodouble x, a; Ü Memoria e alocada para x e aa = 2.0; Ü O valor 2.0 e atribuıdo a ax = 10.5; Ü O valor 10.5 e atribuıdo a xx = a*x; Ü O produto (21.0) e atribuıdo a x

Exemplo com inteirosint i=3, j=2, k;

k = i/j; Ü k passa a valer 1 e nao 1.5k = j/i; Ü k passa a valer 0 e nao 0.66...

% e o operador modulo ou resto: calcula o resto da divisaodo primeiro operando pelo segundo. Os operandos devemser inteiros: 3%2 = 1, 4%2 = 0

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes Aritmeticas Simples

Os operadores aritmeticos binarios sao +, -, *, / e %.

Exemplo de operacaodouble x, a; Ü Memoria e alocada para x e aa = 2.0; Ü O valor 2.0 e atribuıdo a ax = 10.5; Ü O valor 10.5 e atribuıdo a xx = a*x; Ü O produto (21.0) e atribuıdo a x

Exemplo com inteirosint i=3, j=2, k;k = i/j;

Ü k passa a valer 1 e nao 1.5k = j/i; Ü k passa a valer 0 e nao 0.66...

% e o operador modulo ou resto: calcula o resto da divisaodo primeiro operando pelo segundo. Os operandos devemser inteiros: 3%2 = 1, 4%2 = 0

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes Aritmeticas Simples

Os operadores aritmeticos binarios sao +, -, *, / e %.

Exemplo de operacaodouble x, a; Ü Memoria e alocada para x e aa = 2.0; Ü O valor 2.0 e atribuıdo a ax = 10.5; Ü O valor 10.5 e atribuıdo a xx = a*x; Ü O produto (21.0) e atribuıdo a x

Exemplo com inteirosint i=3, j=2, k;k = i/j; Ü k passa a valer 1 e nao 1.5

k = j/i; Ü k passa a valer 0 e nao 0.66...

% e o operador modulo ou resto: calcula o resto da divisaodo primeiro operando pelo segundo. Os operandos devemser inteiros: 3%2 = 1, 4%2 = 0

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes Aritmeticas Simples

Os operadores aritmeticos binarios sao +, -, *, / e %.

Exemplo de operacaodouble x, a; Ü Memoria e alocada para x e aa = 2.0; Ü O valor 2.0 e atribuıdo a ax = 10.5; Ü O valor 10.5 e atribuıdo a xx = a*x; Ü O produto (21.0) e atribuıdo a x

Exemplo com inteirosint i=3, j=2, k;k = i/j; Ü k passa a valer 1 e nao 1.5k = j/i;

Ü k passa a valer 0 e nao 0.66...

% e o operador modulo ou resto: calcula o resto da divisaodo primeiro operando pelo segundo. Os operandos devemser inteiros: 3%2 = 1, 4%2 = 0

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes Aritmeticas Simples

Os operadores aritmeticos binarios sao +, -, *, / e %.

Exemplo de operacaodouble x, a; Ü Memoria e alocada para x e aa = 2.0; Ü O valor 2.0 e atribuıdo a ax = 10.5; Ü O valor 10.5 e atribuıdo a xx = a*x; Ü O produto (21.0) e atribuıdo a x

Exemplo com inteirosint i=3, j=2, k;k = i/j; Ü k passa a valer 1 e nao 1.5k = j/i; Ü k passa a valer 0 e nao 0.66...

% e o operador modulo ou resto: calcula o resto da divisaodo primeiro operando pelo segundo. Os operandos devemser inteiros: 3%2 = 1, 4%2 = 0

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes Aritmeticas Simples

Os operadores aritmeticos binarios sao +, -, *, / e %.

Exemplo de operacaodouble x, a; Ü Memoria e alocada para x e aa = 2.0; Ü O valor 2.0 e atribuıdo a ax = 10.5; Ü O valor 10.5 e atribuıdo a xx = a*x; Ü O produto (21.0) e atribuıdo a x

Exemplo com inteirosint i=3, j=2, k;k = i/j; Ü k passa a valer 1 e nao 1.5k = j/i; Ü k passa a valer 0 e nao 0.66...

% e o operador modulo ou resto: calcula o resto da divisaodo primeiro operando pelo segundo. Os operandos devemser inteiros: 3%2 = 1, 4%2 = 0

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Precedencia

Ü Numa expressao composta de varias operacoesaritmeticas, a ordem com que elas sao executadasdepende da precedencia dos operadores.

Ü *, / e % tem a mesma precedencia, e temprecedencia sobre as operacoes + e−.

Ü No caso de operacoes com mesma precedencia, aexecucao e feita da esquerda para a direita.

double x,y;x = 1.0;

y = 1./x+1.0;

A operacao 1./x serarealizada primeiro, e o valorde y sera

2.0

Para executar a divisao porx + 1.0 e preciso usar ().O valor de y sera 0.5

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Precedencia

Ü Numa expressao composta de varias operacoesaritmeticas, a ordem com que elas sao executadasdepende da precedencia dos operadores.

Ü *, / e % tem a mesma precedencia, e temprecedencia sobre as operacoes + e−.

Ü No caso de operacoes com mesma precedencia, aexecucao e feita da esquerda para a direita.

double x,y;x = 1.0;

y = 1./x+1.0;

A operacao 1./x serarealizada primeiro, e o valorde y sera

2.0

Para executar a divisao porx + 1.0 e preciso usar ().O valor de y sera 0.5

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Precedencia

Ü Numa expressao composta de varias operacoesaritmeticas, a ordem com que elas sao executadasdepende da precedencia dos operadores.

Ü *, / e % tem a mesma precedencia, e temprecedencia sobre as operacoes + e−.

Ü No caso de operacoes com mesma precedencia, aexecucao e feita da esquerda para a direita.

double x,y;x = 1.0;

y = 1./x+1.0;

A operacao 1./x serarealizada primeiro, e o valorde y sera 2.0

Para executar a divisao porx + 1.0 e preciso usar ().O valor de y sera 0.5

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Precedencia

Ü Numa expressao composta de varias operacoesaritmeticas, a ordem com que elas sao executadasdepende da precedencia dos operadores.

Ü *, / e % tem a mesma precedencia, e temprecedencia sobre as operacoes + e−.

Ü No caso de operacoes com mesma precedencia, aexecucao e feita da esquerda para a direita.

double x,y;x = 1.0;

y = 1./(x+1.0);

A operacao 1./x serarealizada primeiro, e o valorde y sera 2.0

Para executar a divisao porx + 1.0 e preciso usar ().O valor de y sera

0.5

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Precedencia

Ü Numa expressao composta de varias operacoesaritmeticas, a ordem com que elas sao executadasdepende da precedencia dos operadores.

Ü *, / e % tem a mesma precedencia, e temprecedencia sobre as operacoes + e−.

Ü No caso de operacoes com mesma precedencia, aexecucao e feita da esquerda para a direita.

double x,y;x = 1.0;

y = 1./(x+1.0);

A operacao 1./x serarealizada primeiro, e o valorde y sera 2.0

Para executar a divisao porx + 1.0 e preciso usar ().O valor de y sera 0.5

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;

y = a/x; y vale 0.5b = a/x; b vale 0w = a/2; w vale 0.z = 1/2; z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;

y = a/x; y vale 0.5b = a/x; b vale 0w = a/2; w vale 0.z = 1/2; z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;

y = a/x; y vale 0.5b = a/x; b vale 0w = a/2; w vale 0.z = 1/2; z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;y = a/x;

y vale 0.5b = a/x; b vale 0w = a/2; w vale 0.z = 1/2; z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;y = a/x; y vale 0.5

b = a/x; b vale 0w = a/2; w vale 0.z = 1/2; z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;y = a/x; y vale 0.5b = a/x;

b vale 0w = a/2; w vale 0.z = 1/2; z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;y = a/x; y vale 0.5b = a/x; b vale 0

w = a/2; w vale 0.z = 1/2; z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;y = a/x; y vale 0.5b = a/x; b vale 0w = a/2;

w vale 0.z = 1/2; z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;y = a/x; y vale 0.5b = a/x; b vale 0w = a/2; w vale 0.

z = 1/2; z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;y = a/x; y vale 0.5b = a/x; b vale 0w = a/2; w vale 0.z = 1/2;

z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operacoes entre Variaveis de TiposDistintos

6 Um operador atua entre operandos de tipos distintosÜ o operando de tipo mais restrito sera promovido aotipo menos restrito.

6 Cuidado quando o resultado e atribuıdo a uma variavelde tipo mais restrita!

double x,y,z,w;int a,b;x = 2.0;a = 1;y = a/x; y vale 0.5b = a/x; b vale 0w = a/2; w vale 0.z = 1/2; z vale 0.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Operador cast

A operacao cast forca explicitamente a conversao:(tipo) expressao

double f = 102.32;int i;i = (int) f;

Sera atribuıdo a variavel i a parte inteira de f

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exercıcio

Baixe o programa intfloat.c. Veja o seu conteudoAnote o que voce acha que sera impressoCompile, execute e verifique o resultado

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Organizacao de um Programa

6 Escolha um nome quefacilite a identificacaodo programa

6 Comente o programausando // ou /*seguido de */

prog.c

media.c/*Programa para calcularmedia ponderadaAutor: */

å E muito importante que o programa fonte seja bemcomentado, tanto para voce quanto para quem vai le-lo!

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Organizacao de um Programa

6 Escolha um nome quefacilite a identificacaodo programa

6 Comente o programausando // ou /*seguido de */

prog.c——— media.c

/*Programa para calcularmedia ponderadaAutor: */

å E muito importante que o programa fonte seja bemcomentado, tanto para voce quanto para quem vai le-lo!

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Organizacao de um Programa

6 Escolha um nome quefacilite a identificacaodo programa

6 Comente o programausando // ou

/*seguido de */

media.c// Programa para calcular// media ponderada// Autor:

/*Programa para calcularmedia ponderadaAutor: */

å E muito importante que o programa fonte seja bemcomentado, tanto para voce quanto para quem vai le-lo!

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Organizacao de um Programa

6 Escolha um nome quefacilite a identificacaodo programa

6 Comente o programausando // ou /*seguido de */

media.c/*Programa para calcularmedia ponderadaAutor: */

å E muito importante que o programa fonte seja bemcomentado, tanto para voce quanto para quem vai le-lo!

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Organizacao de um Programa

6 Escolha um nome quefacilite a identificacaodo programa

6 Comente o programausando // ou /*seguido de */

media.c/*Programa para calcularmedia ponderadaAutor: */

å E muito importante que o programa fonte seja bemcomentado, tanto para voce quanto para quem vai le-lo!

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exemplo de Programa

Calculo da media ponderada entre dois numeros

¬ headers­ organise aslinhas® comentarios¯ identacao° Todas asdeclaracoesantes doprimeirocomandoexecutavel

/* Calculo da media ponderadaData: 09/04/2017 */

# include <stdio.h>

int main( ){int peso1 = 1; int peso2 = 2; double n1,n2;double numerador, denominador; double media; n1 = 2.1;n2 = 4.2;numerador = peso1*n1 + peso2*n2;denominador = peso1 + peso2;media = numerador / denominador ;printf(”A media de %f e %f com pesos %d e %d e %f \n”,n1, n2, peso1, peso2, media);return 0;

}

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exemplo de Programa

Calculo da media ponderada entre dois numeros¬ headers

­ organise aslinhas® comentarios¯ identacao° Todas asdeclaracoesantes doprimeirocomandoexecutavel

/* Calculo da media ponderadaData: 09/04/2017 */

# include <stdio.h>int main( ){int peso1 = 1; int peso2 = 2; double n1,n2;double numerador, denominador; double media; n1 = 2.1;n2 = 4.2;numerador = peso1*n1 + peso2*n2;denominador = peso1 + peso2;media = numerador / denominador ;printf(”A media de %f e %f com pesos %d e %d e %f \n”,n1, n2, peso1, peso2, media);return 0;

}

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exemplo de Programa

Calculo da media ponderada entre dois numeros

¬ headers­ organise aslinhas

® comentarios¯ identacao° Todas asdeclaracoesantes doprimeirocomandoexecutavel

/* Calculo da media ponderadaData: 09/04/2017 */

# include <stdio.h>int main( ){int peso1 = 1;int peso2 = 2;double n1,n2;double numerador,denominador;double media;n1 = 2.1;n2 = 4.2;numerador = peso1*n1 + peso2*n2;denominador = peso1 + peso2;media = numerador / denominador ;printf(”A media de %f e %f com pesos %d e %d e %f \n”,n1, n2, peso1, peso2, media);return 0;

}

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exemplo de Programa

Calculo da media ponderada entre dois numeros

¬ headers­ organise aslinhas® comentarios

¯ identacao° Todas asdeclaracoesantes doprimeirocomandoexecutavel

/* Calculo da media ponderadaData: 09/04/2017 */

# include <stdio.h>int main( ){int peso1 = 1;int peso2 = 2; // pesosdouble n1,n2; // valores de entradadouble numerador,denominador;double media;n1 = 2.1;n2 = 4.2;

/* Calculo da media ponderada: */numerador = peso1*n1 + peso2*n2;denominador = peso1 + peso2;media = numerador / denominador ;

// Impressao do resultadoprintf(”A media de %f e %f com pesos %d e %d e %f \n”,n1, n2, peso1, peso2, media);return 0;

}

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exemplo de Programa

Calculo da media ponderada entre dois numeros

¬ headers­ organise aslinhas® comentarios¯ identacao

° Todas asdeclaracoesantes doprimeirocomandoexecutavel

/* Calculo da media ponderadaData: 09/04/2017 */

# include <stdio.h>int main( ){

int peso1 = 1;int peso2 = 2; // pesosdouble n1,n2; // valores de entradadouble numerador,denominador;double media;n1 = 2.1;n2 = 4.2;

/* Calculo da media ponderada: */numerador = peso1*n1 + peso2*n2;denominador = peso1 + peso2;media = numerador / denominador ;

// Impressao do resultadoprintf(”A media de %f e %f com pesos %d e %d e %f \n”,

n1, n2, peso1, peso2, media);return 0;

}

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exemplo de Programa

Calculo da media ponderada entre dois numeros

¬ headers­ organise aslinhas® comentarios¯ identacao° Todas asdeclaracoesantes doprimeirocomandoexecutavel

/* Calculo da media ponderadaData: 09/04/2017 */

# include <stdio.h>int main( ){

int peso1 = 1;int peso2 = 2; // pesosdouble n1,n2; // valores de entradadouble numerador,denominador;double media;n1 = 2.1;n2 = 4.2;

/* Calculo da media ponderada: */numerador = peso1*n1 + peso2*n2;denominador = peso1 + peso2;media = numerador / denominador ;

// Impressao do resultadoprintf(”A media de %f e %f com pesos %d e %d e %f \n”,

n1, n2, peso1, peso2, media);return 0;

}

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exemplo de Programa

Calculo da media ponderada entre dois numeros

¬ headers­ organise aslinhas® comentarios¯ identacao° Todas asdeclaracoesantes doprimeirocomandoexecutavel

/* Calculo da media ponderadaData: 09/04/2017 */

# include <stdio.h>int main( ){

int peso1 = 1;int peso2 = 2; // pesosdouble n1,n2; // valores de entradadouble numerador,denominador;double media;n1 = 2.1;n2 = 4.2;

/* Calculo da media ponderada: */numerador = peso1*n1 + peso2*n2;denominador = peso1 + peso2;media = numerador / denominador ;

// Impressao do resultadoprintf(”A media de %f e %f com pesos %d e %d e %f \n”,

n1, n2, peso1, peso2, media);return 0;

}

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Leitura de Dados

å A funcao para leitura

e seus argumentos:1 String com os campos de formatacao, correspondentes

a cada variavel a ser lida, na ordem2 lista de enderecos das variaveis. A lista e separada por

vırgulas

scanf();

å O operador & fornece o endereco da memoria de umadeterminada variavel

å Mais especificacoes de formato para o scanf,%ld: long int, %lf ou %lg: double.Obs.: Nao sao necessarias para o printf

å A string de formatacao deve conter apenas asespecificacoes de formato. Nao usar \n, virgula ouqualquer outro caracter.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Leitura de Dados

å A funcao para leitura e seus argumentos:1 String com os campos de formatacao, correspondentes

a cada variavel a ser lida, na ordem

2 lista de enderecos das variaveis. A lista e separada porvırgulas

scanf("%f %d");

å O operador & fornece o endereco da memoria de umadeterminada variavel

å Mais especificacoes de formato para o scanf,%ld: long int, %lf ou %lg: double.Obs.: Nao sao necessarias para o printf

å A string de formatacao deve conter apenas asespecificacoes de formato. Nao usar \n, virgula ouqualquer outro caracter.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Leitura de Dados

å A funcao para leitura e seus argumentos:1 String com os campos de formatacao, correspondentes

a cada variavel a ser lida, na ordem2 lista de enderecos das variaveis. A lista e separada por

vırgulasscanf("%f %d", &posicao, &contador);

å O operador & fornece o endereco da memoria de umadeterminada variavel

å Mais especificacoes de formato para o scanf,%ld: long int, %lf ou %lg: double.Obs.: Nao sao necessarias para o printf

å A string de formatacao deve conter apenas asespecificacoes de formato. Nao usar \n, virgula ouqualquer outro caracter.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Leitura de Dados

å A funcao para leitura e seus argumentos:1 String com os campos de formatacao, correspondentes

a cada variavel a ser lida, na ordem2 lista de enderecos das variaveis. A lista e separada por

vırgulasscanf("%f %d", &posicao, &contador);

å O operador & fornece o endereco da memoria de umadeterminada variavel

å Mais especificacoes de formato para o scanf,%ld: long int, %lf ou %lg: double.Obs.: Nao sao necessarias para o printf

å A string de formatacao deve conter apenas asespecificacoes de formato. Nao usar \n, virgula ouqualquer outro caracter.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Leitura de Dados

å A funcao para leitura e seus argumentos:1 String com os campos de formatacao, correspondentes

a cada variavel a ser lida, na ordem2 lista de enderecos das variaveis. A lista e separada por

vırgulasscanf("%f %d", &posicao, &contador);

å O operador & fornece o endereco da memoria de umadeterminada variavel

å Mais especificacoes de formato para o scanf,%ld: long int, %lf ou %lg: double.Obs.: Nao sao necessarias para o printf

å A string de formatacao deve conter apenas asespecificacoes de formato. Nao usar \n, virgula ouqualquer outro caracter.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Observacoes Relativas ao Comando scanf

Ü O programa ficara esperando a digitacao de tantosdados quantos forem especificados na lista deformatos.

Ü Espacos em branco, tabs e caracteres de nova linha(tecla enter) sao ignorados na leitura.

Ü E aconselhavel colocar sempre um printf com umamensagem avisando que o programa esta esperandouma certa variavel.

Ü As principais fontes de erro no uso de scanf sao:6 colocar o nome da variavel e nao seu endereco,6 ter listas de formatos incompatıvel com a lista de

enderecos, seja por numero de campos seja portipo de variavel.

Esses erros em geral nao sao detectados nacompilacao!

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Exercıcios

å Baixe da pagina do curso o programa mostrascanf.c.Estude seu conteudo, compile-o e execute-o. Analise seuresultado.

å Escreva um algoritmo para resolver cada um dosproblemas abaixo. Depois escreva um programa C queimplemente o seu algoritmo

1 Escreva um programa que pede o valor de um anguloem graus, pelo teclado, calcula e escreve na tela seuvalor em radianos.

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Funcoes Matematicas - math.h

å Em C ha um header com definicoes de funcoesmatematicas:#include <math.h>

l sin(x)→ x em radianosl cos(x)→ x em radianosl acos(x)→ [0, π]l atan(x)→ [−π/2, π/2]l sqrt(x)→

√x

l exp(x)l log(x)→ log na base el log10(x)→ log na base 10l cbrt(x)→ 3

√x

l fabs(x)→ |x |

Define tambem algumas constantes uteis:π: M_PI,

√2: M_SQRT2, ...

å Para usa-las e necessario linkar o programa com abiblioteca matematica:gcc programa.c -o programa -lm

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Funcoes Matematicas - math.h

å Em C ha um header com definicoes de funcoesmatematicas:#include <math.h>

l sin(x)→ x em radianosl cos(x)→ x em radianosl acos(x)→ [0, π]l atan(x)→ [−π/2, π/2]l sqrt(x)→

√x

l exp(x)l log(x)→ log na base el log10(x)→ log na base 10l cbrt(x)→ 3

√x

l fabs(x)→ |x |

Define tambem algumas constantes uteis:π: M_PI,

√2: M_SQRT2, ...

å Para usa-las e necessario linkar o programa com abiblioteca matematica:gcc programa.c -o programa -lm

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Funcoes Matematicas - math.h

å Em C ha um header com definicoes de funcoesmatematicas:#include <math.h>

l sin(x)→ x em radianosl cos(x)→ x em radianosl acos(x)→ [0, π]l atan(x)→ [−π/2, π/2]l sqrt(x)→

√x

l exp(x)l log(x)→ log na base el log10(x)→ log na base 10l cbrt(x)→ 3

√x

l fabs(x)→ |x |

Define tambem algumas constantes uteis:π: M_PI,

√2: M_SQRT2, ...

å Para usa-las e necessario linkar o programa com abiblioteca matematica:gcc programa.c -o programa -lm

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2

12

2 6 02 3 01 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,22 0,4

X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 12

2

6 0

2 3 01 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,22 0,4

X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2

3 0

1 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,22 0,4

X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2 3 01 1

1 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,22 0,4

X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2 3 01 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,22 0,4

X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2 3 01 11 1 0 0

Ü Parte fracionariaX,2

2 0,42 0,8

2 1,62 1,2

2 0,4X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2 3 01 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,22 0,4

X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2 3 01 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,8

2 1,62 1,2

2 0,4X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2 3 01 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,22 0,4

X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2 3 01 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,2

2 0,4X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2 3 01 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,22 0,4

X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2 3 01 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,22 0,4

X,

(

0 0 1 1

)

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas 1

Converter 12,210 para a base 2.

Ü Parte inteira

2 122 6 0

2 3 01 11 1 0 0

Ü Parte fracionariaX,22 0,4

2 0,82 1,6

2 1,22 0,4

X, ( 0 0 1 1 )

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira

3

9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3

3 0

1 01 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 0

1 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)

3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)3 1,0

X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,13

9,3310 ⇒ 100,0222203...

12,210 ⇒

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒

100,0222203...

12,210 ⇒

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒ 1100, (0011)2

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒ 1100,00112

Met Comp

Compiladores

C

Exercıcio

C: Literais

C: Variaveis

Exercıcio

C: Memoria

Exemplo

Operacoes

Exercıcio

Leitura

Exercıcio

Funcoes

Bases

Voltando as bases: Dızimas Periodicas - 2

Converter 9, (3)10 para a base 3.

Ü Parte inteira3 9

3 3 01 01 0 0

Ü Parte fracionaria

X,(3)3 1,0X, 1

9, (3)10 ⇒ 100,139,3310 ⇒ 100,0222203...

12,210 ⇒ 1100,00112 ⇒ 12,187510!