Robótica. Prof. Reinaldo Bianchi Centro Universitário da FEI 2007

Tamanho: px
Começar a partir da página:

Download "Robótica. Prof. Reinaldo Bianchi Centro Universitário da FEI 2007"

Transcrição

1 Robótica Prof. Reinaldo Bianchi Centro Universitário da FEI 2007

2 Aula

3 Objetivos desta aula Programação real de um robô móvel. Breve introdução a programação NQC para robôs LEGO. Resultado esperado: Robô seguidor de pista reta ao final da aula. Baseado em: Aula do professor Paulo Santos. Programming Lego Robots, de Mark Overmars.

4 O robô a ser usado Três sensores: 1 e 3 são de luz (SENSOR_LIGHT) 2 é de toque (SENSOR_TOUCH) Dois motores: A e C (saída B não é utilizada!!)

5 O Robô usado

6 O robô usado Sensor 3 Sensor 1 S1 S3 outa outc

7 O LEGO Brick RCX CPU do robô. Permite até 5 programas armazenados na memória. Permite visualizar sensores. Controla motores.

8 O LEGO Brick RCX Visualiza Valores dos sensores Escolhe o programa a executar Liga/desliga Executa/para programa

9 A linguagem Not Quite C Uma pequena introdução a NQC.

10 A linguagem NQC ( not quite C ) NQC é uma linguagem de programação desenvolvida por Dave Baum especialmente para robôs LEGO. Não entre em pânico se você nunca programou! Subconjunto de Linguagem C. NQC é fácil de usar. Programar um robô em NQC é muito mais fácil do que programar um computador.

11 NQC: aspectos básicos Cada programa em NQC deve ter uma task main() : Ela inicia a execução do programa. Um programa pode ter diversas tarefas sendo executadas em paralelo : multitasking. Possui dois tipos de comandos: De controle do robô. De controle do fluxo do programa.

12 Exemplo 1 Meu primeiro programa NQC. Anda para frente e para trás. task main() { } OnFwd(OUT_A); OnFwd(OUT_C); Wait(400); OnRev(OUT_A+OUT_C); Wait(400); // Liga motor A // Liga motor B // Espera 4 segundos // Reverte. // Espera 4 segundos Off(OUT_A+OUT_C); // Desliga motores.

13 Comandos de controle do robô Comandos que acionam os sensores e atuadores do robô. Permitem ligar e desligar os motores, ajustar a potência dos mesmos. Permitem definir os sensores usados e ler os valores dos mesmos. Usados em conjunto com os comandos de controle de fluxo.

14 Entradas e Saídas Todo controle do robô é realizado sobre 3 entradas e 3 saídas. OUT_A, OUT_B e OUT_C: São as 3 saídas de controle do robô. SENSOR_1, SENSOR_2 E SENSOR_3: São as 3 entradas de sensores do robô.

15 Comandos de controle do motor OnFwd(OUT_A); Inicia a saída A Se um motor estiver conectado a porta A, ele será ligado no sentido direto com máxima velocidade. OnRev(OUT_A+OUT_C); Reverte as saídas A e C. Se existirem motores ligados a estas saídas, eles serão acionados no sentido reverso com máxima velocidade.

16 Comandos de controle do motor Off(OUT_A+OUT_C); Desliga os motores. SetPower(força). A força é um número inteiro entre 0 e 7: 7 é o mais rápido. 0 o mais lento, mas ainda com movimento.

17 Comando wait O comando wait faz com que a tarefa pare por um determinado tempo, dado em centésimos de segundos. Wait(400); Note que as saídas são mantidas no mesmo estado pelo tempo em que a espera durar.

18 Definindo um sensor Para definir um sensor é necessário especificar a porta e o tipo do sensor: SetSensor(SENSOR_2,SENSOR_TOUCH); Define um sensor de toque na porta 2. SetSensor(SENSOR_1,SENSOR_LIGHT); Define um sensor de luz na porta 1. Para usar o sensor: Use o nome da porta como variável: SENSOR_2 == 1

19 Sensor de toque Usado para detectar toques ou barreiras. Retorna: 0 se aberto 1 se pressionado. O sensor mais simples possível

20 Exemplo sensor de toque Anda até bater em algo e o sensor de toque for pressionado: task main() { SetSensor(SENSOR_1,SENSOR_TOUCH); OnFwd(OUT_A+OUT_C); until (SENSOR_1 == 1); Off(OUT_A+OUT_C); }

21 Sensor de luz Usado para cores em objetos, no chao e distâncias. Retorna: 0 mínimo. 80 máximo. Na prática: < 30 é preto > 50 é branco

22 Comandos de controle de fluxo. NQC possui comandos de controle de fluxo iguais as linguagens procedimentais convencionais, como linguagem C ou Pascal: if... else while do... while repeat... until e outras.

23 repeat task main() { repeat(4) { OnFwd(OUT_A+OUT_C); Wait(MOVE_TIME); OnRev(OUT_C); Wait(TURN_TIME); } Off(OUT_A+OUT_C); }

24 do... while } int move_time, turn_time, total_time; task main() { total_time = 0; do { move_time = Random(100); turn_time = Random(100); OnFwd(OUT_A+OUT_C); Wait(move_time); OnRev(OUT_C); Wait(turn_time); total_time += move_time; total_time += turn_time; } while (total_time < 2000); Off(OUT_A+OUT_C);

25 while e if/else Anda e gira aleatoriamente para esquerda ou direita #define MOVE_TIME 100 #define TURN_TIME 85 task main() { while(true){ OnFwd(OUT_A+OUT_C); Wait(MOVE_TIME); if (Random(1) == 0){ OnRev(OUT_C); } else{ OnRev(OUT_A);} Wait(TURN_TIME); } }

26 Função random A função random () gera um número aleatório entre 0 e o número passado como parâmetro da função: Random(60) Gera um número aleatório entre 0 e 60. Números sempre inteiros.

27 Operadores Operadores relacionais: = =, <, <=, >, >=!= (diferente) Operadores Booleanos: && (conjunção lógica) (disjunção lógica)! (negação)

28 Variáveis #define TURN_TIME 85 int move_time; task main() {move_time = 20; repeat(50) { OnFwd(OUT_A+OUT_C); Wait(move_time); OnRev(OUT_C); Wait(TURN_TIME); move_time += 5; } Off(OUT_A+OUT_C); } Só existem variáveis inteiras (35 no máximo)

29 Macros #define turn_around OnRev(OUT_C);Wait(340);OnFwd(OUT_A+OUT_C); task main() { OnFwd(OUT_A+OUT_C); Wait(100); turn_around; Wait(200); turn_around; Wait(100); turn_around; Off(OUT_A+OUT_C); }

30 Macros 2: Mudando de direção #define MOVE_TIME 100 #define TURN_TIME 85 task main() { OnFwd(OUT_A+OUT_C); Wait(MOVE_TIME); OnRev(OUT_C); Wait(TURN_TIME); Off(OUT_A+OUT_C); }

31 Programando o LEGO Utilizamos o programa BricxCC para programar o LEGO. Permite: Editar e testar o programa. Carregar o programa no robô. Bricx Command Center pode ser executado em Windows (95, 98, ME, NT, 2K, XP).

32 Bricx Command Center

33 Templates

34 Aviso: não perca seu tempo! COMPILE E DEPURE SEU PROGRAMA ANTES DE TESTÁ-LO NO ROBÔ!! Caso contrário, você só descobrirá os erros depois de um bom tempo... Atrapalha a todos...

35 Tarefa da aula de hoje Fazer o robô andar em linha reta, seguindo a pista, corrigindo os eventuais desvios. Dividir a turma em equipes de 2 alunos! Cada dupla deve fornecer um nome para a sua equipe.

36 Pista usada. Ao final do curso (4 aulas), a equipe que fizer o trajeto a seguir no menor tempo será a campeã!

37 Exemplo básico Exemplo de robô que anda até mudar a cor de seu sensor #define THRESHOLD 40 task main() { } SetSensor(SENSOR_2,SENSOR_LIGHT); OnFwd(OUT_A+OUT_C); while (true) { } if (SENSOR_2 > THRESHOLD) { } OnRev(OUT_C); until (SENSOR_2 <= THRESHOLD); OnFwd(OUT_A+OUT_C);

38 Conclusão O Controle de robôs reais não é tão complicado. Usem material das aulas de controle (aula 9) e das aulas de robótica móvel. Dificuldade: Robô não é simplesmente diferencial, mas possui deslizamento. Outros tipos de robôs nas próximas aulas.

39 Fim

Lego NXT usando NXC. Prof. Marcelo Santos Linder

Lego NXT usando NXC. Prof. Marcelo Santos Linder Programando Robôs Lego NXT usando NXC Prof. Marcelo Santos Linder Sumário Robô (kit) Lego NXT Linguagem NXC Estrutura geral de um programa Estruturas de controle de fluxo Motores Execução de códigos de

Leia mais

Programando Robôs Lego com NQC

Programando Robôs Lego com NQC Programando Robôs Lego com NQC (Versão 3.03, 2 de Outubro de 1999) por Mark Overmars Department of Computer Science Utrecht University P.O. Box 80.089, 3508 TB Utrecht the Netherlands Traduzido para a

Leia mais

Lego NXT usando NXC. Prof. Marcelo Santos Linder

Lego NXT usando NXC. Prof. Marcelo Santos Linder Programando Robôs Lego NXT usando NXC Prof. Marcelo Santos Linder Robô (kit) Lego NXT Linguagem NXC Sumário Estrutura geral de um programa Estruturas de controle de fluxo Motores Sensores Exemplos de robôs

Leia mais

PROGRAMANDO O ROBO LEGO

PROGRAMANDO O ROBO LEGO PROGRAMANDO O ROBO LEGO APOITIA, CARLOS EDUARDO MOURA SALES, GLADISTONEY SANTOS GARCIA, LEONARDO ARRUDA VILELA OLIVEIRA, MÁRISON FIGUEIREDO Cuiabá (MT) np.robotica@unirondon.br 1. Introdução A Robótica

Leia mais

Programando Robôs Lego NXT usando NXC

Programando Robôs Lego NXT usando NXC Programando Robôs Lego NXT usando NXC Daniele Benedettelli Este texto foi traduzido para o português e disponibilizado gratuitamente com autorização do autor. Sua reprodução e sua distribuição são livres,

Leia mais

Introdução à Programação I

Introdução à Programação I Introdução à Programação I Programação Estruturada Álgebra Booleana e Expressões Compostas Material da Prof. Ana Eliza Definição: Chama-se proposição todo o conjunto de palavras ou símbolos que exprimem

Leia mais

Congresso de Inovação, Ciência e Tecnologia do IFSP

Congresso de Inovação, Ciência e Tecnologia do IFSP Congresso de Inovação, Ciência e Tecnologia do IFSP - 2016 CONTROLADOR PID APLICADO A PROGRAMAÇÃO DE ROBÔ MÓVEL THAIS JULIA BORGES RIBEIRO 1, MASAMORI KASHIWAGI 2 1 Técnico em Automação Industrial, Bolsista

Leia mais

Conceitos Básicos Linguagem C

Conceitos Básicos Linguagem C Conceitos Básicos Linguagem C PROF. MAURÍCIO A DIAS MACDIASPAE@GMAIL.COM 2 Método Método básico para construção de algoritmos 1. Compreender completamente o problema a ser resolvido, se possível dividindo

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Professor: Diego Oliveira Conteúdo 05: Linguagem Java Conteúdo da Aula Linguagem Java Tipos Primitivos Operadores Aritiméticos Operadores Lógicos Precedência de Operadores

Leia mais

ESTUDO DA TRANSFERÊNCIA AUTOMÁTICA DE DADOS PARA UM ROBÔ MÓVEL NA PLATAFORMA LEGO MINDSTORMS

ESTUDO DA TRANSFERÊNCIA AUTOMÁTICA DE DADOS PARA UM ROBÔ MÓVEL NA PLATAFORMA LEGO MINDSTORMS CAMPUS DISTRITO ESTUDO DA TRANSFERÊNCIA AUTOMÁTICA DE DADOS PARA UM ROBÔ MÓVEL NA PLATAFORMA LEGO MINDSTORMS OBJETIVOS Objetivo Geral Luan Leonardo Vieira de Moraes 1 Prof. Dr. José Pinheiro de Queiroz

Leia mais

Desenvolvimento de Aplicações Desktop

Desenvolvimento de Aplicações Desktop Desenvolvimento de Aplicações Desktop Operadores Lógicos; Estruturas de Controle (Decisão) Professor: Charles Leite Fluxo de Controle A ordem com que as instruções são executadas em um programa é chamada

Leia mais

Programação Básica em Arduino Aula 2

Programação Básica em Arduino Aula 2 Programação Básica em Arduino Aula 2 Execução: Laboratório de Automação e Robótica Móvel Site: http://oficinaderobotica.ufsc.br/ Canal: Oficina de Robótica UFSC https://www.youtube.com/channel/uc4oojsp2fhfkdrnj0wd7iag

Leia mais

Processamento da Informação

Processamento da Informação Processamento da Informação Fabrício Olivetti de França 02 de Fevereiro de 2019 Topics 1. Tipos Padrões 2. Variáveis Auxiliares 3. Condicionais 1 Tipos Padrões Tipos Padrões A linguagem Python fornece

Leia mais

Processing Aula 2. Prof. Wallace Lages

Processing Aula 2. Prof. Wallace Lages Processing Aula 2 Prof. Wallace Lages Aula 2 Computadores e lógica digital Variáveis Condicionais Computador ou calculadora? Computador Máquina programável capaz de realizar automaticamente uma sequência

Leia mais

CONDICIONAL / de SELEÇÃO / de DECISÃO

CONDICIONAL / de SELEÇÃO / de DECISÃO ESTRUTURA de CONTROLE CONDICIONAL / de SELEÇÃO / de DECISÃO LPI 1. Expressões Expressões Aritméticas As expressões aritméticas são formadas por operadores aritméticos (+, -, *, /) e por operandos (as constantes

Leia mais

Programação Introdução

Programação Introdução PROGRAMAÇÃO Programação Introdução Prof. Dr. Adriano Mauro Cansian 1 Introdução Para armazenar um algoritmo na memória de um computador e para que ele possa, em seguida, comandar as operações a serem executadas,

Leia mais

Aula 3 Programação. LEGO NXT-G

Aula 3 Programação. LEGO NXT-G Portfolio MEEC 1 Aula 3 Programação. LEGO NXT-G Objectivo Introdução à programação do LEGO NXT-2, que será usado no lab. Portfolio MEEC 2 O que é um programa de computador? Conjunto de instruções que visam

Leia mais

Paradigmas. Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I

Paradigmas. Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I Paradigmas Paradigmas Tradicional Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I Paradigmas Tradicional Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I OO Simula-67, Smalltalk, C++, Eiffel, Object Pascal,

Leia mais

Workshop - A Robótica em Contexto Educativo

Workshop - A Robótica em Contexto Educativo Pastas do robô: Pastas do Robô a. Try Me b. View c. Bluetooth d. My Files Software files NXT files Sound Files e. NXT program f. Settings Pastas do robô: a. Try Me b. View c. Bluetooth d. My Files Software

Leia mais

Programaçãodo RobôZug. Alex Vidigal Bastos

Programaçãodo RobôZug. Alex Vidigal Bastos Programaçãodo RobôZug Alex Vidigal Bastos www.decom.ufop.br/alex/unipac.html alexvbh@gmail.com 1 Agenda RecursosdoZug RobôZug Controlando o Motor LEDeBIP 2 Recursos do Zug 3 Recursos do Zug Dados Complementares

Leia mais

Resolução De Problemas Em Informática. Docente: Ana Paula Afonso Resolução de Problemas. 1. Analisar o problema

Resolução De Problemas Em Informática. Docente: Ana Paula Afonso Resolução de Problemas. 1. Analisar o problema ALGORITMIA Resolução De Problemas Em Informática Docente: Ana Paula Afonso 2000-2001 Resolução de Problemas 1. Analisar o problema Conhecer o bem o problema Descrever o problema: subdividir, detalhar 2.

Leia mais

ESTUDO DA LINGUAGEM NXC PARA PROGRAMAÇÃO DE UM ROBÔ MÓVEL NA PLATAFORMA LEGO MINDSTORMS

ESTUDO DA LINGUAGEM NXC PARA PROGRAMAÇÃO DE UM ROBÔ MÓVEL NA PLATAFORMA LEGO MINDSTORMS ESTUDO DA LINGUAGEM NXC PARA PROGRAMAÇÃO DE UM ROBÔ MÓVEL NA PLATAFORMA LEGO MINDSTORMS OBJETIVOS Rachel Lima Tuma 1 José Pinheiro de Queiroz Neto 2 Diante da pouca acessibilidade quanto ao idioma, dos

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-5 Estruturas de Decisão e Controle. Arrays em Java Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de

Leia mais

Introdução Operadores Relacionais Lógicos Comando If Comando If...else Comando swich()...case...break Operador condicional ternário

Introdução Operadores Relacionais Lógicos Comando If Comando If...else Comando swich()...case...break Operador condicional ternário Objetivo: Desenvolver programas utilizando tanto diagrama de blocos, como linguagem C para tomada de decisão. Introdução Operadores Relacionais Lógicos Comando If Comando If...else Comando swich()...case...break

Leia mais

Prof. A. G. Silva. 14 de março de Prof. A. G. Silva INE5231 Computação Científica I 14 de março de / 26

Prof. A. G. Silva. 14 de março de Prof. A. G. Silva INE5231 Computação Científica I 14 de março de / 26 INE5231 Computação Científica I Prof. A. G. Silva 14 de março de 2017 Prof. A. G. Silva INE5231 Computação Científica I 14 de março de 2017 1 / 26 Conteúdo programático O computador - [3 horas-aula] Representação

Leia mais

Fluxogramas e variáveis

Fluxogramas e variáveis Fluxogramas e variáveis Patrícia de Siqueira Ramos UNIFAL-MG, campus Varginha 11 de Março de 2019 Patrícia de Siqueira Ramos Fundamentos da programação 1 / 20 Fases de um algoritmo Patrícia de Siqueira

Leia mais

INF 1005 Programação I

INF 1005 Programação I INF 1005 Programação I Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa instruções de máquina

Leia mais

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

Linguagem C/C++ Estrutura Condicional. Prof: Rosemary Melo Linguagem C/C++ Estrutura Condicional Prof: Rosemary Melo Estrutura Condicional if... (simples) Sintaxe (como o comando deve ser escrito): if (condição) comando; ou, no caso de mais de um comando: if (condição)

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Aula 05 Estruturas Condicionais Edirlei Soares de Lima Tomada de Decisão Até o momento, todas as instruções dos nossos programas eram executadas sequencialmente.

Leia mais

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

MC-102 Aula 04 Expressões Relacionais, Lógicas e Comandos Condicionais MC-102 Aula 04 Expressões Relacionais, Lógicas e Comandos Condicionais Instituto de Computação Unicamp 26 de Agosto de 2016 Roteiro 1 Expressões relacionais 2 Expressões lógicas 3 4 Exercícios (Instituto

Leia mais

INTRODUÇÃO AO AMBIENTE DE PROGRAMAÇÃO MATLAB

INTRODUÇÃO AO AMBIENTE DE PROGRAMAÇÃO MATLAB TURMA 1 AULA 5 INTRODUÇÃO AO AMBIENTE DE PROGRAMAÇÃO MATLAB MINICURSO PET-POTÊNCIA 2016.1 RÔMULLO RANDELL MINICURSO PET-POTÊNCIA 2016.1 INTRODUÇÃO AO AMBIENTE DE PROGRAMAÇÃO MATLAB RÔMULLO RANDELL Turma

Leia mais

Programação Aplicada à Engenharia

Programação Aplicada à Engenharia Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Programação Aplicada à Engenharia Aula 06: Introdução a C++ Silvio Fernandes 2009.1 1 História de C e C++ C++ é uma evolução

Leia mais

ROBOT ROAMER. Manual de utilização. Características do Recurso Educativo:

ROBOT ROAMER. Manual de utilização. Características do Recurso Educativo: ROBOT ROAMER Manual de utilização Características do Recurso Educativo: Categoria: Robótica Tipo de Recurso: Manual Destinatários: Pré-Escolar, 1.º, 2.º e 3.º Ciclos Ano de Criação: 2017 1. INTRODUÇÃO

Leia mais

ET7DE - Instrumentação Virtual. Prof. Winderson Introdução ao LabVIEW

ET7DE - Instrumentação Virtual. Prof. Winderson Introdução ao LabVIEW ET7DE - Instrumentação Virtual Prof. Winderson Introdução ao LabVIEW Conteúdo A. Programação em LabVIEW B. Uso de Sub-VIs C. Estruturas Básicas de Programação agosto de 15 2 C. Estruturas Básicas de Programação

Leia mais

I1, I2 e In são instruções simples ou estruturadas da linguagem Pascal.

I1, I2 e In são instruções simples ou estruturadas da linguagem Pascal. Capítulo 4 TESTES, ESCOLHAS E MALHAS DE REPETIÇÃO 1. INTRODUÇÃO Em muitos exemplos e exercícios realizados nos capítulos anteriores, não foram raras as vezes em que fizemos uso de elementos disponíveis

Leia mais

Linguagens de Programação

Linguagens de Programação Linguagens de Programação de Linguagens de Programação Bruno Lopes Bruno Lopes Linguagens de Programação 1 / 11 Propriedades desejáveis Legibilidade: A leitura do programa é facilmente compreendida? Redigibilidade:

Leia mais

Algoritmos: tipos de dados, variáveis e expressões

Algoritmos: tipos de dados, variáveis e expressões Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Algoritmos: tipos de dados, variáveis e expressões DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros

Leia mais

Prof. A. G. Silva. 28 de agosto de Prof. A. G. Silva INE5603 Introdução à POO 28 de agosto de / 1

Prof. A. G. Silva. 28 de agosto de Prof. A. G. Silva INE5603 Introdução à POO 28 de agosto de / 1 INE5603 Introdução à POO Prof. A. G. Silva 28 de agosto de 2017 Prof. A. G. Silva INE5603 Introdução à POO 28 de agosto de 2017 1 / 1 Comandos de decisão simples e compostas Objetivos: Utilização de controles

Leia mais

- Trabalho Prático de Algoritmos e Programação usando Robô Arduino -

- Trabalho Prático de Algoritmos e Programação usando Robô Arduino - Disciplina: Algoritmos e Programação Vale 1.5 para G2 Profa. Flavia Pereira de Carvalho - Trabalho Prático de Algoritmos e Programação usando Robô Arduino - Imagem do Robô com Legendas Dicas de código

Leia mais

INSTITUTO FEDERAL CATARINENSE Campus Ibirama

INSTITUTO FEDERAL CATARINENSE Campus Ibirama INSTITUTO FEDERAL CATARINENSE Campus Ibirama Estruturas de Decisão Professor Eduardo Stahnke Estruturas de Decisão As estruturas de decisão são utilizadas quando existe a necessidade de verificar condições

Leia mais

JavaScript (Elementos de Programação e Programação Básica)

JavaScript (Elementos de Programação e Programação Básica) Linguagem de Programação para Web JavaScript (Elementos de Programação e Programação Básica) Prof. Mauro Lopes 1 Objetivos Iniciaremos aqui o nosso estudo sobre a Linguagem de Programação JavaScript. Apresentaremos

Leia mais

Relatório de Construção do Robô de Seguidor de Linha

Relatório de Construção do Robô de Seguidor de Linha Relatório de Construção do Robô de Seguidor de Linha Categoria : Seguidor de Linha Nome da Equipe : Ruralinos Nome do Robô : Rural E Equipe : Filipe Rolim Cordeiro César Muniz Iury Adones João Lucas Marcos

Leia mais

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

Linguagem C++ Estruturas de controle Parte II Estruturas de repetição Fundamentos de Programação Linguagem C++ Estruturas de controle Parte II Estruturas de repetição Prof. Bruno E. G. Gomes IFRN 1 Estruturas de Controle Permitem o controle da sequência de execução de um

Leia mais

01/08/2011 PROGRAMAÇÃO EM LINGUAGEM C. Histórico

01/08/2011 PROGRAMAÇÃO EM LINGUAGEM C. Histórico PROGRAMAÇÃO EM LINGUAGEM C Prof. Stefano Histórico Estrutura de um programa Constantes e variáveis Declarações de Controle Exercícios 1 Prof. Stefano 2 Histórico A primeira linguagem de programação de

Leia mais

PROGRAMAÇÃO A. Estrutura Condicional

PROGRAMAÇÃO A. Estrutura Condicional PROGRAMAÇÃO A Estrutura Condicional INTRODUÇÃO Uma expressão condicional é uma expressão cujo valor pode ser falso ou verdadeiro. Em C, falso é representado por 0 e verdadeiro é representado por 1. Uma

Leia mais

Introdução a Programação

Introdução a Programação Introdução a Programação Prof. André Gustavo Duarte de Almeida andre.almeida@ifrn.edu.br docente.ifrn.edu.br/andrealmeida Aula 02 Primeiro Programa Roteiro Primeiros Passos Variáveis Expressões Comandos

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA OUTRAS ESTRUTURAS DE REPETIÇÃO Prof. Dr. Daniel Caetano 2013-1 Objetivos Conhecer outras estruturas de repetição da linguagem C/C++ Compreender o uso de cada uma delas

Leia mais

JAVA. Professor: Bruno Toledo

JAVA. Professor: Bruno Toledo JAVA Professor: Bruno Toledo Funcionamento de uma LP Em uma Linguagem de Programação (LP) como C e Pascal, temos o seguinte quadro quando vamos compilar um programa. Código fonte em c Teste.c Gera código

Leia mais

Universidade Federal de Minas Gerais Escola de Engenharia Departamento de Engenharia Eletrônica Laboratório de Informática Industrial

Universidade Federal de Minas Gerais Escola de Engenharia Departamento de Engenharia Eletrônica Laboratório de Informática Industrial Universidade Federal de Minas Gerais Escola de Engenharia Departamento de Engenharia Eletrônica Laboratório de Informática Industrial 9ª AULA - PROGRAMAÇÃO SOB A NORMA IEC 61131-3 (II): LINGUAGEM SFC Objetivos:

Leia mais

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

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Comandos de Decisão A maioria dos programas tomam decisões que afetam seu fluxo. Até agora, os programas eram totalmente sequenciais, ou seja, todos

Leia mais

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO 9º PERÍODO. Profª Danielle Casillo

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO 9º PERÍODO. Profª Danielle Casillo UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO 9º PERÍODO Profª Danielle Casillo Aula 06 - Linguagem Ladder 2 Foi a primeira que surgiu para programação dos Controladores Lógicos

Leia mais

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

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica. Computação L2 Linguagem C++ ovsj@cin.ufpe.br Observação: Material Baseado na Disciplina Computação Eletrônica. Alfabeto São os símbolos ( caracteres ) permitidos na linguagem: Letras (maiúsculas e minúsculas);

Leia mais

PRINCÍPIOS DA PROGRAMAÇÃO LEGO MINDSTORMS NXT

PRINCÍPIOS DA PROGRAMAÇÃO LEGO MINDSTORMS NXT PRINCÍPIOS DA PROGRAMAÇÃO LEGO MINDSTORMS NXT CONCEITOS PARA A PROGRAMAÇÃO O que é um robô O que é um pseudocódigo O que é um programa O que é o programa NXT-G Programando o Lego Mindstorms NXT com NXT-G

Leia mais

Linguagem de Programação

Linguagem de Programação Linguagem de Programação Operadores de Condição if() / else if() / else{} / switch() Gil Eduardo de Andrade Introdução Operadores de condição permitem, ao programador, efetuar testes que determinam quais

Leia mais

Linguagens de Programação

Linguagens de Programação Linguagens de Programação Fabio Mascarenhas - 2013.1 http://www.dcc.ufrj.br/~fabiom/lp Expressões condicionais Scala tem uma expressão if-else para expressar escolha entre alternativas que se parece muito

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa instruções de máquina.

Leia mais

Sistema Operacional Unidade 11.2 Shell Script: estruturas condicionais. QI ESCOLAS E FACULDADES Curso Técnico em Informática

Sistema Operacional Unidade 11.2 Shell Script: estruturas condicionais. QI ESCOLAS E FACULDADES Curso Técnico em Informática Sistema Operacional Unidade 11.2 Shell Script: estruturas condicionais Curso Técnico em Informática SUMÁRIO SHELL SCRIPT COM IF... 3 OPERADORES RELACIONAIS... 3 COMPARAÇÕES EM SCRIPTS... 3 MAIS OPERADORES...

Leia mais

Letreiro Digital. Modelo I7014B. Manual do Usuário

Letreiro Digital. Modelo I7014B. Manual do Usuário Letreiro Digital Modelo I7014B Índice Aplicativos... 1 Iniciando... 1 Ligar, Desligar e Hibernar... 2 Mensagens... 3 Ferramentas e Recursos... 3 Data/Hora... 5 Ferramentas e Recursos... 5 Agendamento...

Leia mais

Introdução a Programação de Jogos

Introdução a Programação de Jogos Introdução a Programação de Jogos Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa instruções

Leia mais

Aula 11: Desvios e Laços

Aula 11: Desvios e Laços Aula 11: Desvios e Laços Nesta aula explicaremos alguns comandos que podem alterar o fluxo dos seus programas em JavaScript. Você aprenderá a estrutura dos comandos de desvios e laços. Entenderá como funcionam

Leia mais

Aula 03 Introdução à Programação com a Linguagem Python

Aula 03 Introdução à Programação com a Linguagem Python Aula 03 Introdução à Programação com a Linguagem Python Gilberto Ribeiro de Queiroz Thales Sehn Körting Fabiano Morelli 26 de Março de 2018 Tópicos Tipo Lógico e Operadores Lógicos. Operadores Relacionais.

Leia mais

Processamento da informação. Prof. Fabrício Olivetti de França

Processamento da informação. Prof. Fabrício Olivetti de França Processamento da informação Prof. Fabrício Olivetti de França Média Ponderada Dados três números m, n, w, calcule a média de m e n ponderado por w. 1. [Aplique o peso] Faça w*m e (1-w)*n 2. [Soma] Some

Leia mais

Estruturas condicionais

Estruturas condicionais Estruturas condicionais David Déharbe 1 1 Objetivos da aula Revisar os primeiros elementos de linguagem C já vistos. Condicionais simples Condicionais compostas Operadores lógicos 2 2 Objetivos da aula

Leia mais

13 Operadores relacionais

13 Operadores relacionais 13 Operadores relacionais Os operadores relacionais permitam comparar valores (ou expressões) dos tipos: inteiro, real ou caracter devolvendo como resultado: verdadeiro (true) ou falso (false) E estes

Leia mais

Introdução à Linguagem C++

Introdução à Linguagem C++ Introdução à Linguagem C++ C++: Definição C++ C A Linguagem de Programação C++ pode ser definida como uma extensão da Linguagem C; Todo código de programação em Linguagem C pode a priori ser compilado

Leia mais

Operadores Lógicos e Relacionais Comandos condicionais (if-else) Casting AULA 04

Operadores Lógicos e Relacionais Comandos condicionais (if-else) Casting AULA 04 Introdução a Programação IF669 http://www.cin.ufpe.br/~if669 Operadores Lógicos e Relacionais Comandos condicionais (if-else) Casting AULA 04 Ricardo Massa F. Lima rmfl@cin.ufpe.br Sérgio C. B. Soares

Leia mais

AULA TEÓRICA 4. Tema 2. Introdução a programação em Java (Continuação) Tema 3. Instruções básicas de entrada e saída

AULA TEÓRICA 4. Tema 2. Introdução a programação em Java (Continuação) Tema 3. Instruções básicas de entrada e saída AULA TEÓRICA 4 Tema 2. Introdução a programação em Java (Continuação) Ø Expressões. Ø Operadores de incrementação e de decrementação unária de variáveis. Ø Classe Math. Ø Conversões de tipo. Ø Expressões

Leia mais

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Programação em C Variáveis e Expressões DCA0800 Algoritmos e Lógica de Programação Heitor Medeiros Florencio

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4 Algoritmos e Estruturas de Dados I (DCC/003) 2013/1 Estruturas Básicas Aula Tópico 4 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para

Leia mais

MC-102 Aula 02 Shell Interativa, Programa Básico, Variáveis, Atribuições, Tipos Simples. Instituto de Computação Unicamp

MC-102 Aula 02 Shell Interativa, Programa Básico, Variáveis, Atribuições, Tipos Simples. Instituto de Computação Unicamp MC-102 Aula 02 Shell Interativa, Programa Básico, Variáveis, Atribuições, Tipos Simples Instituto de Computação Unicamp 2016 Roteiro 1 Shell Interativa 2 Estrutura de um Programa em Python 3 Variáveis

Leia mais

Oficina de Python Prof. Me. José Carlos Perini

Oficina de Python Prof. Me. José Carlos Perini Oficina de Python Prof. Me. José Carlos Perini Prof. José Carlos Perini Formação em Análise de Sistemas Univ. S. Francisco Pós em Administração Universidade S. Francisco Mestrado em Ciência da Computação

Leia mais

Conceitos básicos de programação

Conceitos básicos de programação Constantes class Exemplo { static void Main() { float fahr, celsius; int lower, upper, step; lower = 0; /* limite inferior da tabela de temperaturas */ upper = 300; /* limite superior */ step = 20; /*

Leia mais

Puca Huachi Vaz Penna

Puca Huachi Vaz Penna Aula 3 C++: variáveis e expressões aritméticas 2017/1 BCC201 Introdução à Computação Turmas 61, 62, 63, 64, 65 e 66, 32 e 33 Puca Huachi Vaz Penna Departamento de Computação Universidade Federal de Ouro

Leia mais

Microcontroladores PROF. ME. HÉLIO ESPERIDIÃO

Microcontroladores PROF. ME. HÉLIO ESPERIDIÃO Microcontroladores PROF. ME. HÉLIO ESPERIDIÃO Microprocessador É um circuito integrado que contém milhares, ou mesmo milhões, de transistores. Os transistores trabalham juntos para armazenar e manipular

Leia mais

Algoritmos I Introdução a Algoritmos. Carlos de Salles Soares Neto Segundas e Quartas, 17h40 às 19h10

Algoritmos I Introdução a Algoritmos. Carlos de Salles Soares Neto Segundas e Quartas, 17h40 às 19h10 Algoritmos I Introdução a Algoritmos Carlos de Salles Soares Neto csalles@deinf.ufma.br Segundas e Quartas, 17h40 às 19h10 Sejam bem-vindos! Os celulares têm que ficar no silencioso ou desligados Não se

Leia mais

Noções de algoritmos - Aula 1

Noções de algoritmos - Aula 1 Noções de algoritmos - Aula 1 Departamento de Física UFPel Definição de algoritmo Sequência ordenada e finita de operações para a realização de uma tarefa. Tarefa: Experimento de Física I. Passo 1: Reunir

Leia mais

Questão 1 Analise o trecho do código abaixo, escrito na linguagem C#:

Questão 1 Analise o trecho do código abaixo, escrito na linguagem C#: Programação para Games I Questão 1 Analise o trecho do código abaixo, escrito na linguagem C#: String[] vetor= { E, A, Z, D, W }; for(int i=4; i

Leia mais

Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini

Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini Apresentação do Professor Professor: José Carlos Perini E-mail: jose.perini@metrocamp.edu.br Blog: http://profperini.com Formação

Leia mais

Comandos de desvio de fluxo. Expressões lógicas.

Comandos de desvio de fluxo. Expressões lógicas. Programação de Computadores I Universidade Federal de Ouro Preto Departamento de Ciência da Computação www.decom.ufop.br/bcc701 Semana 03: Comandos de desvio de fluxo. Expressões lógicas. Aula #7 22/03/2012

Leia mais

Linguagem de Programação I Prof. Tiago Eugenio de Melo.

Linguagem de Programação I Prof. Tiago Eugenio de Melo. Linguagem de Programação I Prof. Tiago Eugenio de Melo tmelo@uea.edu.br www.tiagodemelo.info 1 Sumário Introdução Conceitos preliminares Introdução Variáveis Comandos Condicionais 2 Por que aprender a

Leia mais

Arquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador;

Arquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador; 1 Microprocessador Um microprocessador é um circuito eletrônico capaz de realizar diversas tarefas conforme os comandos específicos. Para isso ele deve ler esses comandos da memória de programa (ROM) e

Leia mais

Programação II. Aula 3

Programação II. Aula 3 Programação II Aula 3 Algoritmo Algoritmo: REVISÃO qualquer procedimento bem definido que toma algum valor como entrada e produz algum valor como saída. Técnica de refinamentos sucessivos: dividir um processo

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2 Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas Aula Tópico 2 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para o compilador

Leia mais

Laboratório de Programação II

Laboratório de Programação II Laboratório de Programação II Aula 02 Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Na aula passada vimos... Na aula passada vimos... 01 Introdução à linguagem C;

Leia mais

Sumário. Ciência da Computação. Prof. Dr. Leandro Alves Neves. Aula 10. Algoritmos e Programação. Enquanto (Teste no início) Repeat (Teste no final)

Sumário. Ciência da Computação. Prof. Dr. Leandro Alves Neves. Aula 10. Algoritmos e Programação. Enquanto (Teste no início) Repeat (Teste no final) Algoritmos e Programação Informática II Ciência da Computação Prof. Dr. Leandro Alves Neves Aula 10 1 Sumário Estruturas de Controle de Fluxo q Repetição Enquanto (Teste no início) Repeat (Teste no final)

Leia mais

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

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática Programação 1 Prof. Osório Aula 05 Pag.: 1 UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática PROGRAMAÇÃO I AULA 05 Disciplina: Linguagem

Leia mais

Aula teórica 11. Tema 11. Repetição. Ciclo while Ciclo do-while Ciclo for

Aula teórica 11. Tema 11. Repetição. Ciclo while Ciclo do-while Ciclo for Tema 11. Repetição Ciclo while Ciclo do-while Ciclo for Aula teórica 11 Objectivos da aula: No final da aula estudante deve: Utilizar correctamente as instruções de repetição. Saber escolher entre as instruções

Leia mais

Oficina de Python Prof. Me. José Carlos Perini

Oficina de Python Prof. Me. José Carlos Perini Oficina de Python Prof. Me. José Carlos Perini Prof. José Carlos Perini Formação em Análise de Sistemas Univ. S. Francisco Pós em Administração Universidade S. Francisco Mestrado em Ciência da Computação

Leia mais

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

Modulo 4: while do while (limites de variáveis) PROGRAMAÇÃO DE COMPUTADORES V - TCC- 00.323 Modulo 4: while do while (limites de variáveis) Aura - Erick aconci@ic.uff.br, erickr@id.uff.br Roteiro Até aqui apreendemos as estruturas: If e If...else Switch

Leia mais

Fundamentos de Programação em Python

Fundamentos de Programação em Python Fundamentos de Programação em Python Diego Silveira Costa Nascimento Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte diego.nascimento@ifrn.edu.br 23 de junho de 2017 Ementa do

Leia mais

Introdução à Programação em C. Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI

Introdução à Programação em C. Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI Introdução à Programação em C Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI Linguagem C Criada em 1972 para uso no LINUX; Sintaxe base para diversas outras (Java, JavaScript, PHP, C++,

Leia mais

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza.

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza. Fundamentos de Programação Turma CI-240-EST Josiney de Souza josineys@inf.ufpr.br Agenda do Dia Aula 8 (30/09/15) Comentários sobre exercícios propostos Desvio condicional Simples Composto Exercícios Propostos

Leia mais

AULA TEÓRICA 3. Tema 2. Introdução a programação em Java (Continuação)

AULA TEÓRICA 3. Tema 2. Introdução a programação em Java (Continuação) AULA TEÓRICA 3 Tema 2. Introdução a programação em Java (Continuação) Ø Expressões. Ø Operadores de incrementação e de decrementação unária de variáveis. Ø Classe Math. Ø Conversões de tipo. Ø Expressões

Leia mais

Aula 6: Comandos Estruturados Estrutura Condicional

Aula 6: Comandos Estruturados Estrutura Condicional CI208 - Programação de Computadores Aula 6: Comandos Estruturados Estrutura Condicional Prof. MSc. Diego Roberto Antunes diegor@inf.ufpr.br www.inf.ufpr.br/diegor Universidade Federal do Paraná Setor de

Leia mais

Aula prática 4. Comandos de Desvio. Resumo. 1 Comandos de Desvio Condições mutuamente exclusivas... 2

Aula prática 4. Comandos de Desvio. Resumo. 1 Comandos de Desvio Condições mutuamente exclusivas... 2 Programação de Computadores I UFOP DECOM 2013 2 Aula prática 4 Comandos de Desvio Resumo Nesta aula você irá resolver problemas que requerem uma decisão com base em um teste, ou condição. Para implementar

Leia mais

LINGUAGEM C: COMANDOS DE CONTROLE CONDICIONAL

LINGUAGEM C: COMANDOS DE CONTROLE CONDICIONAL LINGUAGEM C: COMANDOS DE CONTROLE CONDICIONAL Prof. André Backes FLUXOGRAMAS Condição ou Decisão Representado por losangos Normalmente contém uma pergunta do tipo Sim/Não ou um teste de Verdadeiro/Falso.

Leia mais

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

ALGORITMO I ESTRUTURA DE CONTROLE DECISÃO SE / CASO; ALGORITMO I ESTRUTURA DE CONTROLE DECISÃO SE / CASO; Jaime Evaristo (http://professor.ic.ufal.br/jaime/) Slide 1 ESTRUTURA DE CONTROLE Operadores Relacionais Símbolo Significado LING. C = Igual == Diferente!=

Leia mais

Relatório da Aula Prática 10

Relatório da Aula Prática 10 Departamento de Electrónica, Telecomunicações e Informática Curso: [8240] Mestrado Integrado em Eng. de Computadores e Telemática Disciplina: [47137] Introdução à Eng. de Computadores e Telemática Ano

Leia mais

Organização de Computadores I

Organização de Computadores I Organização de Computadores I Aula 2 Material: Diego Passos http://www.ic.uff.br/~debora/orgcomp/pdf/parte2.pdf Organização de Computadores I Aula 2 1/29 Tópicos de Computação. de um Sistema de Computação..

Leia mais

Programação Aplicada à Engenharia

Programação Aplicada à Engenharia Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Programação Aplicada à Engenharia Aula 08: Comandos de repetição Silvio Fernandes 2009.1 1 Estrutura de repetição while Uma

Leia mais