Entrada e Saída de Dados

Documentos relacionados
Programação Funcional 9 a Aula Programas interativos

Linguagens de Programação. Programação Funcional e Haskell Programação Interativa Thiago Alves

Entrada e Saída em Haskell Tutorial

Programação Funcional. Aula 7. Entrada e Saída. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto /86 ...

Programação Funcional Aulas 9, 10 & 11

LÓGICA DE PROGRAMAÇÃO. Resumo da Linguagem C. Sérgio Carlos Portari Júnior

Números Aleatórios Argumentos da Linha de Comando Arquivos

Programação Funcional. Capítulo 13. Mônadas. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2012.

Programas Interativos

Programas Interativos

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

Linguagem C Entrada/Saída (console)

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

Programação Funcional BCC222. Aulas 17,18. IO e Mônadas

Simulação de Caixa Automático

3. Linguagem de Programação C

Linguagem C. André Tavares da Silva.

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

A classe Read. Read. Hierarquia de classes pré-definidas do Haskell. Declaração de tipos polimórficos com restrições nos parâmetros

Introdução à Programação em C (II)

Haskell Paralelo (e entrada e saída de dados)

Professor: Domingos Equipe Haskell: Lucas Montesuma, Francisco Leonardo CONCEITOS DA LINGUAGEM DE PROGRAMAÇÃO CÁLCULADORA EM HASKELL

Computação. Introdução a C e Variáveis Inteiras

Introdução a Programação. Strings (Vetor de Caracteres)

Linguagem C Controle do Fluxo de Execução. Lógica de Programação

Computação Eletrônica

Módulo 1. Introdução. AEDS I C++ (Rone Ilídio)

Aula 3 Constantes e funções de E/S

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

Introdução à Programação em C Input / Output

Ocorrem em três tipos:

Expressões Condicionais

Linguagem de Programação C

15/03/2018. Professor Ariel da Silva Dias Paradigma Imperativo

Operações com Arquivos

Expressões Condicionais

Expressão Condicional

Métodos Computacionais. Strings (Vetor de Caracteres)

Computação Eletrônica. Strings. Prof: Luciano Barbosa. CIn.ufpe.br

Aula 3:Introdução à Linguagem C

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação

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

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

Matrizes em C. Lucas Ferrari de Oliveira Professor Adjunto. Universidade Federal do Paraná

Teoria da Computação e Algoritmos. Introdução à Linguagem Pascal. ALGORITMO <Nome do algoritmo>; <definições>; INÍCIO <Comandos>; FIM.

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

Comandos de entrada. e saída. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada.

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

Funções de Entrada e Saída

Apostila - Desenvolvimento web com PHP

Linguagem de Programação I. Aula 11 Strings

Comandos de Entrada e Saída

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

Linguagem de Programação C. Funções e Procedimentos

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática

Aula 05: Condicionais (Parte 2)

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

Aula 24: Ponteiros e Alocação Dinâmica

Puca Huachi Vaz Penna

Capítulo 2 Operadores. A função scanf()

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

SITUAÇÃO VETORES. Imagine o seguinte problema:

Linguagem de Programação. Tutorial 3 Os comandos if, else e else if

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton

//conteúdo do arquivo pacote.h

Introdução a Computação

Programação Funcional. Capítulo 13. Mônadas. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2013.

Aula 06: Condicionais (switch)

PROGRAMAÇÃO COMPUTACIONAL

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

Aula Prática 2. Paradigmas da Programação I / Programação Funcional

Paradigmas de Programação

Revisão. Profa Marina Gomes

Introdução ao SciLab. SciLab O que é? Onde obter o programa:

Introdução à Programação

Working 05 : Modularização

Linguagens de Programação

Algoritmos e Programação

A palavra ALGORITMO teve origem com um Matemático Persa, al. Khawarizmi. O seu trabalho mais famoso foi Al-jabr walmuquabalah,

Algoritmos e Estruturas de Dados I (DCC/003) Funções

Fundamentos de Programação

Linguagens de Programação Aula 13

Java e sua Sintaxe. Estrutura mínima de um programa em Java: public class Exemplo { }

Linguagem de Programação

Material sobre Funções AEDS 1

Programação para Computação 13ª Aula

CURSO BÁSICO DE PROGRAMAÇÃO AULA 11. Revisão Aula Anterior Vetores Cadeia de Caracteres

Working 03 : Conceitos Básicos II

Aula 2 Comandos de Decisão

Aula 28: Arquivos de texto

ActionScript ACTIONSCRIPT ACTIONSCRIPT -1-

EXERCÍCIO DE SONDAGEM SEMESTRE DATAS: 21/06/2016 (TURMAS 01 E 02) Matrícula Nome Nota

Fábio da Fontoura Beltrão Felipe Augusto Chies Lucas Fialho Zawacki Marcos Vinicius Cavinato Matheus de Carvalho Proença

INTRODUÇÃO À COMPUTAÇÃO - RESUMO E EXERCÍCIOS* P2

SCC0124 Introdução à Programação para Engenharias

Sintaxe Básica de Java Parte 2

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

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: Manipulação de arquivos

Programação para Games I

Transcrição:

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO TECNOLÓGICO PET - Engenharia de Computação Entrada e Saída de Dados Programação 1 Vitória, 28 de Maio de 2010 Ivan de Oliveira Nunes Engenharia de Computação ivanoliv.1@gmail.com Juan França Muniz de Souza Engenharia de Computação juan.franca@gmail.com Marcos Vinícius Caus Couto Engenharia de Computação marcoscaus@gmail.com

Sumário 1 Introdução 3 2 Funções básicas I/O 4 2.1 getchar e putchar........................ 4 2.2 Operador do............................ 4 2.3 getline, putstr e putstrln.................... 5 3 Tratando arquivos 7 3.1 readfile e writefile........................ 7 3.2 Import, openfile, hgetline................... 8 4 Considerações Finais 9 2

1 Introdução Haskell, como outras linguagens de programação, possui funções que se comunicam com o sistema operacional para realizar entrada e saída de dados. Estas operações trabalham com valores do tipo (IO t), e durante a sua avaliação requisitam operações de IO ao sistema operacional. O sistema de I / O em Haskell é puramente funcional, mas tem todo o poder expressivo encontrados em linguagens de programação convencionais. Ações típicas incluem a leitura, gravação de arquivos, leitura de entrada. 3

2 Funções básicas I/O 2.1 getchar e putchar getchar :: IO Char A função getchar serve para capturar um char. putchar :: Char IO() A função putchar serve para imprimir um char na tela. 2.2 Operador do Ações são sequenciadas pelo operador do. Exemplo: main :: IO() main = do c getchar putchar c Em primeiro lugar, é atribuído à variável c o caracter escrito. Em seguida é impresso o seu conteúdo na tela através da função putchar.veja abaixo: Agora iremos para funções mais interessantes. :-) 4

2.3 getline, putstr e putstrln getline:: IO String A função getline serve para capturar o que for escrito em uma linha. putstr:: String IO () A função putstr serve para imprimir uma string. putstrln:: String IO () A função putstrln serve para imprimir uma string seguida de um enter. Exemplo 1: main = do x getline putstr x Primeiramente, é atribuído a variável x o que for escrito. Em segundo lugar, é impresso na tela a variável x. Veja a figura abaixo: Exemplo 2: main = do putstrln Digite seu nome nome getline putstr nome 5

Veja abaixo: Com o que já vimos podemos fazer algo interessante.veja: JOGO DA PALAVRA Segue abaixo o código: main = do putstrln Digite a palavra tentativa getline if tentativa == palavra then putstr Acertou! else putstr Errou! where palavra = PET 6

3 Tratando arquivos 3.1 readfile e writefile readfile:: FilePath IO String Sintaxe: variável readfile endereço do arquivo A função readfile serve para leitura de um arquivo. writefile::filepath String IO () Sintaxe: writefile nome do arquivo ( o que deseja inserir ) A função writefile serve para escrever em um arquivo. Exemplo: adiciona = do putstr ( Escreva uma linha para adicionar ao arquivo Haskell.txt: ) linha getline arquivo readfile Haskell.txt writefile Haskell.txt (arquivo ++ \n ++ linha) putstr ( Linha adicionada! ) Antes: 7

Depois: Vale ressaltar que se o arquivo Haskell.txt não estiver na pasta, ele será criado. Observe também que o \n influencia na quebra de linha. 3.2 Import, openfile, hgetline openfile::filepath IOMode IO Handle Sintaxe: openfile endereço do arquivo ReadMode A função textit serve para abrir um arquivo de texto. Exemplo import IO main = do x openfile /Haskell.txt ReadMode y hgetline x putstr y Como hgetline e openfile não são definidas no módulo prelude, é necessário importar o módulo IO, na qual tais funções pertencem. hgetline é idêntica a getline visto acima. Porém, trata-se de um arquivo. E de forma similar, temos hgetchar, hputchar, etc. 8

4 Considerações Finais Essa simples apostila é introdutória. Portanto segue abaixo uma lista de sites que tratam do assunto com certo aprofundamento http://www.zvon.org/other/haskell/outputglobal/index.html http://www.haskell.org/tutorial/io.html http://book.realworldhaskell.org/read/io.html Fora as inúmeras apostilas que podem ser achadas na internet. Qualquer dúvida, entrem em contato com os monitores da disciplina. 9