1 / 29

CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2013

CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2013. Capítulo III Comandos de Controle. Fluxogramas explicativos:. Digitar, salvar e executar o seguinte programa. Programa 3.1: Comandos condicionais #include < stdio .h> #include < conio .h> void main ( ) { char estahfrio ;

vivian
Download Presentation

CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2013

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CES-10 INTRODUÇÃO À COMPUTAÇÃOAulas Práticas – 2013 Capítulo III Comandos de Controle

  2. Fluxogramas explicativos: Digitar, salvar e executar o seguinte programa Programa 3.1: Comandos condicionais #include <stdio.h> #include <conio.h> voidmain ( ) { charestahfrio; printf ("Estah frio? (s/n): "); estahfrio = getche ( ); if (estahfrio == 's' ||estahfrio == 'S') printf ("\n\n\tVista seu casaco!!"); else printf ("\n\n\tDeixe seu casaco no guarda-roupas!!"); printf ("\n\nDigite algo para encerrar: "); getch (); }

  3. Digitar, salvar e executar o seguinte programa Fluxograma explicativo n % 2: resto da divisão de n por 2 Programa 3.2: Outro comando repetitivo: do-while #include <stdio.h> #include <conio.h> void main ( ) { int n; char c; printf ("PAR OU IMPAR"); do { printf ("\n\nDigite um numero: "); scanf ("%d", &n); if (n % 2 == 0) printf ("\t%d eh par", n); else printf ("\t%d eh impar", n); printf ("\n\nVerificar paridade? (s/n): "); c = getche(); } while (c == 's' || c == 'S'); printf ("\n\nDigite algo para encerrar: "); getch (); } Comandos V Condição F Os comandos são executados pelo menos 1 vez

  4. if (Condição) Comandos 1 else Comandos 2 Com as seguintes construções, escreve-se grande variedade de programas: if (Condição) Comandos F Condição Comandos do Comandos while (Condição); V V F F Condição Condição while (Condição) Comandos V Comandos V Condição Comandos 2 Comandos 1 Além dos comandos: variável = expressão; scanf (--------); printf (--------); Comandos F

  5. Programa 3.3: Divisibilidade por 7 – vários números • Em C, uma divisão em que os 2 operandos são inteiros produz resultado inteiro truncado • Exemplo: 7 / 3 = 2 • Se um dos operandos for real, o resultado será real • Operador %: resto de divisão • Exemplo: 7 % 3 = 1 • Os operandos devem ser inteiros Para testar se um número ‘n’ é divisível por 7, basta verificar se a condição n % 7 == 0 é satisfeita

  6. Desenvolvimento do programa Divisibilidade por 7 { Escrever um título inicial que diga o assunto do programa Perguntar ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador Enquanto a resposta for “sim” { Pedir o dividendo ao operador Obter o dividendo do operador Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução } Algoritmo do programa, escrito em Português, num certo nível de detalhes

  7. Divisibilidade por 7 { Escrever um título inicial que diga o assunto do programa Perguntar ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador Enquanto a resposta for “sim” { Pedir o dividendo ao operador Obter o dividendo do operador Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  8. void main () { Escrever um título inicial que diga o assunto do programa Perguntar ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador Enquanto a resposta for “sim” { Pedir o dividendo ao operador Obter o dividendo do operador Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  9. void main () { Escrever um título inicial que diga o assunto do programa Perguntar ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador Enquanto a resposta for “sim” { Pedir o dividendo ao operador Obter o dividendo do operador Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  10. #include <stdio.h> void main () { printf ("DIVISIBILIDADE POR 7"); Perguntar ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador Enquanto a resposta for “sim” { Pedir o dividendo ao operador Obter o dividendo do operador Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  11. #include <stdio.h> void main () { printf ("DIVISIBILIDADE POR 7"); Perguntar ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador Enquanto a resposta for “sim” { Pedir o dividendo ao operador Obter o dividendo do operador Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  12. #include <stdio.h> #include <conio.h> void main () { char testar; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); Enquanto a resposta for “sim” { Pedir o dividendo ao operador Obter o dividendo do operador Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  13. #include <stdio.h> #include <conio.h> void main () { char testar; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); Enquanto a resposta for “sim” { Pedir o dividendo ao operador Obter o dividendo do operador Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  14. #include <stdio.h> #include <conio.h> void main () { char testar; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); while (testar == 's' || testar == 'S') { Pedir o dividendo ao operador Obter o dividendo do operador Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  15. #include <stdio.h> #include <conio.h> void main () { char testar; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); while (testar == 's' || testar == 'S') { Pedir o dividendo ao operador Obter o dividendo do operador Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  16. #include <stdio.h> #include <conio.h> void main () { char testar; intdvdo; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); while (testar == 's' || testar == 'S') { printf ("\n\n\tDigite o dividendo: "); scanf ("%d", &dvdo); Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  17. #include <stdio.h> #include <conio.h> void main () { char testar; intdvdo; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); while (testar == 's' || testar == 'S') { printf ("\n\n\tDigite o dividendo: "); scanf ("%d", &dvdo); Testar a divisibilidade do dividendo por 7 e dar a resposta Perguntar novamente ao operador se deseja testar divisibilidade por 7 Obter a resposta do operador } Fechar a tela de execução }

  18. #include <stdio.h> #include <conio.h> void main () { char testar; intdvdo; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); while (testar == 's' || testar == 'S') { printf ("\n\n\tDigite o dividendo: "); scanf ("%d", &dvdo); Testar a divisibilidade do dividendo por 7 e dar a resposta printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); } printf ("\n\nDigite algo para encerrar: "); getch (); }

  19. #include <stdio.h> #include <conio.h> void main () { char testar; intdvdo; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); while (testar == 's' || testar == 'S') { printf ("\n\n\tDigite o dividendo: "); scanf ("%d", &dvdo); Testar a divisibilidade do dividendo por 7 e dar a resposta printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); } printf ("\n\nDigite algo para encerrar: "); getch (); }

  20. #include <stdio.h> #include <conio.h> void main () { char testar; intdvdo; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); while (testar == 's' || testar == 'S') { printf ("\n\n\tDigite o dividendo: "); scanf ("%d", &dvdo); if (dvdo % 7 == 0) printf ("\n\t%d ehdivisivel por 7", dvdo); else printf ("\n\t%d naoehdivisivel por 7", dvdo); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); } printf ("\n\nDigite algo para encerrar: "); getch (); }

  21. #include <stdio.h> #include <conio.h> void main () { char testar; intdvdo; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); while (testar == 's' || testar == 'S') { printf ("\n\n\tDigite o dividendo: "); scanf ("%d", &dvdo); if (dvdo % 7 == 0) printf ("\n\t%d ehdivisivel por 7", dvdo); else printf ("\n\t%d naoehdivisivel por 7", dvdo); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); } printf ("\n\nDigite algo para encerrar: "); getch (); }

  22. Salvar e executar #include <stdio.h> #include <conio.h> void main () { char testar; intdvdo; printf ("DIVISIBILIDADE POR 7"); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); while (testar == 's' || testar == 'S') { printf ("\n\n\tDigite o dividendo: "); scanf ("%d", &dvdo); if (dvdo % 7 == 0) printf ("\n\t%d ehdivisivel por 7", dvdo); else printf ("\n\t%d naoehdivisivel por 7", dvdo); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); } printf ("\n\nDigite algo para encerrar: "); getch (); } Este programa só testa divisibilidade por 7

  23. Exercício: Alterar o programa anterior de forma que o divisor também seja digitado pelo operador • Cuidado: o divisor não pode ser zero • Se o operador digitar 0 (zero) para o divisor, o programa deve insistir para ele refazer a digitação, até que não mais cometa esse erro

  24. Uma possível solução #include <stdio.h> #include <conio.h> void main ( ) { char testar; intdvdo, dsor; printf ("Testar divisibilidade? (s/n): "); testar = getche ( ); while (testar == 's' || testar == 'S') { printf ("\n\n\tDigite dividendo e o divisor: "); scanf ("%d%d", &dvdo, &dsor); while (dsor == 0) { printf ("\n\tDigite novamente o divisor: "); scanf ("%d", &dsor); } if (dvdo % dsor == 0) printf ("\n\t%d ehdivisivel por %d", dvdo, dsor); else printf ("\n\t%d naoehdivisivel por %d", dvdo, dsor); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); } }

  25. Exercício do Lab 3: Escrever um programa amigável em C para: • Inicialmente, ler um número inteiro não negativo digitado e guardá-lo na variável n • Caso o operador digite um número negativo para n, o programa deve insistir para ele refazer a digitação, até que não mais cometa esse erro • Em seguida, o programa deve ler n números inteiros digitados Continua no próximo slide

  26. Realizar com os números inteiros lidos as seguintes tarefas: • Contabilizar e imprimir a soma total dos números lidos • Inicializar uma variável soma com zero • A cada número lido num, fazer soma = soma + num;

  27. Realizar com os números inteiros lidos as seguintes tarefas: • Contabilizar e imprimir a soma dos números lidos que são múltiplos de 5 • Inicializar outra variável soma5 com zero • A cada número lido num que for múltiplo de 5, fazer soma5 = soma5 + num;

  28. Realizar com os números inteiros lidos as seguintes tarefas: • Contabilizar e imprimir a média aritmética dos números positivos lidos que são ímpares • Para cada número positivo lido, notificar o caso dele ser potência de 2 • Para cada número positivo lido, notificar o caso dele ser a soma de uma PA de 1º termo e razão iguais a 1

  29. Realizar com os números inteiros positivos lidos as seguintes tarefas: • Encontrar e imprimir o maior e o menor valor absoluto dentre todos os números lidos • Inicializar duas variáveis maior e menor com o valor absoluto do primeiro dos n nos digitados • A cada novo número lido num, caso seu valor absoluto seja maior que o valor de maior, fazer maior = |num|; • Analogamente para o valor de menor

More Related