Algoritmos x Programação. Primeiros Passos na Linguagem C/C++ Como traduzir um algoritmo? Algoritmo original. Prof. Marcelo Cohen flash@inf



Documentos relacionados
PROGRAMAÇÃO em C. Vitor Valerio de Souza Campos

Olimpíadas de Informática

Linguagem e Técnicas de Programação I Operadores, expressões e funções. Prof. MSc. Hugo Souza Material desenvolvido por: Profa.

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

Introdução a Computação

AULA 2: INTRODUÇÃO A LINGUAGEM DE C. Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme

Componentes da linguagem C++

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano

Engenharia de Software

Noções sobre Objetos e Classes

3/19/2014. Compilador DEV C++ ENGENHARIAS LÓGICA DE PROGRAMAÇÃO Henry Lubanco/ Joelio Piraciaba

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++.

Algoritmos e Programação. Curso de Engenharia de Produção Prof. Ms. Rogério Cardoso rogerio.cardoso@aedu.com professor@rogeriocardoso.com.

INF 1005 Programação I

1.2. Sistemas de Programação

BC0501 Linguagens de Programação

Capítulo 2: Introdução à Linguagem C

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Introdução a linguagem C Estruturas de decisão

Comandos de repetição For (inicialização; condição de execução; incremento/decremento) { //Código }

Algoritmos e Programação de Computadores

AULA 12 CLASSES DA API JAVA. Disciplina: Programação Orientada a Objetos Professora: Alba Lopes alba.lopes@ifrn.edu.br

Programação de Computadores I

ITENS FUNDAMENTAIS. Profª Angélica da Silva Nunes

Algoritmos e Estruturas de Dados I 01/2013. Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo

As bibliotecas iostream e cstdlib permitem a utilização de diversos comandos de entrada e saída e funções básicas.

Linguagem algorítmica: Portugol

Linguagem e Técnicas de Programação I Programação estruturada e fundamentos da linguagem C

O Processo de Programação

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

Algoritmos e Programação Estruturada

Técnicas de Programação I

Técnicas de Programação I

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream>

Estruturas de Repetição

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

//Leitura de Variáveis System.out.print("Digite a temperatura atual: "); temp = leia.nextfloat();

Linguagem C. Programação Estruturada. Funções Matemáticas. Prof. Luis Nícolas de Amorim Trigo

Bacharelado em Ciência e Tecnologia BC-0505 Processamento da Informação Lista de Exercícios EXTRA Nº 02 Algoritmos Estruturas de Seleção

Conceitos básicos da linguagem C

Introdução a lógica de programação. Aula 02: Linguagens de Programação e Introdução ao Visual C# Express

Introdução à Programação

UFSM Introdução ao Dev-C++ Profa. Patrícia Pitthan. Introdução ao Dev-C++

13 Números Reais - Tipo float

Estruturas (Registros)

A Linguagem Pascal e o Ambiente de Programação Dev-Pascal. Introdução à Ciência da Computação I

ESTRUTURA DE UM PROGRAMA EM C++ Estrutura de um Programa em C++

AULA 1 AULA 2. Estudo dirigido para as três primeiras AULAS de LPI Professora ANITA MACIEL 1º ESTUDO DIRIGIDO

Computação L2. Arquivos. Observação: Material da Disciplina Computação Eletrônica CIN/UFPE.

DESENVOLVIMENTO DE SOFTWARE II. Aula 07 A linguagem de programação C# e sua sintaxe

ERROS MAIS COMUNS COMETIDOS EM PROGRAMAS E ALGORITMOS

Organização de programas em Python. Vanessa Braganholo

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA AMBIENTE DE PROGRAMAÇÃO. Prof. Dr. Daniel Caetano

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

LINGUAGEM C UMA INTRODUÇÃO

Linguagem de Programação

AULA 12 FUNÇÕES Disciplina: Algoritmos e POO Professora: Alba Lopes alba.lopes@ifrn.edu.br

5 Apresentando a linguagem C

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java

INTRODUÇÃO À PROGRAMAÇÃO BCC 201 TURMAS 31, 32 E AULA TEÓRICA 4 PROF. MARCELO LUIZ SILVA (R E D)

MC-102 Aula 01. Instituto de Computação Unicamp

MC-102 Aula 17 Strings e Matrizes

Roteiro 1 - Como iniciar uma aplicação de console no Dev-C++

1.1. Organização de um Sistema Computacional

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

Programação. Folha Prática 3. Lab. 3. Departamento de Informática Universidade da Beira Interior Portugal Copyright 2010 All rights reserved.

Capítulo 2: Introdução à Linguagem C

2 Um Primeiro Programa em C

Equações do segundo grau

CURSO B SICO DE PERL

2. Representação Numérica

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO UFRPE

IFTO LÓGICA DE PROGRAMAÇÃO AULA 01

Italo Valcy

Programação de Computadores I. Conhecendo a IDE Code::Blocks

ICC Introdução para JavaScript

INTRODUÇÃO AO JAVA PARA PROGRAMADORES C

Estrutura switch if-else switch switch switch if-else-if switch switch case default break switch switch break Observações: case

Programa ConsoleRPN. PUC-Rio CIV Sistemas Gráficos para Engenharia Luiz Fernando Martha & André Maués Brabo Pereira

Resolução de problemas e desenvolvimento de algoritmos

IFTO LÓGICA DE PROGRAMAÇÃO AULA 02

Prof. Esp. Adriano Carvalho

15 a Aula Subprogramação /Subalgoritmos Função e Procedimento

e à Linguagem de Programação Python

Aula 01: Linguagens de Programação e Introdução ao Visual C# Express

7. Estrutura de Decisão

Aula 06 - Funções. O que é uma Função - Comando return - Protótipos de Funções - Tipos de Funções - Escopo de Variáveis - Passagem de parâmetros

2. OPERADORES ALGORITMOS, FLUXOGRAMAS E PROGRAMAS FUNÇÕES... 10

Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans.

Olimpíadas de Informática Aulas preparatórias Introdução a Programação em C.

Edwar Saliba Júnior. Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C / C++

4 RECURSOS AUTOMATIZADOS DO EXCEL

Resumo da Matéria de Linguagem de Programação. Linguagem C

TUTORIAL AMBIENTE WEB PORTUGOL

Introdução a Programação na Linguagem C.

Estruturas II UFOP 1/1

JSP - ORIENTADO A OBJETOS

Aluísio Eustáquio da Silva

Folha Prática 2. Lab. 2

Transcrição:

Primeiros Passos na Linguagem C/C++ Prof. Marcelo Cohen flash@inf inf.pucrs.br Algoritmos x Programação Algoritmo é um conjunto finito de regras, bem definidas, para a solução de um problema em um tempo finito (Orth,, 2001). Programa é um algoritmo codificado (escrito) em uma linguagem de programação (C/C++) Como traduzir um algoritmo? Exemplo: algoritmo que lê 3 valores, calcula a média e escreve o resultado na tela Para traduzi-lo lo,, será necessário conhecer a sintaxe da linguagem C, isto é, como escrever corretamente o programa de forma que o compilador entenda. Algoritmo original INÍCIO INTEIRO x, y, z REAL média LER x LER y LER z média = (x+y+z)/3 ESCREVER média FIM Programa equivalente em C/C++ INÍCIO INTEIRO x, y, z REAL média LER x LER y LER z média = (x+y+z)/3 ESCREVER média FIM 1

Indica uso da biblioteca para entrada e saída padrão (iostream) Corresponde ao INÍCIO do algoritmo (main principal em inglês) Declaração de 3 variáveis do tipo inteiro (int) x, y e z Observe que TODAS AS VARIÁVEIS devem ser declaradas antes de serem usadas! z Note que no final da cada comando é necessária a presença de um ponto-e-vírgula! Declaração da variável media, cujo tipo é real (float) Atenção! Repare que os nomes das variáveis não podem ter acentuação! Equivale ao LER: espera a digitação de um valor inteiro e armazena na variável x (Idem para as variáveis y e z) 2

Calcula a média dos 3 números e armazena o resultado na variável media Finalmente, ESCREVE na tela o valor da variável media, calculado na linha anterior Problema do programa? A chave final equivale ao FIM do algoritmo O programa não informa nada ao usuário: irá esperar a digitação dos 3 valores, calcular a média e exibi-la na tela. Porém, o usuário não tem a menor idéia do que o programa faz, a não ser que consulte o código-fonte. Para resolver o problema, temos que exibir mensagens que orientem o usuário: isso é essencial em qualquer programa, por menor que seja! Tornando o programa mais amigável cout << Digite 3 valores: ; cout << A média é: << media; Outro exemplo: Escrever um algoritmo que lê as medidas de um terreno retangular e de uma casa sobre este terreno. A seguir, calcula e exibe o percentual de área livre no terreno. Algoritmo já resolvido em aula! Codificaremos diretamente em C 3

Programa do Terreno e Casa float larg_terr terr, alt_terr terr, larg_casa, alt_casa; float area_terr terr, area_casa, area_livre; cout << Digite as medidas do terreno: ; cin >> larg_terr cin >> alt_terr cout << Digite as medidas da casa: ; cin >> larg_casa; cin >> alt_casa; continua Programa do Terreno e Casa area_terr = larg_terr * alt_terr area_casa = larg_casa * alt_casa; area_livre = area_terr area_casa; cout << Percentual de área livre: ; cout << area_livre / area_terr * 100 << %\n ; Programa do Terreno e Casa area_terr = larg_terr * alt_terr area_casa = larg_casa * alt_casa; area_livre = area_terr area_casa; cout << Percentual de área livre: ; cout << area_livre / area_terr * 100 << %\n \n ; O caractere \n significa ir para a linha seguinte, isto é, faz com que a próxima mensagem seja exibida na próxima linha da tela. Observe que o resultado será exibido na mesma linha do texto Percentual de área livre Outro exemplo: Escrever um algoritmo que lê os coeficientes de uma equação de 2 o grau. A seguir, calcula e exibe as raízes (através da fórmula de Baskara). Ao codificarmos esse algoritmo, surgirão alguns problemas Programa das Raízes x1 = (-b + sqrt(delta)) / (2*a); Programa das Raízes x1 = (-b + sqrt(delta)) / (2*a); Inclusão da biblioteca matemática (math.h) para que seja possível usar funções matemáticas, como raiz quadrada, potência, etc. 4

Programa das Raízes x1 = (-b + sqrt(delta) (delta))) / (2*a); Função raiz quadrada: sqrt (square root) O que pode dar errado? Programas devem prever erros do usuário! No caso do programa das raízes: Valor de A pode ser negativo? Delta pode dar negativo? O que acontece? 5