Modulo 3: Else, Case, For...

Documentos relacionados
Modulo 4: while do while (limites de variáveis)

ESTRUTURAS CONDICIONAIS. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

ESTRUTURAS CONDICIONAIS. Introdução à Ciência da ComputaçãoI Simone Senger de Souza

Linguagem C (repetição)

Controle de Fluxo Utilizando C

GFM015 Introdução à Computação Algoritmos e Programação / Controle de Fluxo / Estutura Condicional

Linguagem C (estruturas condicionais)

Módulo 3 Controle de Fluxo

Comando Switch. Embora a escada if else-if possa executar testes de várias maneiras, ela não é de maneira nenhuma elegante.

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

Comandos de decisão. Tiago Alves de Oliveira. Adaptado de slides das Profas. Patrícia Jaques, Mônica Py e Deise Sacol

Estruturas de Decisão. Adaptado de Deise Saccol

C Comandos de Controle

Fundamentos de Programação 1

3. Linguagem de Programação C

Introdução à Programação. Expressões Booleanas e Comandos Condicionais

Linguagem C. Prof.ª Márcia Jani Cícero

Aula 2 Comandos de Decisão

Aula 06: Condicionais (switch)

Cap. 3 Entrada e Saída e Controle de Fluxo

1) Operadores de auto incremento ++ e auto decremento --

Linguagem de Programação C. Comandos de Seleção e Desvio

Declarações. C diferencia letras maiúsculas de minúsculas! int n, N; n é diferente de N!

Aula 6 Oficina de Programação Estruturas Condicionais no C. Profa. Elaine Faria UFU

Linguagens de Programação I

Controle de Fluxo Utilizando C

Estruturas de Decisão e loops

Treinamento Olimpíada Brasileira de Informática

Algoritmos RESUMO - LINGUAGEM C

Aula 02 -Introdução àlinguagc Programação: Estrutura-Seleção. OPL e IC1 Prof: Anilton Joaquim da Silva

Fundamentos de Programação1

Técnicas de Programação: Comandos de Controle de DEE UFPB

C Comandos de Controle

Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria

Linguagem C. André Tavares da Silva.

ALGORITMO I ESTRUTURA DE CONTROLE DECISÃO SE / CASO;

Aula 16: Laços aninhados e desvios

Estruturas de repetição

Laboratório 3 Comandos de repetição while, do-while e for

controle de fluxo - condicionais

Controle de Fluxo - Condicionais. INF1005 Programação I Profa. Simone D.J. Barbosa sala 410 RDC

Introdução à Linguagem C. Adaptado de Deise Saccol

Introdução à Linguagem C

Algoritmos e Técnicas de Programação. Professora: Luciana Faria

CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: C

Introdução à Programação I

Aula 7 Oficina de Programação Estruturas de Repetição no C. Profa. Elaine Faria UFU

USP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria

CONTROLE DE FLUXO. Algoritmos e Programação. Prof. Alceu Britto Slides cedidos pelo Prof. Edson J. R. Justino (PUCPR) Aula 9 e 10

Quantas variáveis para armazenar as notas e as médias são necessárias para resolver este problema?

Modulo 2 Leitura, Escrita e IF

Introdução à Linguagem C

SSC 0301 IC para Engenharia Ambiental

Módulo 5. Instruções if e switch. Algoritmos e Estruturas de Dados I C++ (Rone Ilídio)

Computação 2. Diego Addan Aula 3. Funções

Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo

PROGRAMAÇÃO DE COMPUTADORES V - TCC Modulo 6 : Funções Escopo de Variáveis: Globais x Locais Aura - Erick

INFORMÁTICA APLICADA AULA 05 LINGUAGEM DE PROGRAMAÇÃO C++

PROGRAMAÇÃO DE COMPUTADORES V - TCC Modulo 5: Array. (complemento de dois) Aura - Erick

Aula 5 ESTRUTURAS DE REPETIÇÃO (WHILE)

Programação Estruturada

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

LP II Estrutura de Dados

Lógica de Programação I

INF1007: Programação 2. 0 Revisão. 06/08/2015 (c) Dept. de Informática - PUC-Rio 1

Introdução à Ciência da Computação

Aula 14: Repetição (Parte 2)

Computação Informática

Estruturas de Repetição

ESTRUTURAS DE CONTROLE

Introdução à Programação. Estruturas de Repetição

Estruturas de Controle

Estruturas de repetição. Objetivos: - Compreender diversos tipos de comandos de repetições disponíveis na linguagem C.

MC-102 Aula 06 Comandos Repetitivos

Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação. Profa Rosana Braga

Aula 4 ESTRUTURAS DE REPETIÇÃO (FOR)

LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO

Fundamentos de Programação 1

Programação Estruturada Aula - Estruturas de Repetição

Estruturas de Controle

Programação de Computadores I Funções de Repetição da Linguagem C PROFESSORA CINTIA CAETANO

Disciplina de Algoritmos e Programação

ESTRUTURAS DE CONTROLE

Aula 01. Programação Condicional Programação repetitiva

MC-102 Aula 04 Expressões Relacionais, Lógicas e Comandos Condicionais

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C

Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação. Lista de Exercícios 1

Aula 11 - Repetições Encaixadas

Apresentar os comandos de controle associados com as estruturas de repetição.

Controle de Fluxo - Condicionais

UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Estruturas de condição. Prof. Alex Camargo

Operadores. A linguagem C é muito rica em operadores internos. Ela define quatro classes de operadores:

10 Comandos de repetição

MC102 Algoritmos e Programação de Computadores

COMANDOS DE DECISÕES. O COMANDO if. O comando if instrui o computador a tomar uma decisão simples. Forma Geral: if (expressão de teste) instrução;

Programação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02

Métodos Computacionais. Comandos Condicionais e de Repetição em C

LINGUAGEM E TECNICAS DE PROGRAMAÇÃO

Aula 05: Condicionais (if / else)

Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Exercício... Para começar... Resolução... Para começar... Para começar...

Transcrição:

PROGRAMAÇÃO DE COMPUTADORES V - TCC- 00.323 Modulo 3: Else, Case, For... Aura - Erick aconci@ic.uff.br, erickr@id.uff.br

Roteiro Mais Comandos Condicionais Estrutura de Repetição Contável 2

Exemplo de uso do Comando Condicional Média - M Conceito -CONC M < 6 D 6 <= M < 7.5 C 7.5 <= M < 9 B 9 <= M A

Algoritmo 1. Leia M 2. Se M < 6 Então CONC = D 3. Se M >= 6 AND M < 7.5 Então CONC = C 4. Se M >= 7.5 AND M < 9 Então CONC = B 5. Se M >= 9 Então CONC = A

Código em C... Com if #include <stdio.h> main () { float M; /* a média */ char CONC; /* o conceito */ printf ( Emissao do conceito final dada a media\n"); printf ( Informe a media alcancada pelo aluno: "); scanf ( %f ", &M); if (M < 6.) CONC = 'D'; if (M >= 6. && M < 7.5) CONC = 'C'; if (M >= 7.5 && M < 9.) CONC = 'B'; if (M >= 9.) CONC = 'A'; printf (" o conceito final do aluno: %c", CONC);

Algoritmo anterior x Algoritmo Alternativo 1. Leia M 2. Se M < 6 Então CONC = D 3. Se M >= 6 AND M < 7.5 Então CONC = C 4. Se M >= 7.5 AND M < 9 Então CONC = B 5. Se M >= 9 Então CONC = A 1. Leia M 2. Se M < 6 Então CONC = D Senão Se M < 7.5 Então CONC = C Senão Se M < 9 Então CONC = B Senão CONC = A

Algoritmo anterior x Algoritmo Alternativo 1. Leia M 2. Se M < 6 Então CONC = D 3. Se M >= 6 AND M < 7.5 Então CONC = C 4. Se M >= 7.5 AND M < 9 Então CONC = B 5. Se M >= 9 Então CONC = A 1. Leia M 2. Se M < 6 Então CONC = D Senão Se M < 7.5 Então CONC = C Senão Se M < 9 Então CONC = B Senão CONC = A

indentação é o recuo de um texto em relação a sua margem. Dúvidas de Português > Identação ou indentação? A forma correta de escrita da palavra é indentação. A palavra identação está errada. A palavra indentação é um neologismo que tem sua origem na palavra inglesa indentation, tendo um sentido de recuo. É muito usada na área informática, em linguagem de programação.

Em C... Com If... else #include <stdio.h> void main () { float M; /* a média */ char CONC; /* o conceito */ printf ( Emissao do conceito final dada a media \n"); printf ( Informe a media alcancada pelo aluno: "); scanf ("%f", &M); if (M < 6.) CONC = 'D'; else if (M < 7.5) CONC = 'C'; else if (M < 9.) CONC = 'B'; else CONC = 'A'; printf (" o conceito final do aluno: %c", CONC);

Exercício Faça um programa em C que lê 2 números inteiros (N1, N2) e retorna o maior deles. Use a estrutura IF-ELSE.

Estrutura de seleção múltipla Em alguns casos, o comportamento do programa varia de acordo com um critério de seleção que tem várias opções Exemplo: um programa que tem comportamentos diferentes, dependendo da operação escolhida pelo usuário Ler OPERACAO e um valor X Se OPERACAO = 1 calcular a área da circunferência de raio x Se OPERACAO = 2 calcular o perímetro da circunferência de raio x

Algoritmo 1. Leia OP, X 2. Se OP = 1 Então calcula área Imprime área 3. Se OP = 2 Então calcula perímetro Imprime perímetro 4. Se OP 1 e OP 2 Então imprime erro

Algoritmo 1. Leia OP, X 2. Se OP = 1 Então calcula área Imprime área 3. Se OP = 2 Então calcula perímetro Imprime perímetro 4. Se OP 1 e OP 2 Então imprime erro (pois não é uma opção válida) PROBLEMA: Se houver várias opções, o programa vai ficar confuso, cheio de IF

Solução: Estrutura de Seleção Múltipla SELECIONE <seletor> de <valor 1> : <comando> <valor 2> : <comando>... <valor n> : <comando> [senão <comando>] FIM SELEÇÃO

Em C... switch (expr) { case const1: comando1; break; case const2: comando2; break;... default: comando3;

Funcionamento 1. A expressão é avaliada; 2. O resultado da expressão é comparado com os valores das constantes que aparecem nos comandos case; 3. Quando o resultado da expressão for igual a uma das constantes, a execução se inicia a partir do comando associado com esta constante. A execução continua com a execução de todos os comandos até o fim do comando switch, ou até que um comando break seja encontrado.

Funcionamento (cont.) 4. Caso não ocorra nenhuma coincidência o comando default é executado. O comando default é opcional e se ele não aparecer nenhum comando será executado. O comando break é um dos comandos de desvio da linguagem C. O break é usado dentro do comando switch para interromper a execução e pular para o comando seguinte ao comando switch. Fonte: Apostila sobre C de Adriano Cruz

Exemplo em C #include <stdio.h> #define PI=3.14159265359 main () { int OP, X; float RESULTADO; scanf("%d", &X); scanf("%d", &OP); switch (OP) { // calcula perimetro case 1: RESULTADO = 2 * PI * X; printf("o perimetro eh %f", RESULTADO); break; // calcula area case 2: RESULTADO = PI * X * X; printf("a area eh %f", RESULTADO); break; default: printf("operacao errada");

Estado Civil usando switch com char #include <stdio.h> main () { char EstadoCivil; printf("digite a inicial do estado civil: (em minuscula) "); scanf("%c", &EstadoCivil); switch (EstadoCivil) { case 'c': printf("casado"); break; case d': printf( Divorciado"); break; case 's': printf("solteiro"); break; case 'v': printf("viuvo"); break; default: printf("estado civil desconhecido"); system("pause"); As opções do case devem estar entre aspas simples...

Estado Civil maiúsculas e minúsculas #include <stdio.h> main () { char EstadoCivil; printf("digite a inicial do estado civil: "); scanf("%c", &EstadoCivil); switch (EstadoCivil) { case 'C': case 'c': printf("casado"); break; case 'S': case 's': printf("solteiro"); break; case 'V': case 'v': printf("viuvo"); break; default: printf("estado civil desconhecido"); system("pause"); Comando fica vazio, significando que é o mesmo da opção seguinte...

Exercício Fazer o fluxograma de um programa que pergunta as coordenadas de 2 pontos do plano e imprima a distância entre eles ao quadrado. Cada ponto deve ser localizado por uma coordenada horizontal e outra vertical. Depois calcule a distância entre os dois pontos considerando a expressão (denominada distância Euclidiana ao quadrado) : H x H + V x V Onde H e V é a diferença entre as coordenadas horizontais e verticais dos dois pontos. Mas caso apenas um dos dois pontos esteja sobre o eixo vertical de coordenadas, essa coordenada deve ser somada de 1, antes de ser feito o cálculo acima. Caso as coordenadas verticais (ou horizontais) de ambos os pontos sejam zero a distancia entre os dois pontos é dada por: H x H, onde H é a diferença entre as coordenadas horizontais. Ou VxV onde V é a diferença entre as coordenadas verticais. Imprima o resultado desta distância (ao quadrado) entre os pontos que chamaremos de distância D.

Repetições #include <stdio.h> void main () { float M; /* a média */ char CONC; /* o conceito */ printf ("#Emissao do conceito final dada a media\n"); printf ("#Informe a media alcancada pelo aluno: "); scanf ("%f", &M); if (M < 6.) CONC = 'D'; else if (M < 7.5) CONC = 'C'; else if (M < 9.) CONC = 'B'; else CONC = 'A'; printf ("Conceito %c", CONC); E se for necessário calcular o conceito para uma turma de 40 alunos?

Solução: Repetição contável Para VAR_CONTROLE de 1 até 100 faça <comando> Como você escreveria o Google => O número 10 elevado a potência 100 (10 100 ), que pode ser escrito como o numeral 1 seguido de 100 zeros.

Exemplo: Calcular a soma dos N primeiros naturais Início Leia N SOMA = 0 i = 1 i <= N N S SOMA = SOMA + i i = i + 1 Escreva SOMA Fim

Em C... for (expressão1; expressão2; expressão3) comando; As três expressões geralmente têm os seguintes significados: A expressão1 é utilizada para inicializar a variável de controle do laço; A expressão2 é um teste que controla o fim do laço; A expressão3 normalmente faz um incremento ou decremento da variável de controle.

Funcionamento A execução do comando for segue os seguintes passos: 1. A expressão1 é avaliada; 2. A expressão2 é avaliada para determinar se o comando deve ser executado; 3. Se o resultado da expressão2 for VERDADEIRA o comando é executado caso contrário o laço é terminado; 4. A expressão3 é avaliada; 5. Voltar para o passo onde 2.

Soma dos N primeiros números naturais #include <stdio.h> main () { int N, i, SOMA; SOMA = 0; printf("digite um numero natural: "); scanf("%d", &N); for (i=0; i<=n; i++) { SOMA = SOMA + i; printf("a soma eh %d", SOMA); system("pause"); Início Leia N SOMA = 0 i = 1 i <= N S SOMA = SOMA + i i = i + 1 Escreva SOMA Fim N

Ler 5 números inteiros e contar quantos são negativos #include <stdio.h> #include <stdlib.h> main() { int numero, cont, neg=0; for (cont=0; cont<5; cont++) { printf ("\ndigite um numero inteiro: "); scanf ("%d", &numero); if (numero<0) neg++; printf ("\no numero de valores negativos eh %d", neg); system("pause");

for dentro de for #include <stdio.h> main () { int i,j; for(i=0;i<=10;i++) { for(j=0;j<=2;j++) { printf("%d %d \n", i,j); system("pause"); Saída: 0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 2 2... 10 0 10 1 10 2

Exercícios Fazer o algoritmo e código que imprima o número google. Fazer o código que calcule a distância euclidiana, E, e a D, definida anteriormente, entre 2 pontos do plano fornecidos pelo usuário, por meio de suas coordenadas horizontais e verticais : (H1,V1) (H2,V2).