Aula 6 - Programação 1

167 visualizações

Publicada em

Aulas da Disciplina de Programação I do Professor Rodrigo Paes, UFAL

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
167
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
3
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula 6 - Programação 1

  1. 1. Instituto de Computação – UFAL Exercício rodrigo@ic.ufal.br
  2. 2. Instituto de Computação – UFAL Formatando a saída dos dados  Por default, C vai exibir pontos flutuantes com 6 casas decimais  Mas podemos controlar isso!! rodrigo@ic.ufal.br
  3. 3. Instituto de Computação – UFAL Formatando a saída de dados  printf("A media dos 03 numeros digitados e: %.2fn", media);  Veja detalhes do que é possível fazer em:  Experimente!!!  Imprima sem nenhuma casa decimal  Imprima com 1 rodrigo@ic.ufal.br http://www.cplusplus.com/reference/clibrary/cstdio/printf.html
  4. 4. Instituto de Computação – UFAL Formatando a saída de dados  Alinhamento à direita #include <stdio.h> int main() { // reserva witdh de espaços para imprimir na tela e alinha à direita printf("%1cn",'X'); // reserva 1 único espaço printf("%80cn",'X'); // reserva 80 espaços e coloca o texto à direita printf("%40cn",'X'); // reserva 40 espaços e coloca o texto à direita } rodrigo@ic.ufal.br
  5. 5. Instituto de Computação – UFAL Alinhamento rodrigo@ic.ufal.br  printf("%8cn",'X'); X
  6. 6. Instituto de Computação – UFAL Alinhamento rodrigo@ic.ufal.br  printf("%8sn","Aula"); X A u l a
  7. 7. Instituto de Computação – UFAL Alinhamento rodrigo@ic.ufal.br  printf("%8fn",5.0); X A u l a 0 0 0000.5
  8. 8. Instituto de Computação – UFAL Alinhamento rodrigo@ic.ufal.br  E se quisermos diminuir o número de casas decimais?  printf("%8.2fn",5.0); X A u l a 0 0 0000.5 . 0 05
  9. 9. Instituto de Computação – UFAL Voltando a tabela ASCII, lembram dela? rodrigo@ic.ufal.br
  10. 10. Instituto de Computação – UFAL rodrigo@ic.ufal.br
  11. 11. Instituto de Computação – UFAL Tabela ASCII  Cada caracter tem um código  Por exemplo  A = 65 (decimal)  - = 45  C sabe converter números em caracteres e vice- versa rodrigo@ic.ufal.br
  12. 12. Instituto de Computação – UFAL Exemplo 01 int main() { printf("como caracter: %c , ou como numero: %dn", 65,65); printf("como caracter: %c , ou como numero: %dn", 'A','A'); } rodrigo@ic.ufal.br
  13. 13. Instituto de Computação – UFAL Exemplo 02 int main() { int numero = 65; char a = numero; printf("O codigo ASCII de %c eh %dn",a,a); } rodrigo@ic.ufal.br
  14. 14. Instituto de Computação – UFAL Exemplo 03:: Superando o problema de acentos do CMD  Acentos  Tente fazer:  printf("Nós. Vocês. Caçarola.n");  E assim?  printf("N%cs. Voc%cs. Ca%carola.n",162,136,135); rodrigo@ic.ufal.br
  15. 15. Instituto de Computação – UFAL Atribuição  Já vimos a atribuição muitas vezes antes:  soma = soma + i;  char a = numero;  media = (numero1 + numero2 + numero3) / 3;  Este comando tem a seguinte forma:  Identificador da variavel = expressão;  Expressão  A expressão é avaliada  Se for do mesmo tipo da variável  O valor é atribuído a variável rodrigo@ic.ufal.br
  16. 16. Instituto de Computação – UFAL Atribuição  A expressão pode conter a própria variável  i = i + 1;  C tem um atalho para escrever i = i +1  i++  minhavariavel++  De forma análoga, i = i -1  i-- rodrigo@ic.ufal.br
  17. 17. Instituto de Computação – UFAL Atribuição  Mas se a atribuição for de tipos diferentes? int a = 5; float b = 7.4; float c = 0; char d = ‘W’; c = a; a = b; a = d; a = 65; d = a; rodrigo@ic.ufal.br
  18. 18. Instituto de Computação – UFAL Testando o entendimento  Escreva um programa em C que determine a parte inteira e a parte fracionária de um número dado pelo usuário. rodrigo@ic.ufal.br
  19. 19. Instituto de Computação – UFAL Solução main() { float numeroDigitado, parteFracionaria; int parteInteira; printf("Digite um numero "); scanf("%f", &numeroDigitado); parteInteira = numeroDigitado; parteFracionaria = numeroDigitado - parteInteira; printf("A parte inteira de %f eh %d, e a parte fracionaria eh %f ", numeroDigitado,parteInteira,parteFracionaria); } rodrigo@ic.ufal.br

×