1 – Introdução e Conceitos básicos · 1. Introdução e Conceitos básicos Prof José Rui...
Transcript of 1 – Introdução e Conceitos básicos · 1. Introdução e Conceitos básicos Prof José Rui...
Prof José Rui1. Introdução e Conceitos básicos
1 – Introdução e Conceitos básicosAula 01
Prof José Rui1. Introdução e Conceitos básicos
Sumário
Capítulo 1 – Introdução e Conceitos básicos
1.1 Definições
1.1.1. Por que e como usar o computador à nosso favor?
1.1.2. Linguagem humana x linguagem máquina
1.1.3. Algoritmos
1.1.4. Linguagem de programação
1.1.5. Programa, código fonte
1.1.6. Processo compilação C++
1.1.7. Execução de um programa C++
1.1.8. Ambientes de programação
1.1.9. Erros
Prof José Rui1. Introdução e Conceitos básicos
Definição
● Por que usar o computador?
Prof José Rui1. Introdução e Conceitos básicos
Definição
● Por que usar o computador?
● Como conversar com o computador?
Prof José Rui1. Introdução e Conceitos básicos
Definição
● Como conversar com o computador?
● Considere o problema:
● Determinar valor de y = seno(1.5)
Prof José Rui1. Introdução e Conceitos básicos
Definição
● Como conversar com o computador?
● Considere o problema:
● Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isto?
Prof José Rui1. Introdução e Conceitos básicos
Ling. Humana x Ling. Máquina
● Como conversar com o computador?
● Considere o problema:
● Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isto?
01010101011111010000001111001010001111100100100010011111100010010010 ● Esta seria uma boa opção!!!
● Afinal ele só entende Zero e Um
● Esta seria uma boa opção!!!● Afinal ele só entende Zero e Um
Prof José Rui1. Introdução e Conceitos básicos
Ling. Humana x Ling. Máquina
● Como conversar com o computador?
● Considere o problema:
● Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isto?
● Mas nós não sabemos falar esta língua maluca!
● E ai, como fazer?
01010101011111010000001111001010001111100100100010011111100010010010 ● Esta seria uma boa opção!!!
● Afinal ele só entende Zero e Um
● Esta seria uma boa opção!!!● Afinal ele só entende Zero e Um
Prof José Rui1. Introdução e Conceitos básicos
Ling. Humana x Ling. Máquina
● Como conversar com o computador?
● Considere o problema:
● Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isto?
● Mas nós não sabemos falar esta língua maluca!
● E ai, como fazer?
01010101011111010000001111001010001111100100100010011111100010010010 ● Esta seria uma boa opção!!!
● Afinal ele só entende Zero e Um
● Esta seria uma boa opção!!!● Afinal ele só entende Zero e Um
● Criou-se as linguagem de programação...● Criou-se as linguagem de programação...
Prof José Rui1. Introdução e Conceitos básicos
Ling. Humana x Ling. Máquina
● Como conversar com o computador?
● Considere o problema:
● Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isto?
1 calcule o seno de 1.5;2 armazene em y;3 imprima na tela y;
Mensagem para o computador
Prof José Rui1. Introdução e Conceitos básicos
Ling. Humana x Ling. Máquina
● Como conversar com o computador?
● Considere o problema:
● Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isto?
1 calcule o seno de 1.5;2 armazene em y;3 imprima na tela y;
Mensagem para o computador
● Note que esta mensagem é um passo a passo● Uma receita “de bolo”
● Note que esta mensagem é um passo a passo● Uma receita “de bolo”
Prof José Rui1. Introdução e Conceitos básicos
Ling. Humana x Ling. Máquina
● Como conversar com o computador?
● Considere o problema:
● Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isto?
1 calcule o seno de 1.5;2 armazene em y;3 imprima na tela y;
Mensagem para o computador
● Note que esta mensagem é um passo a passo● Uma receita “de bolo”
● Todas as linguagem de programação são assim● Este passo a passo denomina-se: ALGORÍTMO
● Note que esta mensagem é um passo a passo● Uma receita “de bolo”
● Todas as linguagem de programação são assim● Este passo a passo denomina-se: ALGORÍTMO
Prof José Rui1. Introdução e Conceitos básicos
Algorítmo
Definição - AlgorítmoDefinição - Algorítmo
● O conceito central da programação e da Ciência da Computação
● Isto é, programar é basicamente construir algoritmos.
● É a descrição, de forma lógica, dos passos a serem executados no cumprimento de determinada tarefa.
● É uma ferramenta genérica para representar a solução
● É uma linguagem intermediária à linguagem humana e às linguagens de programação
● Um algoritmo é uma receita para um processo computacional e consiste de uma série de operações primitivas, interconectadas devidamente, sobre um conjunto de objetos.
Prof José Rui1. Introdução e Conceitos básicos
Algorítmo
● Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isto?
1 calcule o seno de 1.5;2 armazene em y;3 imprima na tela y;
Algorítmo
A partir do algoritmo pronto, o passaremos para uma Linguagem de Programação
A partir do algoritmo pronto, o passaremos para uma Linguagem de Programação
Prof José Rui1. Introdução e Conceitos básicos
Algorítmo
● Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isto?
1 calcule o seno de 1.5;2 armazene em y;3 imprima na tela y;
Algorítmo
A partir do algoritmo pronto, o passaremos para uma Linguagem de Programação
A partir do algoritmo pronto, o passaremos para uma Linguagem de Programação
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
C++
Prof José Rui1. Introdução e Conceitos básicos
Programa, código fonte
DefiniçõesDefinições
● Para resolver um problema na computação é preciso escrever um TEXTO
● Este TEXTO, com qualquer outro, deve obedecer algumas regras de sintaxe
● Cada Linguagem tem regras pré estabelecidas
– Ex:
● Carro azul (linguagem: português)
● Blue car (linguagem: inglês)
● Este TEXTO é conhecido como:
Programa ou Cód. Fonte
Prof José Rui1. Introdução e Conceitos básicos
Programa, código fonte
DefiniçõesDefinições
● Usaremos nesta disciplina a linguagem C++
● Nas próximas aulas aprederemos as regras de sintaxe e semântica desta linguagem
Prof José Rui1. Introdução e Conceitos básicos
Programa, código fonte
● Voltando ao nosso problema: Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isso?
– Precisamos de um algoritmo (já temos)
– Precisamos traduzir para uma linguagem (já temos)
– Mas o problema continua
● Temos um texto na “língua” C++
● E temos do outro lado, o computador, que só entende a “língua” Zero e Um
● E ai?
Prof José Rui1. Introdução e Conceitos básicos
Programa, código fonte
● Voltando ao nosso problema: Determinar valor de y = seno(1.5)
● Como mandar o computador fazer isso?
– Precisamos de um algoritmo (já temos)
– Precisamos traduzir para uma linguagem (já temos)
– Mas o problema continua
● Temos um texto na “língua” C++
● E temos do outro lado, o computador, que só entende a “língua” Zero e Um
● E ai?
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
C++
Compilador010010101011110001010000011111
Prof José Rui1. Introdução e Conceitos básicos
Compilação
● O compilador é responsável por converter nosso PROGRAMA para a linguagem do computador (Binária)
● Agora sim, o computador entende o que queremos que ele faça
● Afinal este codigo binário é o nosso famoso .exe
– Código executável
– Também chamado de codigo objeto
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
C++, teste.cpp
Compilador010010101011110001010000011111
Prof José Rui1. Introdução e Conceitos básicos
Compilação
● Como se faz para gerar o codigo binário?
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
Compilador010010101011110001010000011111
C++, teste.cpp
Prof José Rui1. Introdução e Conceitos básicos
Compilação
● Como se faz para gerar o codigo binário?
● Suponha que o nome do arquivo acima(programa) seja teste.cpp
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
Compilador010010101011110001010000011111
C++, teste.cpp
Prof José Rui1. Introdução e Conceitos básicos
Compilação
● Como se faz para gerar o codigo binário?
● Suponha que o nome do arquivo acima(programa) seja teste.cpp
● Então o comando para compilar o programa é:
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
Compilador010010101011110001010000011111
C++, teste.cpp
> g++ teste.cpp o teste.exe
Prof José Rui1. Introdução e Conceitos básicos
Compilação
● Então o comando para compilar o programa é:
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
Compilador010010101011110001010000011111
C++, teste.cpp
> g++ teste.cpp o teste.exe
g++ é compiladorg++ é compilador
Prof José Rui1. Introdução e Conceitos básicos
Compilação
● Então o comando para compilar o programa é:
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
Compilador010010101011110001010000011111
C++, teste.cpp
> g++ teste.cpp o teste.exe
É o nome do arquivo do seu PROGRAMA.É o nome do arquivo do seu PROGRAMA.
Prof José Rui1. Introdução e Conceitos básicos
Compilação
● Então o comando para compilar o programa é:
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
Compilador010010101011110001010000011111
C++, teste.cpp
> g++ teste.cpp o teste.exe
Diretiva de compilaçãoDiretiva de compilação
Prof José Rui1. Introdução e Conceitos básicos
Compilação
● Então o comando para compilar o programa é:
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
Compilador010010101011110001010000011111
C++, teste.cpp
> g++ teste.cpp o teste.exe
Nome do arquivo binário que será criado;Nome do arquivo binário que será criado;
Prof José Rui1. Introdução e Conceitos básicos
Compilação
● Como usar o programa que acabamos de criar?
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
C++
Compilador0100101010não é gerado0000011111
Prof José Rui1. Introdução e Conceitos básicos
Execução do código objeto
● Como usar o programa que acabamos de criar?
● No windows, normalmente estamos acostumados a dar dois cliques num executável para usar um programa
● Caso você queira, pode fazer assim
● Mas o mais correto é você chamar o programa via terminal
– Abrir a famosa “tela preta” e dar o comando para executar o programa
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
C++
Compilador0100101010não é gerado0000011111
Prof José Rui1. Introdução e Conceitos básicos
Execução do código objeto
● Como usar o programa que acabamos de criar?
● O comando é:
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
C++
Compilador0100101010não é gerado0000011111
> ./teste.exe
./ comando para chamar um executável./ comando para chamar um executável
Prof José Rui1. Introdução e Conceitos básicos
Execução do código objeto
● Como usar o programa que acabamos de criar?
● O comando é:
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
C++
Compilador0100101010não é gerado0000011111
> ./teste.exe
Nome do arquivo binário que acabamos de criarNome do arquivo binário que acabamos de criar
Prof José Rui1. Introdução e Conceitos básicos
Execução do código objeto
● Como usar o programa que acabamos de criar?
● Quando você rodar (apertar o <enter>) este programa, vai acontecer o seguinte:
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
C++
Compilador0100101010não é gerado0000011111
> ./teste.exe> Seno de 1,5 é: 0.997495
Resultado da execução...E, problema resolvido!
Resultado da execução...E, problema resolvido!
Prof José Rui1. Introdução e Conceitos básicos
Erros sintáticos
● ATENÇÃO:
– O código objeto só é construído se:
– Seu programa estiver escrito corretamente
– Se não possuir erro de sintaxe!
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sin(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
C++
Compilador010010101011110001010000011111
Prof José Rui1. Introdução e Conceitos básicos
Erros sintáticos
● ATENÇÃO:
– Caso tenha algum erro, como o erro da linha 6 acima
– O codigo executável não será criado
1 #include<iostream>2 #include<math>34 int main(){5 float y;6 y = sino(1.5);7 cout << “Seno de 1,5 é:” << y << endl;8 return 0;9 }
C++
Compilador0100101010não é gerado0000011111
Prof José Rui1. Introdução e Conceitos básicos
Ambiente de programação
● Ambiente de programação:
– É o local onde se escreve o PROGRAMA (fonte)
– Tem algumas facilidades, como:
● Auto completar e outros;
● Tem o compilador embutido dentro dele
– Logo para compilar um programa basta clicar em um botão ao invés de dar o comando apresentado anteriormente
Prof José Rui1. Introdução e Conceitos básicos
Ambiente de programação
● Ambiente de programação:
– É o local onde se escreve o PROGRAMA (fonte)
– Tem algumas facilidades, como:
● Auto completar e outros;
● Tem o compilador embutido dentro dele
– Logo para compilar um programa basta clicar em um botão ao invés de dar o comando apresentado anteriormente
– Cada linguagem tem vários ambientes de programação
– Nosso caso, a linguagem C++
● Dev c++
● Code Blocks
● Microsoft Visual C++
Prof José Rui1. Introdução e Conceitos básicos
Ambiente de programação
● Ambiente de programação:
– Qual iremos utilizar para compilar nossos programas em C++?
Prof José Rui1. Introdução e Conceitos básicos
Ambiente de programação
● Ambiente de programação:
– Qual iremos utilizar para compilar nossos programas em C++?
– Nenhum!
– Faremos tudo na mão.
– Sugiro um bom editor de texto e nada mais
● Notepad++
– Caso você queira usar algum Ambiente
● Fique a vontade!
● Mas posso perguntar nos exercicios e na prova como se faz a compilação pela linha de comando
Prof José Rui1. Introdução e Conceitos básicos
Resumo
● Linguagem humana x linguagem máquina
– Linguagem humana → codigo fonte → codigo executável
● Algoritmos:
– A base da programação
– A partir dele cria-se o código fonte
● Linguagem de programação
– Usaremos C++
● Processo de compilação
– g++ <nomedoarquivo.cpp> -o <nomedoarquivo.exe>
● Execução de um programa
– ./<nomedoarquivo.exe>