Algoritmos e Programação

Documentos relacionados
Organização de Computadores

Organização de Computadores Software

Introdução a Programação

Laboratório de Programação 1 Algoritmos e a Lógica de Programação

Olá pessoal, Hoje vamos entender os conceitos sobre linguagem de programação. Definição, tipos de linguagens e as linguagens mais utilizadas

Programação de Computadores

Introdução à Computação: Máquinas Multiníveis

Programação de Computadores

Introdução à Computação

Algoritmos e Programação

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À PROGRAMAÇÃO DE COMPUTADORES

Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP. Aula 1 Introdução à Computação

Informática I. Aula 9. Aula 9-17/05/2006 1

Linguagens de Programação. Introdução. Carlos Bazilio

Programação Estruturada Aula - Introdução a Linguagem de Programação

Algoritmos e Programação

Algoritmos. Prof. Jonatas Bastos Site:

Conceitos de Linguagens de Programação - Características. Paavo Soeiro

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Capítulo 1 - Lógica e Algoritmos

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

Fundamentos de Programação 1

Paradigmas de Linguagem de Programação. Aspectos Básicos

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

I - CONCEITOS INICIAIS

Aula 08 Introdução à Algoritmos. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel

Programação I Apresentação

Desenvolvimento de Aplicações Desktop

Ederson Luiz da Silva Ciência da Computação. Algoritmos e Programação

Algoritmos e Técnicas. Lógica de Programação. É a técnica de encadear pensamento para atingir determinado objetivo.

Introdução à Lógica de Programação

INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO. ANÁLISE E DESENVOLVIMENTO DE SISTEMAS/PARANGABA PROF. MS. RONNISON REGES VIDAL Ceará, 01 de fevereiro de 2017

Capítulo 1 Conceitos Básicos

Aula 3 Máquina Multinível

Introdução à Computação MAC0110

Projeto de Algoritmos

3. Linguagem de Programação C

Linguagens de Programação

Introdução a Algoritmos (baseado no material do prof. Marcelo Linder)

Introdução à Programação Aula 03. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Aula 1 Java Prof. Dr. Sylvio Barbon Junior

Paradigmas de Linguagens

1 Introdução à Programação O que é? Para que serve?... 1

TÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE. Professora: Isabela C. Damke

Revisão: linguagens de programação

Introdução à Informática

Linguagens de Programação

FIC Introdução à Programação de Computadores

Fundamentos de Sistemas Operacionais

Aula Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios. Algoritmo e Programação. Prof.

É neste ponto que entra o conceito de lógica de programação.

ALGORITMOS. O que é Algoritmo? Algoritmo é um dos processo para criação

GFM015 Introdução à Computação

Aula 1 Algoritmo e Pseudo-código

Introdução à Algoritmos. Professora: Fabíola Gonçalves.

Fundamentos de Programação 1

LÓGICA DE PROGRAMAÇÃO 1

TCC 00308: Programação de Computadores I Introdução

Conceitos de Linguagens de Programação

Programação de Computadores:

Programação de Sistemas (Sistemas de Programação) Semana 10, Aula 17

Linguagens de Programação. Introdução. Carlos Bazilio

Algoritmos e Técnicas de Programação

#Conceituação. Algoritmos. Eliezio Soares

Transcrição:

Algoritmos e Programação Professor Marcus Vinícius Midena Ramos Colegiado de Engenharia de Computação (74)3614.1936 marcus.ramos@univasf.edu.br www.univasf.edu.br/~marcus.ramos

Objetivos: Desenvolver o raciocínio lógico e abstrato; Dominar o processo básico de desenvolvimento de programas; Compreender e saber usar o computador como ferramenta de produtividade pessoal e profissional, além dos aplicativos comerciais; Conseguir autonomia na organização e implementação de soluções mecanizadas para os seus próprios problemas.

Computador Ferramenta indispensável; Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução de problemas; Necessita ser instruído.

Computador Capaz apenas de excutar poucas tarefas básicas distintas, todas muito simples; É extremamente rápido; Possui um comportamento previsível; É excelente para reproduzir roteiros pré-concebidos; Não se cansa e pode ser usado à exaustão.

Computador = Hardware (corpo) + Software (alma) O corpo fornece suporte para a alma. O corpo procura suprir as necessidades da alma. O corpo pode criar novas possibilidades para a alma, ou então estabeldcer limitações. A alma se expressa através do corpo. A alma usa os recursos do corpo.

Computador Hardware: Parte física: placas, periféricos, circuitos, cabos e componentes. Quanto mais usado, mais propenso à falhas. Sozinho, não serve para nada. Vem pronto da fábrica.

Computador Software: Parte intangível: conhecimentos e idéias que fazem o hardware exibir um certo comportamento. Quanto mais usado, menos propenso à falhas. Confere funcionalidade ao hardware. Pode ser adquirido ou desenvolvido.

Software Comprar? Oferta; Soluções de prateleira, não personalizadas; Custo de aquisição; Vínculos (plataforma, localização, performance, funcionalidade etc.) Custo de personalização;

Software Desenvolver? Recursos próprios ou de terceiros (contratação). Custo de criação; Custo de manutenção; Conhecimento tecnológico; Personalização.

Nosso objetivo Desenvolver software Organização de idéias; Modelo de funcionamento do computador; Conceitos básicos de programação; Transcrição para linguagens apropriadas; Comunicação e interação com o computador; Obtenção dos resultados pretendidos; Prática em laboratório.

Desenvolver software Roteiro 1. Problema; 2. Solução; 3. Algoritmo; 4. Programa; 5. Resultados.

Problema Precisa ser conhecido em todos os seus aspectos; É necessário ter resposta para todas as perguntas que dele possam suscitar; É fundamental considerar todas as situações adversas; Nenhuma faceta deve ser omitida.

Solução Existe solução para o problema? Qual o custo da sua implementação? Qual o custo da sua execução? Como iremos representála?

Algoritmo Representação de uma solução para um problema, com algumas características: o Seqüência finita de etapas; o Individualmente, existe realização possível para cada uma das etapas consideradas; o Termina após um tempo finito.

Algoritmo Representação : o Linguagem natural; o Pseudocódigo (linguagem textual com poucos símbolos e regras, que são simples); o Fluxograma (linguagem visual composta por poucos símbolos e regras) Um algoritmo expressa uma solução para um problema.

Terminou?

Não!!!

Acontece que... Computadores não entendem (normalmente, ou pelo menos da forma como nós precisamos): Linguagens naturais; Pseudocódigos; Fluxogramas.

Precisamos ir além... Algoritmo! Não estou entendendo!!!!

O que o computador entende afinal?

Faça isso. Depois aquilo. Se OK, então pare, senão refaça tudo. 011010101100101011010101 000101010001011111101010 0100001011111010101100111 1111?????

Temos um problema de comunicação.

Solução?

Melhorar um pouco as coisas prá ele (computador) sem piorar tanto prá nós (humanos).

Escrever um programa de computador, a partir do algoritmo. Para isso, vamos usar uma linguagem de programação. Um pouco mais complexas do que as linguagens usadas para representar algoritmos; Mas mais fáceis de serem entendidas pelo computador.

Java? C? C++? Delphi? Pascal? HTML? Perl? Python? Ruby? Fortran? Assembly? PHP? Cobol? SQL? Lisp? Prolog? Java!! C!! C++!! Delphi!! Pascal!! HTML!! Perl!! Python!! Ruby!! Fortran!! Assembly!! PHP!! Cobol!! SQL!! Lisp!! Prolog!!

E...?

Sim, vamos precisar traduzir algoritmos para programas. Sim, precisaremos conhecer (pelo menos)duas linguagens. Sim, cometeremos erros nas traduções.

C est la vie... Eu não existo.

Como ficamos então?

Sua parte:

Parte do computador (com a sua supervisão...):

Deu errado? Não era bem isso que você queria?

Não tem problema. Volte à prancheta... E descubra onde está o erro.

Ciclo de desenvolvimento