Prof. Marco Antonio M. Carvalho

Documentos relacionados
BCC201 Introdução à Programação. Prof. Saul Delabrida 2013/2

Prof. Marco Antonio M. Carvalho

Prof. Marco Antonio M. Carvalho

1 Como compilar seu código? 2 Comandos de terminal:

Prof. Marco Antonio M. Carvalho

Prof. Marco Antonio M. Carvalho

No Windows há basicamente dois tipos de programas de usuário:

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

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

Preparatório OBI. Prof. André Gustavo Duarte de Almeida docente.ifrn.edu.br/andrealmeida. Aula 01 Introdução a C++

3.1 - Funções para manipular dados de entrada e saída padrão

Mini apostila de Python - Oficina de Vestibulandos. PET Computação - UFPR September 2016

Programação de Computadores I

Passo-a-passo para desenvolver um Programa usando a Linguagem Python

Prof. Marco Antonio M. Carvalho

Working 03 : Conceitos Básicos I

INTRODUÇÃO AO USO DO DEV C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

CCO 016 Fundamentos de Programação

Conhecendo a Linguagem de Programação C

Aula 8: Estruturas de Repetição: O comando while

Linguagem C++ Estruturas de controle Parte II Estruturas de repetição

Apresentação da ferramenta de programação. Comandos de entrada e saída. Prof. Alex Camargo

Treinamento Olimpíada Brasileira de Informática

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

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

Programação I A Linguagem C. Prof. Carlos Alberto

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

Aula 3 Primeiros programas

Disciplina de Lógica e Linguagem de Programação Desenvolvido pelo professor Danilo Giacobo Ferramenta Code::Blocks

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Primeira Aula Prática

Aula 4: Introdução à Linguagem C++

Introdução ao Python. Programa Computacional

Introdução e Conceitos

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

Aula 6: Comandos Estruturados Estrutura Condicional

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

modificador h instrui a função printf( ) a exibir um short int. Portanto, %hu indica que o dado é do tipo short unsigned int.

Treinamento Olimpíada Brasileira de Informática

Programação 2017/2018 2º Semestre

IDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA DE CIÊNCIAS E TECNOLOGIA. ECT1203 Linguagem de Programação Turma Prof.

Aula 1 Apresentação do Curso

Obs.: para realizar estas atividades tenha certeza de que já tenha instalado no sistema operacional o Java JDK e o NetBeans.

LINGUAGEM C: COMANDOS DE REPETIÇÃO

LINGUAGEM C: ARRAY: VETORES E MATRIZES

Introdução à Programação

Introdução a Programação de Jogos

ALGORITMOS AULA 01. Baseado nas aulas do Prof. Jorgiano Vidal

Linguagem Técnica I. Prof. Jonatas Bastos

4 O conceito de variável

Linguagem C. André Tavares da Silva.

Programação Básica. Estrutura de um algoritmo

Figura 1: Operações para gerar um programa executável.

INSTRUÇÕES DE REPETIÇÃO

Algoritmos e Programação

Linguagem C/C++ Estrutura Condicional. Prof: Rosemary Melo

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes

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

Aula 17: Funções (Parte III) e Introdução a Vetores

Computação 1 - Python Aula 11 - Teórica. programa principal. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 29

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

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica.

Revisão de Programação em C++ Leandro Tonietto Estruturas de Dados em C++ Segurança da Informação

Aula 10 Comandos de Repetição

Organização de programas em Python. Vanessa Braganholo

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

Sistemas Operacionais e Introdução à Programação. Redirecionamentos Editor vi

MC102: Primeira aula de laboratório

Algoritmos e Linguagem de Programação em C. Professor: Bernard Cardoso Oliveira

Por que programar? Programação de Computadores Introdução a C++ É tudo questão de automatizar coisas. Alan de Freitas

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

Computação e Programação Exame Época de recurso

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA ESTRUTURA COM DECISÃO MÚLTIPLA. Prof. Dr. Daniel Caetano

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

Fundamentos de Programação 1

1 Introdução e Conceitos básicos

INSTITUTO FEDERAL DE! EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE

Comandos de controle de fluxo: if / for / while / do while.

Desenvolvimento de programas

system("pause"); //Envia comando para o sistema operacional solicitando parada de execução do programa } //limitador do corpo do programa

Aula 10: Manipulação do fluxo de laços

Aula 5 ESTRUTURAS DE REPETIÇÃO (WHILE)

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;

5 Comando de Seleção Simples e Composta

Algoritmos e Estruturas de Dados I

Métodos Computacionais em Física

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA DE CIÊNCIAS E TECNOLOGIA. ECT1203 Linguagem de Programação Turma Prof.

Outras Linguagens. Aulas 26 e 27. DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos

Introdução a Sistemas Abertos. Ambiente shell

Instituto Federal de Educação, Ciência e Tecnologia do RN Câmpus Currais Novos. LINGUAGEM C++ VARIÁVEIS COMPOSTAS Arrays Aula I

Introdução à linguagem C

ESTRUTURA COM DECISÃO COMPOSTA

Compiladores 04 Analise léxica Jflex. Prof José Rui

Manual de Dicas - Maratona de Programação Prof. Julio Fernando Lieira Fatec Lins

Transcrição:

Prof. Marco Antonio M. Carvalho

Lembretes Lista de discussão Endereço: programaacao@googlegroups.com Solicitem acesso: http://groups.google.com/group/programaacao Página com material dos treinamentos http://www.decom.ufop.br/marco/extensao/obi/ Repositório online de problemas das edições passadas da OBI http://br.spoj.com/problems/obi/sort=-7 Moodle http://programaacao.net.br/login/index.php 2

Avisos Este é um material suplementar; Os problemas da OBI listados no SPOJ não exigem redirecionamento da entrada; No entanto, outros problemas do SPOJ exigem. 3

Na aula de hoje Redirecionamento da entrada 4

Redirecionamento da Entrada 5

Redirecionamento da Entrada Frequentemente nos deparamos com problemas cujo término da entrada não é especificado Leia enquanto houverem dados na entrada. Normalmente, faz-se a leitura usando um laço que é repetido enquanto houver dados; Porém, testar estes programas no code::blocks não funciona naturalmente O laço de repetição simplesmente não termina normalmente. 6

Redirecionamento da Entrada Uma forma simples de resolver este problema é simular o marcador de final de arquivo (EOF) No windows, basta digitar ctrl+z após digitar os dados de entrada; Em distribuições Unix, basta digitar ctrl+d após digitar os dados de entrada. Observe que a combinação de teclas pode variar de acordo com o sistema operacional. 7

Redirecionamento da Entrada Outra forma é utilizar o redirecionamento de entrada Ao invés de lermos os dados do teclado, lemos os dados a partir de um arquivo de texto, porém, sem abri-lo explicitamente em nosso programa. Para isso, precisamos usar um terminal (ou equivalente). 8

MSYS/Terminal O terminal é um interpretador de instruções, e pode ser utilizado para compilar e executar nossos programas Programas em linguagem c++ são compilados com o compilador g++. 9

Como Compilar com o G++? No MSYS/Terminal, acesse a pasta onde está seu código-fonte, usando o comando cd: cd pasta1/pasta2/pasta3 A barra / significa que uma pasta está dentro da outra Neste exemplo, pasta3 está dentro de pasta2 que está dentro de pasta1. Para verificar o conteúdo de uma pasta, utilize o comando ls: ls 10

Como Compilar com o G++? Uma vez na pasta correta, digite o seguinte comando: g++ arquivo.cpp o nomeprograma -Wall Neste exemplo, substitua o nome arquivo pelo nome do seu arquivo. Substitua também o nome nomeprograma pelo nome que você desejar. O -o significa que o programa compilado se chamará nomeprograma; O -Wall significa que pedimos que sejam mostrados todos os erros e avisos de compilação. 11

Como Compilar com o G++? Se o seu programa não apresentar erros, nenhuma mensagem será apresentada pelo compilador Você já pode executar seu programa. Caso contrário, o compilador tentará te avisar onde está o erro do seu programa Será necessário corrigir o erro em seu código fonte e compilá-lo novamente. 12

Como Compilar com o G++? 13

Como Compilar com o G++? O compilador tenta indicar em qual linha está o erro, o qual é o tipo de erro. Neste exemplo, o erro está na linha 4, e se refere à falta de ponto e vírgula. 14

Como Compilar com o G++? Toda vez que alterarmos nossos códigos, não podemos nos esquecer de salvar antes de compilar Senão, estaremos compilando uma versão antiga de nossos programas, que não refletem as alterações realizadas. 15

Como Executar um Programa? Uma vez compilado, seu programa pode ser executado pelo próprio terminal Basta digitar./ antes do nome do programa;./nomeprograma Eles serão executados dentro do próprio terminal. 16

Como Executar um Programa? 17

Compilando e Executando No site do projeto há diversas informações sobre compilação/execução por linha de comando e utilização da linha de comando http://www.decom.ufop.br/marco/extensao/obi/ 18

Redirecionamento da Entrada Suponha que temos um programa chamado meuprograma e que os dados da entrada estão em um arquivo chamado entrada.txt; Para redirecionar a entrada do programa para o arquivo, basta fazer como abaixo./nomeprograma < entrada.txt Quando o programa ler todo o conteúdo do arquivo, o laço de repetição da leitura termina. 19

Exemplo 20

Ácido Ribonucléico Alienígena O problema 11602 - Ácido Ribonucléico Alienígena é um exemplo de problema em que não é especificado quando a entrada terminará A entrada é composta por diversos casos de teste. Cada caso de teste possui uma linha... Cada linha é uma sequência de caracteres sem espaços em branco. 21

Ácido Ribonucléico Alienígena Entrada: SBC FCC SFBC SFBCFSCB CFCBSFFSBCCB Saída: 1 1 0 4 5 22

Ácido Ribonucléico Alienígena Uma maneira de ler os dados da entrada é criar um arquivo entrada.txt com o conteúdo da entrada para o problema; Depois, executar o código do próximo slide O laço será suspenso quando toda a entrada tiver sido lida. 23

Ácido Ribonucléico Alienígena #include <iostream>! using namespace std;! int main() {! "string cadeia;! "! "while(cin>>cadeia)! "{! " "//lê enquanto houver dados de entrada! "}! "return 0;! } 24

Perguntas? 25