Introdução a Linguagens de Programação

Slides:



Advertisements
Apresentações semelhantes
Introdução a Informática
Advertisements

Algoritmo e Programação
Pseudo-código: sintaxe
Arquitetura e organização de computadores.
Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres CT VII - Sala 32 Departamento de Informática Centro.
Entrada e Saída Introdução.
Linguagem de Montagem Visão geral.
ELEMENTOS DA INFORMÁTICA
Programação Aplicada Luiz Silveira Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Aula 02: Conceitos e tipos de linguagens.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Programação para Engenharia I
Unidades de Execução e de Controle Sistemas Digitais.
Introdução a conceitos e a prática de programação
Ferramentas Programação
Complexidade de Algoritmos
Linguagens de Programação
INTRODUÇÃO À COMPUTAÇÃO
Laboratório de Programação de Computadores I
Prof. Msc. Raul Paradeda Aula 2 Introdução
Como a matemática participa da informática?.
O Portal do Estudante de Computação
Técnicas de Programação I
PRC Bruno Correa.
Introdução a Programação
Professor Fernando Luís
PROGRAMA DE COMPUTADOR (software)
INTRODUÇÃ A COMPUTAÇÃO ENG. CIVIL
Revisão de Conceitos Básicos Hardware (Parte 1)
JAVA: Conceitos Iniciais
PROGRAMAÇÃO I UNIDADE 1.
Programação Avançada Prof. Natalia Castro Fernandes
Sistemas Operacionais
Introdução a Computação e Cálculo Numérico
Estrutura de dados, pseudocódigo
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 02: Introdução.
CADEIA DE CARACTERES (Strings)
PCI- Introdução à Computação
DESIGN E COMUNICAÇÃO MULTIMÉDIA 2011 / 2012 DESIGN E COMUNICAÇÃO MULTIMÉDIA 2011 / 2012 FORMADOR Gonçalo Miguel MÓDULO 25. Introdução ao ActionScript 3.0.
Definição A rigor, tudo o que pode ser armazenado eletronicamente pode ser chamado de software. Consideraremos aqui, como software, apenas os conjuntos.
Geração de Código aula-12-geração-de-código.pdf.
ALGORITMOS Intensivo Janeiro e Fevereiro de 2011
Algoritmos e Estrutura de Dados I Jean Carlo Mendes
Software Básico Nível ISA Capítulo 5 Mitsuo Takaki
© 2004 by Pearson Education Computadores: Ferramentas para a Era da Informação Tema 0 PARTE A.
3/4/2015 Prof. Msc George Cabral Bacharelado em Sistema de Informação Ambientes de Desenvolvimento de Software.
Introdução a Sistemas de Informação
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
Introdução à INFORMÁTICA
Igor Steinmacher, MSc. O maravilhoso mundo da Lógica de Programação.
Zeque - Grad. CC1 Sistemas Operacionais Curso de Ciência da Computação da UFPE Prof. José Queiroz - ZEQUE.
Microprocesadores x Microcontroladores
Algoritmos e Programação I
Fundamentos de linguagens de programação
Algoritmos e Programação MC102
Linguagens de Programação
Programação Computacional Aula 9: Meu primeiro programa em C
Algoritmos e Programação I
SISTEMAS DE INFORMAÇÃO
Programação II Prof.ª Claudia Boeres CT IX - Sala 201 Departamento de Informática Centro Tecnológico Universidade Federal do Espírito.
Curso Engenharia Química Modalidade Superior Instituto Federal do Sul de Minas, câmpus Pouso Alegre Professora Michelle Nery Programação de Computadores.
Introdução à Programação
Introdução à Computação
ARQUITETURA DE COMPUTADORES Nível do Conjunto de Instruções
MatLab (Matrix Laboratory)
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
LÓGICA DE PROGRAMAÇÃO Curso: Técnico em Informática Professor: Ronaldo Disciplina: Lógica de Programação.
Módulo I – Softwares: Linguagens de Programação Prof.: Rogério Morais.
PROGRAMAÇÃO DE COMPUTADORES Engenharia Unificado Prof. Leonardo Bacelar Lima Santos Departamento de Matemática
COMPILADORES 02 Prof. Marcos. COMPILADORES Do Programa à Execução Computadores das mais variadas arquiteturas têm funcionamento:
 Processamento de dados: requer a execução de uma série de passos, o programa (software)  Cada passo é uma instrução, ou ordem de comando, dada ao.
Transcrição da apresentação:

Introdução a Linguagens de Programação CURSO DE C - 2010 AULA 01: Introdução a Linguagens de Programação APRESENTAÇÃO: ANDERSON CALDAS

ORGANIZAÇÃO DO CURSO DE C / 2010 TÓPICOS ABORDADOS: TUTORES: Conceitos Expressões Fluxo Funções Vetores String Matrizes Estruturas Arquivo Anderson Caldas (anderson@lccv.ufal.br) Giancarlo Gusmão (giancarlogusmao@lccv.ufal.br) David Anderson (dacd@lccv.ufal.br) Michele Agra (micheleagra@lccv.ufal.br) Reberth Douglas (rdbc@lccv.ufal.br) DURAÇÃO ~ 2,5 MESES

1. QUAL A FUNÇÃO DO LCCV ? > No LCCV são desenvolvidas pesquisas que fazem a ligação entre a universidade e a indústria.

Por que é necessário aprender a programar ? 2. QUAL O PERFIL DO PROFISSIONAL DO LCCV ? > Profissional habilitado a desenvolver softwares ligados a sua área de pesquisa/especialização. > Profissional capacitado a lidar com simulações numéricas de problemas de engenharia. Por que é necessário aprender a programar ? Software específico “O LCCV desenvolve softwares não-comerciais”

3. SOFTWARE E HARDWARE ? Modelos de programação podem ser direcionados O hardware é a parte física do computador, ou seja, é o conjunto de componentes eletrônicos, circuitos integrados e placas, que se comunicam através de barramentos. Em complemento ao hardware, o software é a parte lógica, ou seja, o conjunto de instruções e dados processado pelos circuitos eletrônicos do hardware. Modelos de programação podem ser direcionados em função das características do hardware. Programação direcionada para clusters, processadores específicos e placas gráficas específicas. cluster Placa gráfica Processador DualCore

4. COMO FAZER UM PROGRAMA DE COMPUTADOR ? IDENTIFICAR O PROBLEMA A SER RESOLVIDO FORMULAR ANALITICAMENTE O PROBLEMA FORMULAR NUMERICAMENTE O PROBLEMA algoritmo GERAÇÃO DO PROGRAMA EXECUTÁVEL ESCREVER O PROGRAMA USANDO ALGUMA LINGUAGEM DE PROGRAMAÇÃO C/C++ CONVERTER O CÓDIGO PARA LINGUAGEM DE MÁQUINA Matlab compilador

5. O QUE É UM ALGORITMO ? Qual o melhor algoritmo ? Exemplo de > Um algoritmo é uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita. > O conceito de algoritmo é freqüentemente ilustrado pelo exemplo de uma receita, embora muitos algoritmos sejam mais complexos. Eles podem repetir passos (fazer iterações) ou necessitar de decisões (tais como comparações ou lógica) até que a tarefa seja completada. Um algoritmo corretamente executado não irá resolver um problema se estiver implementado incorretamente ou se não for apropriado ao problema REFERÊNCIA: Wikipédia http://pt.wikipedia.org/wiki/Algoritmo Esse algoritmo pode ser escrito utilizando diferentes linguagens de programação: C, C++, Java, Matlab, etc Algoritmo "SomaDeDoisValores"; variável: SOMA,A,B: inteiro; inicio Escreva("Digite um numero"); Leia(A); escreva("digite outro numero"); leia(B); Soma <- A + B; escreva(SOMA); fim. Qual o melhor algoritmo ? “Depende da finalidade do programa” Exemplo de algoritmo

6. O QUE É UMA LINGUAGEM DE PROGRAMAÇÃO ? Uma linguagem de programação é um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador. Uma linguagem permite que um programador especifique precisamente sobre quais dados um computador vai atuar, como estes dados serão armazenados ou transmitidos e quais ações devem ser tomadas sob várias circunstâncias.

6.1 LINGUAGEM DE PROGRAMAÇÃO C “Apesar de reconhecermos as dificuldades na aprendizagem da linguagem C, optamos por sua utilização neste curso simplesmente porque C é a linguagem básica da programação do UNIX, da Internet, do Windows, do Linux. “ Introdução à estrutura de dados, W. Celes e J. L. Rangel O conhecimento de linguagens de programação por si só não capacita programadores. É necessário saber usá-las de maneira eficiente. A linguagem C, assim como as linguagens Fortran e Pascal, são ditas linguagens “convencionais”, ela serve como base para praticamente todos os computadores em uso. Para programar em uma linguagem convencional, precisamos de alguma maneira especificar as áreas de memória em que os dados com que queremos trabalhar estão armazenados e, freqüentemente, considerar os endereços de memória em que os dados se situam, o que faz com que o processo de programação envolva detalhes adicionais. Em compensação, temos um maior controle da máquina quando utilizamos uma linguagem convencional, e podemos fazer programas melhores, ou seja, menores e mais rápidos.

6.1 LINGUAGEM DE PROGRAMAÇÃO C Um código em C deve sempre conter a função principal. int main (void) { float tc; float tf; /* mostra mensagem para usuario */ printf("Digite a temperatura em Celsius: "); /* captura valor entrado via teclado */ scanf("%f",&tc); /* faz a conversao */ tf = 1.8*tc+32; /* exibe resultado */ printf("A temperatura em Fahrenheit é: %f\n", tf); return 0; }

6.1 LINGUAGEM DE PROGRAMAÇÃO C /* Programa para conversão de temperatura */ #include <stdio.h> float converte (float c) { float f; f = 1.8*c + 32; return f; } int main (void) float tc; float tf; /* mostra mensagem para usuario */ printf("Digite a temperatura em Celsius: "); /* captura valor entrado via teclado */ scanf("%f",&tc); /* faz a conversao */ tf = 1.8*tc+32; /* exibe resultado */ printf("A temperatura em Fahrenheit é: %f\n", tf); return 0; Um programa em C, em geral, é constituído de diversas pequenas funções, que são independentes entre si – não podemos, por exemplo, definir uma função dentro de outra. Dois tipos de ambientes são caracterizados em um código C. O ambiente global, externo às funções, e os ambientes locais, definidos pelas diversas funções. Embora seja possível definir variáveis globais em qualquer parte do ambiente global (entre quaisquer funções), é prática comum defini-las no início do arquivo-fonte. Como regra geral, por razões de clareza e estruturação adequada do código, devemos evitar o uso indisciplinado de variáveis globais e resolver os problemas fazendo uso de variáveis locais sempre que possível.

6.1 LINGUAGEM DE PROGRAMAÇÃO C Um programa em C tem que, obrigatoriamente, conter a função principal (main). A execução de um programa começa pela função principal (a função main é automaticamente chamada quando o programa é carregado para a memória). As funções auxiliares são chamadas, direta ou indiretamente, a partir da função principal. Em C, como nas demais linguagens “convencionais”, devemos reservar área de memória para armazenar cada dado. Isto é feito através da declaração de variáveis, na qual informamos o tipo do dado que iremos armazenar naquela posição de memória Uma característica fundamental da linguagem C diz respeito ao tempo de vida e à visibilidade das variáveis. Uma variável (local) declarada dentro de uma função "vive" enquanto esta função está sendo executada, e nenhuma outra função tem acesso direto a esta variável. Outra característica das variáveis locais é que devem sempre ser explicitamente inicializadas antes de seu uso, caso contrário conterão “lixo”, isto é, valores indefinidos. Outra alternativa, é possível definir variáveis que sejam externas às funções, isto é, variáveis globais.

6.2 ARMAZENAMENTO DE DADOS NO COMPUTADOR A memória do computador é dividida em unidades de armazenamento chamadas bytes. Cada byte é composto por 8 bits, que podem armazenar os valores zero ou um. Nada além de zeros e uns pode ser armazenado na memória do computador. > Cada posição da memória (byte) tem um endereço único. Não é possível endereçar diretamente um bit. 10010 10100 1011010 0111 001 11010110010 1 byte = 8 bits Se só podemos armazenar números na memória do computador, como fazemos para armazenar um texto (um documento ou uma mensagem)? - Para ser possível armazenar uma seqüência de caracteres, que representa o texto, atribui-se a cada caractere um código numérico (por exemplo, pode-se associar ao caractere 'A' o código 65, ao caractere 'B' o código 66, e assim por diante). Se todos os caracteres tiverem códigos associados (inclusive os caracteres de pontuação e de formatação), podemos armazenar um texto na memória do computador como uma seqüência de códigos numéricos.

+ 7. LINGUAGEM INTERPRETADA OU COMPILADA ? Uma diferença importante entre as linguagens C e Matlab é que, via de regra, elas são implementadas de forma bastante diferente. Normalmente, Matlab é interpretada e C é compilada. Linguagem Interpretada Linguagem Compilada > Existe também as linguagens de programação híbridas: Linguagem Interpretada Linguagem Compilada +

8. COMPILAÇÃO DE PROGRAMAS EM C ? > Para desenvolvermos programas em uma linguagem como C, precisamos de: editor + compilador. ferramenta para edição do código fonte ferramenta para geração do código objeto Considerando um exemplo de código denominado calcula.c a seguinte linha de código deve ser executada para geração do executável. gcc –o prog.c prog.exe Isso resultará em um executável com o nome prog.exe no windows. E se houver mais arquivos-fonte ? Como devemos compilar ? Quais os problemas com o uso desse ciclo de desenvolvimento ? gcc –o prog.c converte.c prog.exe

9. O QUE É UMA IDE ? Este ciclo pode ser realizado usando programas (editor, compilador, ligador) separados ou empregando um “ambiente integrado de desenvolvimento” (integrated development environment, ou IDE). IDE é um programa que oferece janelas para a edição de programas e facilidades para abrir, fechar e salvar arquivos e para compilar, ligar e executar programas. Se um IDE estiver disponível, é possível criar e testar um programa, tudo em um mesmo ambiente, e todo o ciclo mencionado acima acontece de maneira mais confortável dentro de um mesmo ambiente, de preferência com uma interface amigável. Exemplo de IDE

9.1 Usando Visual Studio – Hello Word! Cria um novo projeto

Introdução à Linguagens de Programação CURSO DE C - 2010 FIM DA AULA 01: Introdução à Linguagens de Programação