A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

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

Apresentações semelhantes


Apresentação em tema: "CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2013 Capítulo III Comandos de Controle."— Transcrição da apresentação:

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

2 Programa 3.1: Comandos condicionais #include #include void main ( ) { char estahfrio; 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: "); printf ("\n\nDigite algo para encerrar: "); getch (); } Digitar, salvar e executar o seguinte programa Fluxogramas explicativos:

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

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

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 Em C, uma divisão em que os 2 operandos são inteiros produz resultado inteiro truncado Exemplo: 7 / 3 = 2 Exemplo: 7 / 3 = 2 Se um dos operandos for real, o resultado será real Se um dos operandos for real, o resultado será real Operador %: resto de divisão Operador %: resto de divisão Exemplo: 7 % 3 = 1 Exemplo: 7 % 3 = 1 Os operandos devem ser inteiros 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 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 } Desenvolvimento do programa 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 #include 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 #include 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 #include 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 #include 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 #include 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 #include 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 #include void main () { char testar; int dvdo; 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 #include void main () { char testar; int dvdo; 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 #include void main () { char testar; int dvdo; 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 (); printf ("\n\nDigite algo para encerrar: "); getch ();}

19 #include #include void main () { char testar; int dvdo; 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 (); printf ("\n\nDigite algo para encerrar: "); getch ();}

20 #include #include void main () { char testar; int dvdo; 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 eh divisivel por 7", dvdo); else printf ("\n\t%d nao eh divisivel por 7", dvdo); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); } printf ("\n\nDigite algo para encerrar: "); getch (); printf ("\n\nDigite algo para encerrar: "); getch ();}

21 #include #include void main () { char testar; int dvdo; 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 eh divisivel por 7", dvdo); else printf ("\n\t%d nao eh divisivel por 7", dvdo); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); } printf ("\n\nDigite algo para encerrar: "); getch (); printf ("\n\nDigite algo para encerrar: "); getch ();}

22 #include #include void main () { char testar; int dvdo; 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 eh divisivel por 7", dvdo); else printf ("\n\t%d nao eh divisivel por 7", dvdo); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); } printf ("\n\nDigite algo para encerrar: "); getch (); printf ("\n\nDigite algo para encerrar: "); getch ();} Salvar e executar 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 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 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 #include #include void main ( ) { char testar; int dvdo, 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) { while (dsor == 0) { printf ("\n\tDigite novamente o divisor: "); scanf ("%d", &dsor); } if (dvdo % dsor == 0) printf ("\n\t%d eh divisivel por %d", dvdo, dsor); else printf ("\n\t%d nao eh divisivel por %d", dvdo, dsor); printf ("\n\nTestar divisibilidade? (s/n): "); testar = getche ( ); }} Uma possível solução

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 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 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: Realizar com os números inteiros lidos as seguintes tarefas: 1.Contabilizar e imprimir a soma total dos números lidos Inicializar uma variável soma com zero Inicializar uma variável soma com zero A cada número lido num, fazer A cada número lido num, fazer soma = soma + num;

27 Realizar com os números inteiros lidos as seguintes tarefas: Realizar com os números inteiros lidos as seguintes tarefas: 2.Contabilizar e imprimir a soma dos números lidos que são múltiplos de 5 Inicializar outra variável soma5 com zero Inicializar outra variável soma5 com zero A cada número lido num que for múltiplo de 5, fazer 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: Realizar com os números inteiros lidos as seguintes tarefas: 3.Contabilizar e imprimir a média aritmética dos números positivos lidos que são ímpares 4.Para cada número positivo lido, notificar o caso dele ser potência de 2 5.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: Realizar com os números inteiros positivos lidos as seguintes tarefas: 6.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 n os digitados Inicializar duas variáveis maior e menor com o valor absoluto do primeiro dos n n os digitados A cada novo número lido num, caso seu valor absoluto seja maior que o valor de maior, fazer 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 Analogamente para o valor de menor


Carregar ppt "CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2013 Capítulo III Comandos de Controle."

Apresentações semelhantes


Anúncios Google