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 – 2014

Apresentações semelhantes


Apresentação em tema: "CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014"— Transcrição da apresentação:

1 CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014
Capítulo IV Fluxogramas

2 Fluxogramas foram usados para descrever comandos condicionais e repetitivos:
Condição V F Comandos 1 Condição V F Comandos if (Condição) Comandos 1 else Comandos 2 if (Condição) Comandos do Comandos while (Condição); Comandos Condição V F Comandos Condição V F while (Condição) Comandos Dentro dos comandos: variável = expressão; scanf ( ); printf ( ); Condicionais e repetitivos

3 Fluxogramas podem ser considerados como uma linguagem para descrição de algoritmos
Uma vez escrito o fluxograma, ele então é traduzido para uma linguagem de programação

4 Exemplo: fluxograma para inverter os dígitos de um número
Método: ilustrado com a inversão do número para 82784 48728 num aux 48728  10 8 4872  10 2 487  10 7 48  10 inv 8 4  10 * 4 8 * aux 82 * 827 * aux = num; inv = 0; while (aux != 0) { inv = 10 * inv + aux % 10; aux = aux/10; } 8278 * inv 82784

5 Fluxograma: aux = num; inv = 0; while (aux != 0) {
inv = 10 * inv + aux % 10; aux = aux/10; } ← : sinal de atribuição

6 #include <stdio.h> - Usa scanf e printf
#include <stdlib.h> Usa system para encerrar int main () { - - - } Tradução do fluxograma para a Linguagem C Copiar para salvar e executar posteriormente

7 int num, aux, inv; char c, lixo; printf ("INVERSAO DE NUMEROS:");
printf ("\n\nInverter numero? (s/n): "); if, if-else, while ou do-while? Detalhes da manipulação do buffer do teclado não precisam aparecer no fluxograma No escopo de main

8 int num, aux, inv; char c, lixo; printf ("INVERSAO DE NUMEROS:");
printf ("\n\nInverter numero? (s/n): "); do while ( ); while ( ) { } printf ("\n\n"); system ("pause"); return 0; if, if-else, while ou do-while? if, if-else, while ou do-while?

9 int num, aux, inv; char c, lixo;
printf ("INVERSAO DE NUMEROS:"); printf ("\n\nInverter numero? (s/n): "); do scanf ("%c%c", &c, &lixo); while (c != 's' && c != 'n' && c != 'S' && c != 'N'); while ( ) { } printf ("\n\n"); system ("pause"); return 0;

10 int num, aux, inv; char c, lixo;
printf ("INVERSAO DE NUMEROS:"); printf ("\n\nInverter numero? (s/n): "); do scanf ("%c%c", &c, &lixo); while (c != 's' && c != 'n' && c != 'S' && c != 'N'); while ( ) { } printf ("\n\n"); system ("pause"); return 0;

11 printf ("\n\tDigite o numero: "); scanf("%d%c", &num, &lixo);
while (c == 's' || c == 'S') { printf ("\n\tDigite o numero: "); scanf("%d%c", &num, &lixo); aux = num; inv = 0; while (aux != 0) { inv = 10 * inv + aux % 10; aux = aux/10; } Feito anteriormente

12 while (c == 's' || c == 'S') { printf ("\n\tDigite o numero: "); scanf("%d%c", &num, &lixo); aux = num; inv = 0; while (aux != 0) { inv = 10 * inv + aux % 10; aux = aux/10; }

13 printf ("\n\tDigite o numero: "); scanf("%d%c", &num, &lixo);
while (c == 's' || c == 'S') { printf ("\n\tDigite o numero: "); scanf("%d%c", &num, &lixo); aux = num; inv = 0; while (aux != 0) { inv = 10 * inv + aux % 10; aux = aux/10; } printf ("\n\t%d invertido torna-se %d", num, inv); printf ("\n\nInverter numero? (s/n): "); do scanf ("%c%c", &c, &lixo); while (c != 's' && c != 'n' && c != 'S' && c != 'N'); Repetição de código anterior

14 Programa final Salvar e executar #include <stdio.h>
#include <stdlib.h> int main () { int num, aux, inv; char c, lixo; printf ("INVERSAO DE NUMEROS:"); printf ("\n\nInverter numero? (s/n): "); do scanf ("%c%c", &c, &lixo); while (c != 's' && c != 'n' && c != 'S' && c != 'N'); while (c == 's' || c == 'S') { printf ("\n\tDigite o numero: "); scanf("%d%c", &num, &lixo); aux = num; inv = 0; while (aux != 0) { inv = 10 * inv + aux % 10; aux = aux/10; } printf ("\n\t%d invertido torna-se %d", num, inv); printf ("\n\n"); system ("pause"); return 0; Programa final Salvar e executar

15 Exercício: Escrever e executar um programa em C para o seguinte fluxograma destinado a calcular a soma dos dígitos ímpares de vários números positivos lidos: Todas as variáveis são inteiras O programa deve ser amigável É necessário discernir qual o comando correspondente a cada losango: if-sem-else if-else while do-while

16 Exercício 1 do Lab 4: fluxograma para encontrar os divisores de vários números lidos:
Escrever e executar um programa para ele Cuidado para não confundir “=” com “==” Escolher o comando correto para cada estrutura com losango Esse comando não deve desobedecer ao fluxograma, mesmo que o programa funcione corretamente

17 Exercício 1 do Lab 4: fluxograma para encontrar os divisores de vários números lidos:
No fluxograma não aparece o fechamento da tela Deixar a saída no vídeo com certa estética

18 Exercício 2 do Lab 4: fluxograma para encontrar os MMC’s de vários pares de números lidos
Escrever e executar um programa para este fluxograma Valem os mesmos requisitos anteriores para escolher entre os comandos if-sem-else, if-else, while e do-while No fluxograma não aparece o fechamento da tela Deixar a saída no vídeo com certa estética


Carregar ppt "CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014"

Apresentações semelhantes


Anúncios Google