SlideShare una empresa de Scribd logo
1 de 49
Linguagem de Programação Estruturada (C)
Prof. Ramon Mayor Martins , M.Sc. Eng.
mayor@linuxmail.org
Parte 1
São José – 2015 – 2
IES - Instituto de Ensino Superior da Grande Florianópolis
Linguagem de Programação Estruturada
PLANO DE ENSINO
CURSO: Ciência da Computação
SÉRIE: 2ª semestre
DISCIPLINA: Linguagem de Programação Estruturada
CARGA HORÁRIA SEMANAL: 4,5 horas-aula
CARGA HORÁRIA SEMESTRAL: 90 horas-aula
Linguagem de Programação Estruturada
PLANO DE ENSINO
I - EMENTA
• Conceitos básicos: compiladores, sistema operacional, organização de computadores.
• Representação interna dos tipos básicos.
• Ambientes de programação: edição, compilação, execução de programas.
• Declaração de tipos em linguagem procedural, declaração de constantes, comandos de entrada/saída,
comandos de atribuição, operadores aritméticos, operadores lógicos, operadores relacionais,
comandos condicionais, comandos de repetição, técnicas de rastreamento de programas.
• Vetores e variáveis estruturadas.
II – OBJETIVOS GERAIS
Desenvolver o raciocínio lógico aplicado à solução de problemas em nível computacional.
III – OBJETIVOS ESPECÍFICOS
A disciplina deve capacitar o aluno no uso de uma linguagem de programação como ferramenta de
programação na implementação de soluções que envolvam os elementos básicos da construção de
algoritmos e programas de computador, conforme abordado na disciplina Lógica de Programação e Algoritmos.
Linguagem de Programação Estruturada
PLANO DE ENSINO
IV – CONTEÚDO PROGRAMÁTICO
• MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
• MÓDULO 2: CONCEITO DE VARIÁVEL
• MÓDULO 3: ESTRUTURA SEQUENCIAL
• MÓDULO 4: ESTRUTURA CONDICIONAL
• MÓDULO 5: ESTRUTURA DE REPETIÇÃO
• MÓDULO 6: FUNÇÃO
• MÓDULO 7: VETORES
Linguagem de Programação Estruturada
PLANO DE ENSINO
V – ESTRATÉGIAS DE TRABALHO
Aulas expositivas e recursos audiovisuais.
VI – AVALIAÇÃO
Provas bimestrais e trabalhos práticos.
VII – MATERIAIS
Os materiais para consulta constarão no blog: www.classestopics.blogspot.com
Linguagem de Programação Estruturada
PLANO DE ENSINO
VII – BIBLIOGRAFIA
Básica
DEITEL, H. M. - C - Como Programar - Makron Books - 2011
JAMSA, Kris; Klander, Lars – Programando em C/C++ A Bíblia – Makron Books - 2002
SCHILDT, H. - C – Completo e Total – 3a ed. – Pearson/Makron Books - 2006
Linguagem de Programação Estruturada
PLANO DE ENSINO
VII – BIBLIOGRAFIA
Básica
DEITEL, H. M. - C - Como Programar - Makron Books - 2011
JAMSA, Kris; Klander, Lars – Programando em C/C++ A Bíblia – Makron Books - 2002
SCHILDT, H. - C – Completo e Total – 3a ed. – Pearson/Makron Books - 2006
Complementar
BACKES, André – Linguagem C Completa e descomplicada – Elsevier - 2012
DAMAS, Luís – Linguagem C – 10a ed. - LTC - 2007
FEOFILOFF, Paulo – Algoritmos em Linguagem C - Campus/Elsevier - 2008
MIZRAHI, Victorine – Treinamento em Linguagem C – 2a ed. - Prentice Hall - 2008
OLIVEIRA, Ulysses – Programando em C – Vol II – Ciência Moderna - 2010
Linguagem de Programação Estruturada
PLANO DE ENSINO
IV – CONTEÚDO PROGRAMÁTICO
• MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
• MÓDULO 2: CONCEITO DE VARIÁVEL
• MÓDULO 3: ESTRUTURA SEQUENCIAL
• MÓDULO 4: ESTRUTURA CONDICIONAL
• MÓDULO 5: ESTRUTURA DE REPETIÇÃO
• MÓDULO 6: FUNÇÃO
• MÓDULO 7: VETORES
Linguagem de Programação Estruturada
PLANO DE ENSINO
IV – CONTEÚDO PROGRAMÁTICO
• MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o 1.1 O que é Linguagem Estruturada
o 1.2 Introdução a Linguagem C
o 1.3 Comparação Linguagem C e outras Linguagens
o 1.4 Compiladores Linguagem C
o 1.5 Método para a construção de programas em C
o 1.6 Exemplos de Programas em C
• MÓDULO 2: CONCEITO DE VARIÁVEL
• MÓDULO 3: ESTRUTURA SEQUENCIAL
• MÓDULO 4: ESTRUTURA CONDICIONAL
• MÓDULO 5: ESTRUTURA DE REPETIÇÃO
• MÓDULO 6: FUNÇÃO
• MÓDULO 7: VETORES
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
• Em 1968, Edsger W. Dijkstra, através do artigo "A Case against the GO TO Statement"
critica o uso excessivo do comando de desvio incondicional GOTO nos programas desenvolvidos na época.
• Em 1972 , novamente Dijkstra, escreve sobre os conceitos da Programação Estruturada no
"Capítulo I- Notes on Structured Programming" do livro " Structured Programming“
• As Linguagens Estruturadas são tambem chamada de Linguagens Convencionais, Procedurais ou Imperativas
• Para a resolução de problemas relativamente mais simples e diretos, a programação estruturada
é muito eficiente.
1.1 O que é Linguagem Estruturada
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
• A programação estruturada é uma forma de programação de computadores que estabelece uma
disciplina de desenvolvimento de algoritmos, independentemente da sua complexidade e da
linguagem de programação na qual será codificado
• Facilita a compreensão da solução através de um número restrito de mecanismos de codificação.
• Mecanismos:
• Estruturas Básicas de Controle,
• Modularização,
• Tipos Abstratos de Dados
1.1 O que é Linguagem Estruturada
[Ref. Devmedia]
• 1.1.1 - Elementos Chaves da Programação Estruturada
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1)Estruturas Básicas de Controle
• sequência,
• condição
• repetição.
Controle Sequencial: o mais simples. Os comandos são escritos na seqüência, e assim são executados: A;B;C...
Controle de Decisão: Permitem especificar uma escolha entre comandos alternativos.
Exemplo: SE-SENAO-ENTAO Representação básica:
Controle de Iteração: permitem especificar repetição de certos comandos Exemplo: ENQUANTO
1.1 O que é Linguagem Estruturada
• 1.1.1 - Elementos Chaves da Programação Estruturada
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
2) Modularização
Subprogramas = blocos estruturados de códigos (procedimentos, funções ou módulos);
A comunicação entre os blocos se faz utilizando variáveis globais e pela passagem de dados através de
parâmetros;
Os dados são processados nos blocos e migram de um bloco para outro.
Ex: funções, bibliotecas.
3) Tipos Abstratos de Dados
Modelo matemático, acompanhado das operações definidas sobre o modelo
1.1 O que é Linguagem Estruturada
• 1.1.1 - Elementos Chaves da Programação Estruturada
Linguagem de Programação Estruturada
PLANO DE ENSINO
IV – CONTEÚDO PROGRAMÁTICO
• MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o 1.1 O que é Linguagem Estruturada
o 1.2 Introdução a Linguagem C
o 1.3 Comparação Linguagem C e outras Linguagens
o 1.4 Compiladores Linguagem C
o 1.5 Método para a construção de programas em C
o 1.6 Exemplos de Programas em C
• MÓDULO 2: CONCEITO DE VARIÁVEL
• MÓDULO 3: ESTRUTURA SEQUENCIAL
• MÓDULO 4: ESTRUTURA CONDICIONAL
• MÓDULO 5: ESTRUTURA DE REPETIÇÃO
• MÓDULO 6: FUNÇÃO
• MÓDULO 7: VETORES
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.2 Introdução a Linguagem C
Histórico:
• Desenvolvido por Dennis Ritchie e Ken Thompson entre 1969 e 1973 na AT&T Bell Labs.
• Criada para auxiliar no desenvolvimento do Sistema Operacional UNIX (com isso permitiu que fosse criado o
Primeiro sistema operacional implementado em uma linguagem diferente do Assembly)
• Possui características da Linguagem B (Baseada na Linguagem BCPL)
• No final dos anos 70, a Linguagem C começou a substituir a Linguagem BASIC como a linguagem de
Programação mais utilizada.
• Na década de 80 foi adaptada para uso no PC IBM – iniciando sua popularidade.
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.2 Introdução a Linguagem C
Histórico:
• Ainda na década de 80 , Bjarne Stroustrup e o Laboratório Bell trabalham no C++ , projeto para adicionar
recursos de programação orientada a objetos.
• A Linguagem C++ é utilizada na confecção do Windows, enquanto a C permanece popular no mundo UNIX
• No final dos anos 80, a linguagem C sofre uma padronização pela ANSI (Instituto Norte-americano de padrões)
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.2 Introdução a Linguagem C
Características:
• A Linguagem C é uma imperativa e procedural, para implementação de sistemas
• linguagem de nível médio, pois pode-se trabalhar em um nível próximo ao da máquina ou como uma
linguagem de alto nível como outras existentes.
• Compilável
• fornece acesso de baixo nível - (possível a inclusão de código Assembly no meio do programa C)
• Criada com o objetivo de facilitar a criação de programas extensos com menos erros
• Extremamente simples
• Possui funcionalidades como: funções matemáticas, manuseamento de arquivos, através
da inclusão de bibliotecas.
• Possui ponteiros, que dão maior flexibilidade à linguagem.
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.2 Introdução a Linguagem C
Características:
• Possui recursos de estruturas (Struct) que permitem que dados relacionados sejam combinados
e manipulados como um todo.
• Com o C podemos escrever programas concisos, organizados e de fácil entendimento
Outras Características:
-Portabilidade
-Embaracação
-Geração de códigos executáveis compactos e rápidos
-Facilidade de uso
-Linguagem estruturada
-Confiabilidade
-Simplicidade
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.2 Introdução a Linguagem C
Características:
Portabilidade: pode ser compilada em diferentes arquiteturas, seja de hardware ou de software.
É possível usar C no Mac ou PC, com Linux ou Windows.
Modularidade: um programa em C é dividido em vários blocos de programação distintos
Linguagem Imperativa: em C você usa funções que modificam o estado do programa.
Elas são divididas em blocos e você as chama diretamente.
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.2 Introdução a Linguagem C
Porque Linguagem C?
"Em outras palavras: a escolha de C é a única escolha sã. [...]
Eu cheguei à conclusão de que qualquer programador que preferiria que o projeto fosse feito em C++
ao invés de C provavelmente é um programador que eu quero longe,
assim ele não vem e estraga qualquer projeto em que eu esteja envolvido".
Linus Torvalds
C influenciou a maioria das linguagens mais utilizadas hoje em dia.
Por exemplo: Java, Javascript, Shell e PHP, por exemplo, além de todas as linguagens que são
C-*(C++, C#, Objective-C, etc).
Linguagem C está em tudo!
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.2 Introdução a Linguagem C
Aplicações:
Linguagem de Programação Estruturada
PLANO DE ENSINO
IV – CONTEÚDO PROGRAMÁTICO
• MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o 1.1 O que é Linguagem Estruturada
o 1.2 Introdução a Linguagem C
o 1.3 Comparação Linguagem C e outras Linguagens
o 1.4 Compiladores Linguagem C
o 1.5 Método para a construção de programas em C
o 1.6 Exemplos de Programas em C
• MÓDULO 2: CONCEITO DE VARIÁVEL
• MÓDULO 3: ESTRUTURA SEQUENCIAL
• MÓDULO 4: ESTRUTURA CONDICIONAL
• MÓDULO 5: ESTRUTURA DE REPETIÇÃO
• MÓDULO 6: FUNÇÃO
• MÓDULO 7: VETORES
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.3 Comparação Linguagem C e outras Linguagens
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.3 Comparação Linguagem C e outras Linguagens
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.3 Comparação Linguagem C e outras Linguagens
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.3 Comparação Linguagem C e outras Linguagens
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.3 Comparação Linguagem C e outras Linguagens
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.3 Comparação Linguagem C e outras Linguagens
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.3 Comparação Linguagem C e outras Linguagens
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.3 Comparação Linguagem C e outras Linguagens
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.3 Comparação Linguagem C e outras Linguagens
Linguagem de Programação Estruturada
PLANO DE ENSINO
IV – CONTEÚDO PROGRAMÁTICO
• MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o 1.1 O que é Linguagem Estruturada
o 1.2 Introdução a Linguagem C
o 1.3 Comparação Linguagem C e outras Linguagens
o 1.4 Compiladores Linguagem C
o 1.5 Método para a construção de programas em C
o 1.6 Exemplos de Programas em C
• MÓDULO 2: CONCEITO DE VARIÁVEL
• MÓDULO 3: ESTRUTURA SEQUENCIAL
• MÓDULO 4: ESTRUTURA CONDICIONAL
• MÓDULO 5: ESTRUTURA DE REPETIÇÃO
• MÓDULO 6: FUNÇÃO
• MÓDULO 7: VETORES
Linguagem de Programação Estruturada
PLANO DE ENSINO
Compiladores
É um grupo de programas que de posse de um codigo fonte escrito em uma linguagem de alto ou médio nível
traduz para uma linguagem de baixo nível (Assembly, código de máquina).
O primeiro compilador foi escrito por Grace Hopper em 1952, para a linguagem de programação A-0 para o
UNIVAC (o primeiro computador).
Linguagem de Programação Estruturada
PLANO DE ENSINO
Diferença entre Compilador e Interpretador:
O interpretador ao contrário do compilador roda o código-fonte escrito como sendo o código objeto,
ele traduz o programa linha a linha, o programa vai sendo utilizado na medida em que vai sendo traduzido.
Cada execução do programa precisa ser novamente traduzido e interpretado.
Vantagens e Desvantagens:
Compilador:
-Processo de correção ou alteração do código requer que ele seja novamente recompilado.
-O código compilado é mais rápido de ser acessado;
-Compila o código somente se estiver sem erros
Interpretador:
-Correções e alterações são mais rápidas de serem realizadas;
-Código não precisa ser compilado para ser executado;
-Consomem menos memória
-Execução é mais lenta
-Necessita sempre ser lido o código original para ser executado;
Linguagem de Programação Estruturada
PLANO DE ENSINO
Diferença entre Compilador e Interpretador:
O interpretador ao contrário do compilador roda o código-fonte escrito como sendo o código objeto,
ele traduz o programa linha a linha, o programa vai sendo utilizado na medida em que vai sendo traduzido.
Cada execução do programa precisa ser novamente traduzido e interpretado.
Vantagens e Desvantagens:
Compilador:
-Processo de correção ou alteração do código requer que ele seja novamente recompilado.
-O código compilado é mais rápido de ser acessado;
-Compila o código somente se estiver sem erros
Interpretador:
-Correções e alterações são mais rápidas de serem realizadas;
-Código não precisa ser compilado para ser executado;
-Consomem menos memória
-Execução é mais lenta
-Necessita sempre ser lido o código original para ser executado;
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.4 Compiladores Linguagem C
Nome Gratuito Descrição
GCC sim
Compilador utilizado pelo projeto
GNU.
É padrão ANSI C e nativo do
sistema Linux,.
Não é preciso instalar
compiladores de terceiros.
Seu único problema é a falta de
uma interface, que prejudica
quem é principiante na
linguaguem
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.4 Compiladores Linguagem C
Nome Gratuito Descrição
Code Blocks sim
Code :: Blocks é uma
ferramenta livre C, C ++ e
Fortran IDE
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.4 Compiladores Linguagem C
Nome Gratuito Descrição
Dev-C++ sim
Criado pela Bloodshed,
Tem suporte a projeto
Apesar de compilar a linguagem C, seu
código é escrito em um código
totalmente diferente - o Delphi!
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.4 Compiladores Linguagem C
Nome Gratuito Descrição
C++ Builder não
O C++ Builder é um dos melhores compiladores
que tem, com possibilidade de criação de
projetos extensos.
Desenvolvido pela Borland
Ele segue o padrão ISO ou ANSI C, mas também
tem muitas bibliotecas não padrão, fazendo
muitas vezes com que o programa perca a
portabilidade e o código escrito no C++ Builder
não rode em outros compiladores, mesmo que a
linguagem C seja a mesma.
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.4 Compiladores Linguagem C
Nome Gratuito Descrição
Visual C++ não
O visual C++ é um compilador
profissional da Microsoft que compõe
o pacote Visual Studio, com vários
recursos, como incremento de código,
depurador de erros avançado e outras
ferramentas que aumentam a
produtividade do programador. O
problema é que por ser da Microsoft
tem o preço elevado e só compensará
se você for usar esta linguagem para
desenvolvimento profissional em
aplicações Windows. Tem uma versão
trial no site oficial
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.4 Compiladores Linguagem C
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
1.4 Compiladores Linguagem C
Linguagem de Programação Estruturada
PLANO DE ENSINO
APARATO EXPERIMENTAL
Software
DEV C++ : http://www.bloodshed.net/devcpp.html
Como instalar? http://chortle.ccsu.edu/bloodshed/howtogl.html
Referências na Web
CPPReference.com : http://en.cppreference.com/w/
Cplusplus.com : http://www.cplusplus.com/reference/
Cprogramming.com : http://www.cprogramming.com/tutorial/c++-tutorial.html
Linguagem de Programação Estruturada
PLANO DE ENSINO
IV – CONTEÚDO PROGRAMÁTICO
• MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o 1.1 O que é Linguagem Estruturada
o 1.2 Introdução a Linguagem C
o 1.3 Comparação Linguagem C e outras Linguagens
o 1.4 Compiladores Linguagem C
o 1.5 Método para a construção de programas em C
o 1.6 Exemplos de Programas em C
• MÓDULO 2: CONCEITO DE VARIÁVEL
• MÓDULO 3: ESTRUTURA SEQUENCIAL
• MÓDULO 4: ESTRUTURA CONDICIONAL
• MÓDULO 5: ESTRUTURA DE REPETIÇÃO
• MÓDULO 6: FUNÇÃO
• MÓDULO 7: VETORES
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o 1.5 Método para a construção de programas em C
Linguagem de Programação Estruturada
PLANO DE ENSINO
IV – CONTEÚDO PROGRAMÁTICO
• MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o 1.1 O que é Linguagem Estruturada
o 1.2 Introdução a Linguagem C
o 1.3 Comparação Linguagem C e outras Linguagens
o 1.4 Compiladores Linguagem C
o 1.5 Método para a construção de programas em C
o 1.6 Exemplos de Programas em C
• MÓDULO 2: CONCEITO DE VARIÁVEL
• MÓDULO 3: ESTRUTURA SEQUENCIAL
• MÓDULO 4: ESTRUTURA CONDICIONAL
• MÓDULO 5: ESTRUTURA DE REPETIÇÃO
• MÓDULO 6: FUNÇÃO
• MÓDULO 7: VETORES
Linguagem de Programação Estruturada
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o 1.5 Método para a construção de programas em C
//CODIGO 1.1 - Hello World
#include <stdio.h>
int main(void)
{
printf("Hello World");
return 0;
}
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o 1.5 Método para a construção de programas em C
//CODIGO 1.1 - Hello World
#include <stdio.h>
int main(void)
{
printf("Hello World");
return 0;
}
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o 1.5 Método para a construção de programas em C
//CODIGO 1.1 - Hello World
#include <stdio.h>
int main(void)
{
printf("Hello World");
return 0;
}

Más contenido relacionado

La actualidad más candente

Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09essa
 
Técnicas_Implementação
Técnicas_ImplementaçãoTécnicas_Implementação
Técnicas_ImplementaçãoWagner Zaparoli
 
Paradigmas de Linguagens de Programação - Introdução
Paradigmas de Linguagens de Programação - IntroduçãoParadigmas de Linguagens de Programação - Introdução
Paradigmas de Linguagens de Programação - IntroduçãoAdriano Teixeira de Souza
 
Linguagens de Programação
Linguagens de ProgramaçãoLinguagens de Programação
Linguagens de Programação12anogolega
 
Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação Marcos Gregorio
 
Plp aula-01-apresentação
Plp aula-01-apresentaçãoPlp aula-01-apresentação
Plp aula-01-apresentaçãoJosé Meirelles
 
Plp aula-02-critérios de avaliação
Plp aula-02-critérios de avaliaçãoPlp aula-02-critérios de avaliação
Plp aula-02-critérios de avaliaçãoJosé Meirelles
 
Introdução a Linguagem de Programação
Introdução a Linguagem de ProgramaçãoIntrodução a Linguagem de Programação
Introdução a Linguagem de ProgramaçãoJessica Ribeiro
 
Conceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de ProgramaçãoConceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de ProgramaçãoSidney Roberto
 
Paradigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - ClassificaçõesParadigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - ClassificaçõesAdriano Teixeira de Souza
 

La actualidad más candente (16)

C 04 linguagem_de_programacao
C 04 linguagem_de_programacaoC 04 linguagem_de_programacao
C 04 linguagem_de_programacao
 
Linguagens de programação
Linguagens de programaçãoLinguagens de programação
Linguagens de programação
 
Linguagem da programação
Linguagem da programaçãoLinguagem da programação
Linguagem da programação
 
Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09
 
Técnicas_Implementação
Técnicas_ImplementaçãoTécnicas_Implementação
Técnicas_Implementação
 
Paradigmas de Linguagens de Programação - Introdução
Paradigmas de Linguagens de Programação - IntroduçãoParadigmas de Linguagens de Programação - Introdução
Paradigmas de Linguagens de Programação - Introdução
 
Linguagens de Programação
Linguagens de ProgramaçãoLinguagens de Programação
Linguagens de Programação
 
Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação
 
Linguagens de programação
Linguagens de programaçãoLinguagens de programação
Linguagens de programação
 
02 historia da programação
02   historia da programação02   historia da programação
02 historia da programação
 
Plp aula-01-apresentação
Plp aula-01-apresentaçãoPlp aula-01-apresentação
Plp aula-01-apresentação
 
Apostila de dev
Apostila de devApostila de dev
Apostila de dev
 
Plp aula-02-critérios de avaliação
Plp aula-02-critérios de avaliaçãoPlp aula-02-critérios de avaliação
Plp aula-02-critérios de avaliação
 
Introdução a Linguagem de Programação
Introdução a Linguagem de ProgramaçãoIntrodução a Linguagem de Programação
Introdução a Linguagem de Programação
 
Conceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de ProgramaçãoConceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de Programação
 
Paradigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - ClassificaçõesParadigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - Classificações
 

Destacado

Linguagem de Programação II - Plano de Ensino
Linguagem de Programação II - Plano de EnsinoLinguagem de Programação II - Plano de Ensino
Linguagem de Programação II - Plano de EnsinoDaniel Arndt Alves
 
ICC - Aula 05 - Estrutura de controle, sequencial e condicional
ICC - Aula 05 - Estrutura de controle, sequencial e condicionalICC - Aula 05 - Estrutura de controle, sequencial e condicional
ICC - Aula 05 - Estrutura de controle, sequencial e condicionalFelipe J. R. Vieira
 
Aula 01 introdução e conceitos
Aula 01   introdução e conceitosAula 01   introdução e conceitos
Aula 01 introdução e conceitosRoitier Gonçalves
 
Aula 03 generalização e especialização
Aula 03   generalização e especializaçãoAula 03   generalização e especialização
Aula 03 generalização e especializaçãoRoitier Gonçalves
 
Aula 5 - Dicionário de Dados
Aula 5 - Dicionário de DadosAula 5 - Dicionário de Dados
Aula 5 - Dicionário de DadosJanynne Gomes
 
Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Karoline Tavares
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem Capolllorj
 
Diagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados IDiagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados IDjonathas Cardoso
 

Destacado (13)

Programação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a ObjetosProgramação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a Objetos
 
Linguagem de Programação II - Plano de Ensino
Linguagem de Programação II - Plano de EnsinoLinguagem de Programação II - Plano de Ensino
Linguagem de Programação II - Plano de Ensino
 
C++ Funções
 C++ Funções C++ Funções
C++ Funções
 
ICC - Aula 05 - Estrutura de controle, sequencial e condicional
ICC - Aula 05 - Estrutura de controle, sequencial e condicionalICC - Aula 05 - Estrutura de controle, sequencial e condicional
ICC - Aula 05 - Estrutura de controle, sequencial e condicional
 
Aula 02 mer
Aula 02   merAula 02   mer
Aula 02 mer
 
Aula 01 introdução e conceitos
Aula 01   introdução e conceitosAula 01   introdução e conceitos
Aula 01 introdução e conceitos
 
Aula 04 dicionario de dados
Aula 04   dicionario de dadosAula 04   dicionario de dados
Aula 04 dicionario de dados
 
Aula 03 generalização e especialização
Aula 03   generalização e especializaçãoAula 03   generalização e especialização
Aula 03 generalização e especialização
 
Aula 5 - Dicionário de Dados
Aula 5 - Dicionário de DadosAula 5 - Dicionário de Dados
Aula 5 - Dicionário de Dados
 
Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros
 
Linguagem C - Funções
Linguagem C - FunçõesLinguagem C - Funções
Linguagem C - Funções
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
 
Diagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados IDiagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados I
 

Similar a Programação C

Similar a Programação C (20)

Linguagem c
Linguagem cLinguagem c
Linguagem c
 
Mini Curso de C
Mini Curso de CMini Curso de C
Mini Curso de C
 
Linguagem c
Linguagem cLinguagem c
Linguagem c
 
Apostila c
Apostila cApostila c
Apostila c
 
Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09
 
Apostila de devc++ novo
Apostila de devc++ novoApostila de devc++ novo
Apostila de devc++ novo
 
Apostila de dev
Apostila de devApostila de dev
Apostila de dev
 
apostila de dev.pdf
apostila de dev.pdfapostila de dev.pdf
apostila de dev.pdf
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
 
Apostila de dev
Apostila de devApostila de dev
Apostila de dev
 
Linguagem C Entendendo a Programação
Linguagem C Entendendo a ProgramaçãoLinguagem C Entendendo a Programação
Linguagem C Entendendo a Programação
 
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro  -estruturas_de_dados_e_algoritmos_em_c.erivanildoLivro  -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
 
Aula 1 pc - slides
Aula 1   pc - slidesAula 1   pc - slides
Aula 1 pc - slides
 
paradigmasdlsksmmskskkekekekekedmmmdmdmmf.pdf
paradigmasdlsksmmskskkekekekekedmmmdmdmmf.pdfparadigmasdlsksmmskskkekekekekedmmmdmdmmf.pdf
paradigmasdlsksmmskskkekekekekedmmmdmdmmf.pdf
 
Apostila chardwere
Apostila chardwereApostila chardwere
Apostila chardwere
 
silo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdf
silo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdfsilo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdf
silo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdf
 
Noções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores DigitaisNoções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores Digitais
 
LP002 - AULA 1.potx
LP002 - AULA 1.potxLP002 - AULA 1.potx
LP002 - AULA 1.potx
 
LP003 - AULA 2.potx
LP003 - AULA 2.potxLP003 - AULA 2.potx
LP003 - AULA 2.potx
 
aula03-introprogy.pptx
aula03-introprogy.pptxaula03-introprogy.pptx
aula03-introprogy.pptx
 

Más de Ramon Mayor Martins

IES GF Circuitos Digitais Parte 3
IES GF Circuitos Digitais Parte 3IES GF Circuitos Digitais Parte 3
IES GF Circuitos Digitais Parte 3Ramon Mayor Martins
 
IES GF - Linguagem de Programação Estruturada - Parte 3
IES GF - Linguagem de Programação Estruturada - Parte 3 IES GF - Linguagem de Programação Estruturada - Parte 3
IES GF - Linguagem de Programação Estruturada - Parte 3 Ramon Mayor Martins
 
IES GF - Linguagem de Programação Estruturada - Parte 2
IES GF - Linguagem de Programação Estruturada - Parte 2IES GF - Linguagem de Programação Estruturada - Parte 2
IES GF - Linguagem de Programação Estruturada - Parte 2Ramon Mayor Martins
 
IES GF - Circuitos Digitais - Parte 2
IES GF - Circuitos Digitais - Parte 2IES GF - Circuitos Digitais - Parte 2
IES GF - Circuitos Digitais - Parte 2Ramon Mayor Martins
 
IES GF - Circuitos Digitais - Parte 1
IES GF - Circuitos Digitais - Parte 1IES GF - Circuitos Digitais - Parte 1
IES GF - Circuitos Digitais - Parte 1Ramon Mayor Martins
 
IFSC SJ - Grupo de estudos em rádio definido por software
IFSC SJ - Grupo de estudos em rádio definido por softwareIFSC SJ - Grupo de estudos em rádio definido por software
IFSC SJ - Grupo de estudos em rádio definido por softwareRamon Mayor Martins
 
IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...
IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...
IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...Ramon Mayor Martins
 
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...Ramon Mayor Martins
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosRamon Mayor Martins
 
Nova geração de satélites brasileiros
Nova geração de satélites brasileirosNova geração de satélites brasileiros
Nova geração de satélites brasileirosRamon Mayor Martins
 
[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...
[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...
[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...Ramon Mayor Martins
 
Implementação da técnica VTLN - Estudo dos métodos
Implementação da técnica VTLN - Estudo dos métodosImplementação da técnica VTLN - Estudo dos métodos
Implementação da técnica VTLN - Estudo dos métodosRamon Mayor Martins
 
Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...
Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...
Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...Ramon Mayor Martins
 
Aplicações de Inteligência Artificial em Rádios Cognitivos
Aplicações de Inteligência Artificial em Rádios CognitivosAplicações de Inteligência Artificial em Rádios Cognitivos
Aplicações de Inteligência Artificial em Rádios CognitivosRamon Mayor Martins
 
Redes Neurais - Poda Hessiana: Optimal Brain Surgeon e Damage
Redes Neurais - Poda Hessiana: Optimal Brain Surgeon e DamageRedes Neurais - Poda Hessiana: Optimal Brain Surgeon e Damage
Redes Neurais - Poda Hessiana: Optimal Brain Surgeon e DamageRamon Mayor Martins
 

Más de Ramon Mayor Martins (20)

[2.2]ifsc integrado rdt_2015_1
[2.2]ifsc integrado rdt_2015_1[2.2]ifsc integrado rdt_2015_1
[2.2]ifsc integrado rdt_2015_1
 
[1]ifsc integrado rdt_2015_2
[1]ifsc integrado rdt_2015_2[1]ifsc integrado rdt_2015_2
[1]ifsc integrado rdt_2015_2
 
IES GF Circuitos Digitais Parte 3
IES GF Circuitos Digitais Parte 3IES GF Circuitos Digitais Parte 3
IES GF Circuitos Digitais Parte 3
 
IES GF - Linguagem de Programação Estruturada - Parte 3
IES GF - Linguagem de Programação Estruturada - Parte 3 IES GF - Linguagem de Programação Estruturada - Parte 3
IES GF - Linguagem de Programação Estruturada - Parte 3
 
IES GF - Linguagem de Programação Estruturada - Parte 2
IES GF - Linguagem de Programação Estruturada - Parte 2IES GF - Linguagem de Programação Estruturada - Parte 2
IES GF - Linguagem de Programação Estruturada - Parte 2
 
IES GF - Circuitos Digitais - Parte 2
IES GF - Circuitos Digitais - Parte 2IES GF - Circuitos Digitais - Parte 2
IES GF - Circuitos Digitais - Parte 2
 
IES GF - Circuitos Digitais - Parte 1
IES GF - Circuitos Digitais - Parte 1IES GF - Circuitos Digitais - Parte 1
IES GF - Circuitos Digitais - Parte 1
 
IFSC SJ - Grupo de estudos em rádio definido por software
IFSC SJ - Grupo de estudos em rádio definido por softwareIFSC SJ - Grupo de estudos em rádio definido por software
IFSC SJ - Grupo de estudos em rádio definido por software
 
IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...
IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...
IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...
 
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
 
INATEL - Matlab introdução
INATEL - Matlab introduçãoINATEL - Matlab introdução
INATEL - Matlab introdução
 
Introdução ao matlab
Introdução ao matlabIntrodução ao matlab
Introdução ao matlab
 
Nova geração de satélites brasileiros
Nova geração de satélites brasileirosNova geração de satélites brasileiros
Nova geração de satélites brasileiros
 
[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...
[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...
[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...
 
Implementação da técnica VTLN - Estudo dos métodos
Implementação da técnica VTLN - Estudo dos métodosImplementação da técnica VTLN - Estudo dos métodos
Implementação da técnica VTLN - Estudo dos métodos
 
Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...
Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...
Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...
 
Aplicações de Inteligência Artificial em Rádios Cognitivos
Aplicações de Inteligência Artificial em Rádios CognitivosAplicações de Inteligência Artificial em Rádios Cognitivos
Aplicações de Inteligência Artificial em Rádios Cognitivos
 
Redes Neurais - Poda Hessiana: Optimal Brain Surgeon e Damage
Redes Neurais - Poda Hessiana: Optimal Brain Surgeon e DamageRedes Neurais - Poda Hessiana: Optimal Brain Surgeon e Damage
Redes Neurais - Poda Hessiana: Optimal Brain Surgeon e Damage
 
Redes Oportunistas: Haggle
Redes Oportunistas: HaggleRedes Oportunistas: Haggle
Redes Oportunistas: Haggle
 

Programação C

  • 1. Linguagem de Programação Estruturada (C) Prof. Ramon Mayor Martins , M.Sc. Eng. mayor@linuxmail.org Parte 1 São José – 2015 – 2 IES - Instituto de Ensino Superior da Grande Florianópolis
  • 2. Linguagem de Programação Estruturada PLANO DE ENSINO CURSO: Ciência da Computação SÉRIE: 2ª semestre DISCIPLINA: Linguagem de Programação Estruturada CARGA HORÁRIA SEMANAL: 4,5 horas-aula CARGA HORÁRIA SEMESTRAL: 90 horas-aula
  • 3. Linguagem de Programação Estruturada PLANO DE ENSINO I - EMENTA • Conceitos básicos: compiladores, sistema operacional, organização de computadores. • Representação interna dos tipos básicos. • Ambientes de programação: edição, compilação, execução de programas. • Declaração de tipos em linguagem procedural, declaração de constantes, comandos de entrada/saída, comandos de atribuição, operadores aritméticos, operadores lógicos, operadores relacionais, comandos condicionais, comandos de repetição, técnicas de rastreamento de programas. • Vetores e variáveis estruturadas. II – OBJETIVOS GERAIS Desenvolver o raciocínio lógico aplicado à solução de problemas em nível computacional. III – OBJETIVOS ESPECÍFICOS A disciplina deve capacitar o aluno no uso de uma linguagem de programação como ferramenta de programação na implementação de soluções que envolvam os elementos básicos da construção de algoritmos e programas de computador, conforme abordado na disciplina Lógica de Programação e Algoritmos.
  • 4. Linguagem de Programação Estruturada PLANO DE ENSINO IV – CONTEÚDO PROGRAMÁTICO • MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C • MÓDULO 2: CONCEITO DE VARIÁVEL • MÓDULO 3: ESTRUTURA SEQUENCIAL • MÓDULO 4: ESTRUTURA CONDICIONAL • MÓDULO 5: ESTRUTURA DE REPETIÇÃO • MÓDULO 6: FUNÇÃO • MÓDULO 7: VETORES
  • 5. Linguagem de Programação Estruturada PLANO DE ENSINO V – ESTRATÉGIAS DE TRABALHO Aulas expositivas e recursos audiovisuais. VI – AVALIAÇÃO Provas bimestrais e trabalhos práticos. VII – MATERIAIS Os materiais para consulta constarão no blog: www.classestopics.blogspot.com
  • 6. Linguagem de Programação Estruturada PLANO DE ENSINO VII – BIBLIOGRAFIA Básica DEITEL, H. M. - C - Como Programar - Makron Books - 2011 JAMSA, Kris; Klander, Lars – Programando em C/C++ A Bíblia – Makron Books - 2002 SCHILDT, H. - C – Completo e Total – 3a ed. – Pearson/Makron Books - 2006
  • 7. Linguagem de Programação Estruturada PLANO DE ENSINO VII – BIBLIOGRAFIA Básica DEITEL, H. M. - C - Como Programar - Makron Books - 2011 JAMSA, Kris; Klander, Lars – Programando em C/C++ A Bíblia – Makron Books - 2002 SCHILDT, H. - C – Completo e Total – 3a ed. – Pearson/Makron Books - 2006 Complementar BACKES, André – Linguagem C Completa e descomplicada – Elsevier - 2012 DAMAS, Luís – Linguagem C – 10a ed. - LTC - 2007 FEOFILOFF, Paulo – Algoritmos em Linguagem C - Campus/Elsevier - 2008 MIZRAHI, Victorine – Treinamento em Linguagem C – 2a ed. - Prentice Hall - 2008 OLIVEIRA, Ulysses – Programando em C – Vol II – Ciência Moderna - 2010
  • 8. Linguagem de Programação Estruturada PLANO DE ENSINO IV – CONTEÚDO PROGRAMÁTICO • MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C • MÓDULO 2: CONCEITO DE VARIÁVEL • MÓDULO 3: ESTRUTURA SEQUENCIAL • MÓDULO 4: ESTRUTURA CONDICIONAL • MÓDULO 5: ESTRUTURA DE REPETIÇÃO • MÓDULO 6: FUNÇÃO • MÓDULO 7: VETORES
  • 9. Linguagem de Programação Estruturada PLANO DE ENSINO IV – CONTEÚDO PROGRAMÁTICO • MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C o 1.1 O que é Linguagem Estruturada o 1.2 Introdução a Linguagem C o 1.3 Comparação Linguagem C e outras Linguagens o 1.4 Compiladores Linguagem C o 1.5 Método para a construção de programas em C o 1.6 Exemplos de Programas em C • MÓDULO 2: CONCEITO DE VARIÁVEL • MÓDULO 3: ESTRUTURA SEQUENCIAL • MÓDULO 4: ESTRUTURA CONDICIONAL • MÓDULO 5: ESTRUTURA DE REPETIÇÃO • MÓDULO 6: FUNÇÃO • MÓDULO 7: VETORES
  • 10. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C • Em 1968, Edsger W. Dijkstra, através do artigo "A Case against the GO TO Statement" critica o uso excessivo do comando de desvio incondicional GOTO nos programas desenvolvidos na época. • Em 1972 , novamente Dijkstra, escreve sobre os conceitos da Programação Estruturada no "Capítulo I- Notes on Structured Programming" do livro " Structured Programming“ • As Linguagens Estruturadas são tambem chamada de Linguagens Convencionais, Procedurais ou Imperativas • Para a resolução de problemas relativamente mais simples e diretos, a programação estruturada é muito eficiente. 1.1 O que é Linguagem Estruturada
  • 11. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C • A programação estruturada é uma forma de programação de computadores que estabelece uma disciplina de desenvolvimento de algoritmos, independentemente da sua complexidade e da linguagem de programação na qual será codificado • Facilita a compreensão da solução através de um número restrito de mecanismos de codificação. • Mecanismos: • Estruturas Básicas de Controle, • Modularização, • Tipos Abstratos de Dados 1.1 O que é Linguagem Estruturada [Ref. Devmedia] • 1.1.1 - Elementos Chaves da Programação Estruturada
  • 12. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1)Estruturas Básicas de Controle • sequência, • condição • repetição. Controle Sequencial: o mais simples. Os comandos são escritos na seqüência, e assim são executados: A;B;C... Controle de Decisão: Permitem especificar uma escolha entre comandos alternativos. Exemplo: SE-SENAO-ENTAO Representação básica: Controle de Iteração: permitem especificar repetição de certos comandos Exemplo: ENQUANTO 1.1 O que é Linguagem Estruturada • 1.1.1 - Elementos Chaves da Programação Estruturada
  • 13. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 2) Modularização Subprogramas = blocos estruturados de códigos (procedimentos, funções ou módulos); A comunicação entre os blocos se faz utilizando variáveis globais e pela passagem de dados através de parâmetros; Os dados são processados nos blocos e migram de um bloco para outro. Ex: funções, bibliotecas. 3) Tipos Abstratos de Dados Modelo matemático, acompanhado das operações definidas sobre o modelo 1.1 O que é Linguagem Estruturada • 1.1.1 - Elementos Chaves da Programação Estruturada
  • 14. Linguagem de Programação Estruturada PLANO DE ENSINO IV – CONTEÚDO PROGRAMÁTICO • MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C o 1.1 O que é Linguagem Estruturada o 1.2 Introdução a Linguagem C o 1.3 Comparação Linguagem C e outras Linguagens o 1.4 Compiladores Linguagem C o 1.5 Método para a construção de programas em C o 1.6 Exemplos de Programas em C • MÓDULO 2: CONCEITO DE VARIÁVEL • MÓDULO 3: ESTRUTURA SEQUENCIAL • MÓDULO 4: ESTRUTURA CONDICIONAL • MÓDULO 5: ESTRUTURA DE REPETIÇÃO • MÓDULO 6: FUNÇÃO • MÓDULO 7: VETORES
  • 15. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.2 Introdução a Linguagem C Histórico: • Desenvolvido por Dennis Ritchie e Ken Thompson entre 1969 e 1973 na AT&T Bell Labs. • Criada para auxiliar no desenvolvimento do Sistema Operacional UNIX (com isso permitiu que fosse criado o Primeiro sistema operacional implementado em uma linguagem diferente do Assembly) • Possui características da Linguagem B (Baseada na Linguagem BCPL) • No final dos anos 70, a Linguagem C começou a substituir a Linguagem BASIC como a linguagem de Programação mais utilizada. • Na década de 80 foi adaptada para uso no PC IBM – iniciando sua popularidade.
  • 16. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.2 Introdução a Linguagem C Histórico: • Ainda na década de 80 , Bjarne Stroustrup e o Laboratório Bell trabalham no C++ , projeto para adicionar recursos de programação orientada a objetos. • A Linguagem C++ é utilizada na confecção do Windows, enquanto a C permanece popular no mundo UNIX • No final dos anos 80, a linguagem C sofre uma padronização pela ANSI (Instituto Norte-americano de padrões)
  • 17. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.2 Introdução a Linguagem C Características: • A Linguagem C é uma imperativa e procedural, para implementação de sistemas • linguagem de nível médio, pois pode-se trabalhar em um nível próximo ao da máquina ou como uma linguagem de alto nível como outras existentes. • Compilável • fornece acesso de baixo nível - (possível a inclusão de código Assembly no meio do programa C) • Criada com o objetivo de facilitar a criação de programas extensos com menos erros • Extremamente simples • Possui funcionalidades como: funções matemáticas, manuseamento de arquivos, através da inclusão de bibliotecas. • Possui ponteiros, que dão maior flexibilidade à linguagem.
  • 18. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.2 Introdução a Linguagem C Características: • Possui recursos de estruturas (Struct) que permitem que dados relacionados sejam combinados e manipulados como um todo. • Com o C podemos escrever programas concisos, organizados e de fácil entendimento Outras Características: -Portabilidade -Embaracação -Geração de códigos executáveis compactos e rápidos -Facilidade de uso -Linguagem estruturada -Confiabilidade -Simplicidade
  • 19. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.2 Introdução a Linguagem C Características: Portabilidade: pode ser compilada em diferentes arquiteturas, seja de hardware ou de software. É possível usar C no Mac ou PC, com Linux ou Windows. Modularidade: um programa em C é dividido em vários blocos de programação distintos Linguagem Imperativa: em C você usa funções que modificam o estado do programa. Elas são divididas em blocos e você as chama diretamente.
  • 20. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.2 Introdução a Linguagem C Porque Linguagem C? "Em outras palavras: a escolha de C é a única escolha sã. [...] Eu cheguei à conclusão de que qualquer programador que preferiria que o projeto fosse feito em C++ ao invés de C provavelmente é um programador que eu quero longe, assim ele não vem e estraga qualquer projeto em que eu esteja envolvido". Linus Torvalds C influenciou a maioria das linguagens mais utilizadas hoje em dia. Por exemplo: Java, Javascript, Shell e PHP, por exemplo, além de todas as linguagens que são C-*(C++, C#, Objective-C, etc). Linguagem C está em tudo!
  • 21. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.2 Introdução a Linguagem C Aplicações:
  • 22. Linguagem de Programação Estruturada PLANO DE ENSINO IV – CONTEÚDO PROGRAMÁTICO • MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C o 1.1 O que é Linguagem Estruturada o 1.2 Introdução a Linguagem C o 1.3 Comparação Linguagem C e outras Linguagens o 1.4 Compiladores Linguagem C o 1.5 Método para a construção de programas em C o 1.6 Exemplos de Programas em C • MÓDULO 2: CONCEITO DE VARIÁVEL • MÓDULO 3: ESTRUTURA SEQUENCIAL • MÓDULO 4: ESTRUTURA CONDICIONAL • MÓDULO 5: ESTRUTURA DE REPETIÇÃO • MÓDULO 6: FUNÇÃO • MÓDULO 7: VETORES
  • 23. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.3 Comparação Linguagem C e outras Linguagens
  • 24. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.3 Comparação Linguagem C e outras Linguagens
  • 25. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.3 Comparação Linguagem C e outras Linguagens
  • 26. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.3 Comparação Linguagem C e outras Linguagens
  • 27. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.3 Comparação Linguagem C e outras Linguagens
  • 28. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.3 Comparação Linguagem C e outras Linguagens
  • 29. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.3 Comparação Linguagem C e outras Linguagens
  • 30. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.3 Comparação Linguagem C e outras Linguagens
  • 31. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.3 Comparação Linguagem C e outras Linguagens
  • 32. Linguagem de Programação Estruturada PLANO DE ENSINO IV – CONTEÚDO PROGRAMÁTICO • MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C o 1.1 O que é Linguagem Estruturada o 1.2 Introdução a Linguagem C o 1.3 Comparação Linguagem C e outras Linguagens o 1.4 Compiladores Linguagem C o 1.5 Método para a construção de programas em C o 1.6 Exemplos de Programas em C • MÓDULO 2: CONCEITO DE VARIÁVEL • MÓDULO 3: ESTRUTURA SEQUENCIAL • MÓDULO 4: ESTRUTURA CONDICIONAL • MÓDULO 5: ESTRUTURA DE REPETIÇÃO • MÓDULO 6: FUNÇÃO • MÓDULO 7: VETORES
  • 33. Linguagem de Programação Estruturada PLANO DE ENSINO Compiladores É um grupo de programas que de posse de um codigo fonte escrito em uma linguagem de alto ou médio nível traduz para uma linguagem de baixo nível (Assembly, código de máquina). O primeiro compilador foi escrito por Grace Hopper em 1952, para a linguagem de programação A-0 para o UNIVAC (o primeiro computador).
  • 34. Linguagem de Programação Estruturada PLANO DE ENSINO Diferença entre Compilador e Interpretador: O interpretador ao contrário do compilador roda o código-fonte escrito como sendo o código objeto, ele traduz o programa linha a linha, o programa vai sendo utilizado na medida em que vai sendo traduzido. Cada execução do programa precisa ser novamente traduzido e interpretado. Vantagens e Desvantagens: Compilador: -Processo de correção ou alteração do código requer que ele seja novamente recompilado. -O código compilado é mais rápido de ser acessado; -Compila o código somente se estiver sem erros Interpretador: -Correções e alterações são mais rápidas de serem realizadas; -Código não precisa ser compilado para ser executado; -Consomem menos memória -Execução é mais lenta -Necessita sempre ser lido o código original para ser executado;
  • 35. Linguagem de Programação Estruturada PLANO DE ENSINO Diferença entre Compilador e Interpretador: O interpretador ao contrário do compilador roda o código-fonte escrito como sendo o código objeto, ele traduz o programa linha a linha, o programa vai sendo utilizado na medida em que vai sendo traduzido. Cada execução do programa precisa ser novamente traduzido e interpretado. Vantagens e Desvantagens: Compilador: -Processo de correção ou alteração do código requer que ele seja novamente recompilado. -O código compilado é mais rápido de ser acessado; -Compila o código somente se estiver sem erros Interpretador: -Correções e alterações são mais rápidas de serem realizadas; -Código não precisa ser compilado para ser executado; -Consomem menos memória -Execução é mais lenta -Necessita sempre ser lido o código original para ser executado;
  • 36. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.4 Compiladores Linguagem C Nome Gratuito Descrição GCC sim Compilador utilizado pelo projeto GNU. É padrão ANSI C e nativo do sistema Linux,. Não é preciso instalar compiladores de terceiros. Seu único problema é a falta de uma interface, que prejudica quem é principiante na linguaguem
  • 37. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.4 Compiladores Linguagem C Nome Gratuito Descrição Code Blocks sim Code :: Blocks é uma ferramenta livre C, C ++ e Fortran IDE
  • 38. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.4 Compiladores Linguagem C Nome Gratuito Descrição Dev-C++ sim Criado pela Bloodshed, Tem suporte a projeto Apesar de compilar a linguagem C, seu código é escrito em um código totalmente diferente - o Delphi!
  • 39. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.4 Compiladores Linguagem C Nome Gratuito Descrição C++ Builder não O C++ Builder é um dos melhores compiladores que tem, com possibilidade de criação de projetos extensos. Desenvolvido pela Borland Ele segue o padrão ISO ou ANSI C, mas também tem muitas bibliotecas não padrão, fazendo muitas vezes com que o programa perca a portabilidade e o código escrito no C++ Builder não rode em outros compiladores, mesmo que a linguagem C seja a mesma.
  • 40. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.4 Compiladores Linguagem C Nome Gratuito Descrição Visual C++ não O visual C++ é um compilador profissional da Microsoft que compõe o pacote Visual Studio, com vários recursos, como incremento de código, depurador de erros avançado e outras ferramentas que aumentam a produtividade do programador. O problema é que por ser da Microsoft tem o preço elevado e só compensará se você for usar esta linguagem para desenvolvimento profissional em aplicações Windows. Tem uma versão trial no site oficial
  • 41. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.4 Compiladores Linguagem C
  • 42. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C 1.4 Compiladores Linguagem C
  • 43. Linguagem de Programação Estruturada PLANO DE ENSINO APARATO EXPERIMENTAL Software DEV C++ : http://www.bloodshed.net/devcpp.html Como instalar? http://chortle.ccsu.edu/bloodshed/howtogl.html Referências na Web CPPReference.com : http://en.cppreference.com/w/ Cplusplus.com : http://www.cplusplus.com/reference/ Cprogramming.com : http://www.cprogramming.com/tutorial/c++-tutorial.html
  • 44. Linguagem de Programação Estruturada PLANO DE ENSINO IV – CONTEÚDO PROGRAMÁTICO • MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C o 1.1 O que é Linguagem Estruturada o 1.2 Introdução a Linguagem C o 1.3 Comparação Linguagem C e outras Linguagens o 1.4 Compiladores Linguagem C o 1.5 Método para a construção de programas em C o 1.6 Exemplos de Programas em C • MÓDULO 2: CONCEITO DE VARIÁVEL • MÓDULO 3: ESTRUTURA SEQUENCIAL • MÓDULO 4: ESTRUTURA CONDICIONAL • MÓDULO 5: ESTRUTURA DE REPETIÇÃO • MÓDULO 6: FUNÇÃO • MÓDULO 7: VETORES
  • 45. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C o 1.5 Método para a construção de programas em C
  • 46. Linguagem de Programação Estruturada PLANO DE ENSINO IV – CONTEÚDO PROGRAMÁTICO • MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C o 1.1 O que é Linguagem Estruturada o 1.2 Introdução a Linguagem C o 1.3 Comparação Linguagem C e outras Linguagens o 1.4 Compiladores Linguagem C o 1.5 Método para a construção de programas em C o 1.6 Exemplos de Programas em C • MÓDULO 2: CONCEITO DE VARIÁVEL • MÓDULO 3: ESTRUTURA SEQUENCIAL • MÓDULO 4: ESTRUTURA CONDICIONAL • MÓDULO 5: ESTRUTURA DE REPETIÇÃO • MÓDULO 6: FUNÇÃO • MÓDULO 7: VETORES
  • 47. Linguagem de Programação Estruturada MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C o 1.5 Método para a construção de programas em C //CODIGO 1.1 - Hello World #include <stdio.h> int main(void) { printf("Hello World"); return 0; }
  • 48. Circuitos Digitais MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C o 1.5 Método para a construção de programas em C //CODIGO 1.1 - Hello World #include <stdio.h> int main(void) { printf("Hello World"); return 0; }
  • 49. Circuitos Digitais MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C o 1.5 Método para a construção de programas em C //CODIGO 1.1 - Hello World #include <stdio.h> int main(void) { printf("Hello World"); return 0; }