laboratório de programação ii - diemesleno.com.br · a) teremos um projeto onde em cada aula...

154
Laboratório de Programação II Aula 01 Prof. Diemesleno Souza Carvalho [email protected] / http://www.diemesleno.com.br

Upload: haque

Post on 28-Dec-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Laboratório de Programação II

Aula 01 Prof. Diemesleno Souza [email protected] / http://www.diemesleno.com.br

Na aula passada vimos...

Na aula passada vimos...

00 – Apresentação da disciplina;

Na aula de hoje veremos...

Na aula de hoje veremos...

01 – Introdução à linguagem C;

Introdução à linguagem C

Introdução à linguagem C

Vamos aprender neste curso os conceitos básicos da linguagem de programação C a qual se tornou muito popular devido à sua versatilidade e ao seu poder.

Introdução à linguagem C

Uma das grandes vantagens do C é que ele possui tanto características de “alto nível” quanto de “baixo nível”.

Introdução à linguagem C

O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC DPD-11 rodando o sistema operacional UNIX.

Introdução à linguagem C

O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC DPD-11 rodando o sistema operacional UNIX.

Introdução à linguagem C

O C é derivado de uma outra linguagem: o B, criado por Ken Thompson.

O B, por sua vez, veio da linguagem BCPL, inventada por Martin Richards.

Curiosidade:

Curiosidade:

Até o momento, 2 linguagens de programação nasceram no Brasil.

Curiosidade:

Até o momento, 2 linguagens de programação nasceram no Brasil.

Curiosidade:

Até o momento, 2 linguagens de programação nasceram no Brasil.

Curiosidade:

Até o momento, 2 linguagens de programação nasceram no Brasil.

Introdução à linguagem C

Estudaremos programação em C padronizado pela ANSI.

Introdução à linguagem C

Estudaremos programação em C padronizado pela ANSI.

Chamado de ANSI C, ISO C e Standard C é a referência padrão da linguagem C publicada pelo American National Standards Institute.

Como funciona a linguagem C?

Como funciona a linguagem C?

Como funciona a linguagem C?

Primeiros passos

Primeiros passos

O C é “Case Sensitive”, isto é, letras maiúsculas e minúsculas fazem diferença.

Primeiros passos

O C é “Case Sensitive”, isto é, letras maiúsculas e minúsculas fazem diferença.

Isso significa que:

Soma é diferente de soma, que é diferente de SoMa e diferente de sOmA...

Ambiente de desenvolvimento

Ambiente de desenvolvimento

Os laboratórios já estão preparados para escrever, compilar e executar os programas em C.

Ambiente de desenvolvimento

Iremos utilizar:

• Sistema Operacional Linux;• Build-Essential;• Java Oracle JDK 8;• Eclipse IDE;• CDT Plugin para Eclipse;

Ambiente de desenvolvimento

Recomendações:

Ambiente de desenvolvimento

Recomendações: Elementary OS

Sistema Operacional Linux; Build-Essential; Java Oracle JDK 8; Eclipse IDE; CDT Plugin para Eclipse;

Fonte: https://www.elementary.io

Ambiente de desenvolvimento

Recomendações: Linux Mint

Sistema Operacional Linux; Build-Essential; Java Oracle JDK 8; Eclipse IDE; CDT Plugin para Eclipse;

Fonte: https://www.linuxmint.com

Ambiente de desenvolvimento

Recomendações: Eclipse

Sistema Operacional Linux; Build-Essential; Java Oracle JDK 8; Eclipse IDE; CDT Plugin para Eclipse;

Fonte: http://www.eclipse.org

Ambiente de desenvolvimento

Recomendações: Eclipse CDT

Fonte: https://eclipse.org/cdt

Ambiente de desenvolvimento

Recomendações: Java Oracle JDK 8

Fonte: http://goo.gl/mxtJsB

Ambiente de desenvolvimento

Recomendações: Build Essential

Conhecendo o Eclipse IDE

Conhecendo o Eclipse IDE

Conhecendo o Eclipse IDE

Conhecendo o Eclipse IDE

Conhecendo o Eclipse IDE

1 2 3

4

Conhecendo o Eclipse IDE

1 2 3

4

Conhecendo o Eclipse IDE

1 2

Criando a estrutura de trabalho

Criando a estrutura de trabalho

Vamos criar uma estrutura para organizar nossos códigos da seguinte forma:

a) Teremos um projeto onde em cada aula (conteúdo) criaremos um novo diretório para guardar o histórico dos nossos programas. Daremos o nome desses diretórios de aula-xx, onde o xx será substituído pelo número da aula, sendo 01, 02 e etc.

Criando a estrutura de trabalho

b) Teremos um projeto C para compilar e testar os códigos escritos.

Criando a estrutura de trabalho

Crie um projeto. (File → New → Project)

Criando a estrutura de trabalho

Abra a opção General

Criando a estrutura de trabalho

Selecione a opção Project

Criando a estrutura de trabalho

No nome do projeto coloque: SeuNome-PE

Criando a estrutura de trabalho

No nome do projeto coloque: SeuNome-PE

Criando a estrutura de trabalho

Temos o projeto para guardar os fontes.

Criando a estrutura de trabalho

Temos o Projeto criado. É nele que colocaremos os diretórios de cada aula.

Começaremos a criar o diretório aula-01

Criando a estrutura de trabalho

Botão direito do mouse no projeto, New → Folder

Criando a estrutura de trabalho

Como estamos na aula 01, o nome do nosso diretório será aula-01

Criando a estrutura de trabalho

Temos então o projeto criado e o diretório onde ficarão os fontes da aula de hoje.

Criando a estrutura de trabalho

Precisamos criar agora o projeto C para poder compilar e testar nossos programas.

Criando a estrutura de trabalho

File → New → C Project

Criando a estrutura de trabalho

Daremos o nome de SeuNome-C

Criando a estrutura de trabalho

Daremos o nome de SeuNome-C

Criando a estrutura de trabalho

Com a estrutura criada, já podemos começar a programar. ;)

Criando a estrutura de trabalho

Repare que no projeto C, foram incluídos alguns arquivos.

Criando a estrutura de trabalho

Repare que no projeto C, foram incluídos alguns arquivos. NUNCA APAGUE-OS!

Criando o primeiro programa

Criando o primeiro programa

No projeto C, clique no botão New C/C++..

Criando o primeiro programa

Dê o nome de programa01.c

Criando o primeiro programa

Repare que o arquivo é criado no nosso projeto e aberto no editor.

Criando o primeiro programa

Podemos apagar o comentário criado pelo template.

Criando o primeiro programa

Podemos apagar o comentário criado pelo template.

Criando o primeiro programa

Vamos escrever o código:

Criando o primeiro programa

Vamos escrever o código:

Criando o primeiro programa

Vamos escrever o código:

Criando o primeiro programa

Após escrever o código, vamos compilar.

Criando o primeiro programa

Após escrever o código, vamos compilar.Project → Build All ou CTRL + B

Criando o primeiro programa

Repare que após compilado, novos diretórios foram criado no projeto C.

Criando o primeiro programa

Após compilar o programa, vamos executar.

Criando o primeiro programa

Após compilar o programa, vamos executar. Basta clicar em ‘Run’

Criando o primeiro programa

Ao executar o programa, o resultado é apresentado no console.

Entendendo as coisas

Entendendo as coisas

1 – Os projetos (Fontes e Compilação) só precisam serem criados uma única vez.

2 – Em cada aula (conteúdo) iremos criar um novo diretório no projeto de Fontes, para organizar melhor nossos programas.

3 – Para trabalhar melhor, cria-se primeiro o programa no diretório onde será compilado e testado. Estando funcionando, copia o fonte para o diretório da aula do dia.

Entendendo as coisas

Copie o programa01.c que está no projeto C.

Entendendo as coisas

Cole no diretório da aula diária.

Entendendo as coisas

Cole no diretório da aula diária.

Entendendo as coisas

Apague o arquivo copiado no projeto C.

Entendendo as coisas

Apague o arquivo copiado no projeto C.

Entendendo as coisas

Desta forma nossos programas ficarão organizados até o final do curso.

Entendendo as coisas

Observações:

IMPORTANTE!

Lembre-se que temos 2 projetos, sendo o SeuNome-Cpara compilar e testar os programas e o SeuNome-PE para guardar os fontes dos programas de cada aula.

Os programas só são compilados e executados dentro do projeto de compilação (SeuNome-C).

Só é possível ter um programa por vez no diretório de compilação. Por isso que após compilado e executado, copiamos o programa para o diretório de fontes e excluímos o arquivo copiado do projeto de compilação.

Entendendo o código

Entendendo o código

A linha 1 diz ao compilador que ele deve incluir o arquivo de cabeçalho stdio.h

std = standard (padrão)io = input/output (entrada/saída)h = header (cabeçalho)

Entendendo o código

A linha 3 indica que estamos definindo uma função/método de nome ‘main’

main = principalÉ o que define um ‘programa’ em C.É o método que é executado quando um programa em C é executado.

Entendendo o código

A linha 3 indica que estamos definindo uma função/método de nome ‘main’

int → indica que a função/método irá retornar um inteiro.

Entendendo o código

A linha 3 indica que estamos definindo uma função/método de nome ‘main’

() → Toda função/método necessida de parênteses.

Entendendo o código

A linha 3 indica que estamos definindo uma função/método de nome ‘main’

{} → O corpo/implementação de toda função/método fica dentro de chaves. Neste exemplo, a função inicia na linha 3 e finaliza na linha 6.

Entendendo o código

Na linha 4 executamos o método printf()

O método printf() faz parte do cabeçalho stdio.hRepare que ele recebe um parâmetro de entrada e finaliza com ponto e vírgula.

Entendendo o código

Na linha 4 executamos o método printf()

Todo comando em C finaliza com ponto e vírgula.

Entendendo o código

Na linha 5 retornamos o número zero.

Todo comando em C finaliza com ponto e vírgula.

Criando o segundo programa...

Criando o segundo programa...

No projeto SeuNome-C, crie o programa02.c

Criando o segundo programa...

Digite o seguinte código:

Criando o segundo programa...

Digite o seguinte código:

Criando o segundo programa...

Compile e execute.

Entendendo o código...

Entendendo o código...

Nas linhas 5 e 6 declaramos duas variáveis.

Entendendo o código...

Uma do tipo int (inteiro) e outra do tipo float (ponto flutuante)

Entendendo o código...

Na linha 12, utilizamos a função scanf() que recebe 2 parâmetros de entrada e recebe dados do teclado.

Entendendo o código...

Na função scanf(), o primeiro parâmetro indica o tipo de dado que a função irá receber. Neste caso, um decimal. (int)

Entendendo o código...

Na função scanf(), o segundo parâmetro indica em qual variável o dado digitado será armazenado.

Entendendo o código...

Na linha 15, efetuamos um cálculo. (divisão)

Entendendo o código...

Na linha 18, imprimimos o resultado do nosso cálculo, juntamente com as informações de apresentação.

Entendendo o código...

Repare que na linha 18, junto ao texto estão duas marcações, %d e %1.f

Entendendo o código...

A primeira marcação, %d, indica que na impressão deve ser substituído por uma variável de valor decimal. (int)

Entendendo o código...

A marcação %.1f, indica que deve ser substituída por uma variável de valor float com 1 casa decimal após a vírgula.

Entendendo o código...

As variáveis estão logo após a vírgula da sentença.

Introdução às funções

Introdução às funções

Uma função é um bloco de código de programa que pode ser usado diversas vezes em sua execução.

O uso de funções permite que o programa fique mais legível, mais enxuto e mais bem estruturado.

Um programa em C consiste, no fundo, de várias funções colocadas juntas.

Introdução às funções

No projeto C, crie o programa03.c

Introdução às funções

No projeto C, crie o programa03.c

OBS: Não se esqueça de copiar o programa anterior (programa02.c) para seu diretório da aula-01. ;)

OBS: Não se esqueça que no projeto de compilação só pode/deve ficar 1 (um) programa por vez.

Introdução às funções

Digite o código abaixo:

OBS: Não se esqueça de copiar o programa anterior (programa02.c) para seu diretório da aula-01. ;)

OBS: Não se esqueça que no projeto de compilação só pode/deve ficar 1 (um) programa por vez.

Introdução às funções

Digite o código abaixo:

OBS: Não se esqueça de copiar o programa anterior (programa02.c) para seu diretório da aula-01. ;)

OBS: Não se esqueça que no projeto de compilação só pode/deve ficar 1 (um) programa por vez.

Introdução às funções

Compile, execute.

Introdução às funções

Compile, execute.

Entendendo o código...

Entendendo o código...

Da linha 3 a 6 definimos uma função/método chamado mensagem().

Entendendo o código...

A função mensagem() não recebe nenhum parâmetro de entrada. Ou seja, para executá-la não será necessário informar nada dentro dos parênteses.

Entendendo o código...

Dentro da função mensagem(), entre as linhas 4 e 5, temos a implementação da função. A implementação é a computação que será realizada, ou seja, o que a função irá realizar quando for executada.

Entendendo o código...

A única coisa que a função irá fazer é imprimir uma mensagem no console e retornar zero.

Entendendo o código...

Vale lembrar que a função mensagem irá retornar zero pois definimos que o tipo de retorno dela é um inteiro.

Entendendo o código...

Podemos concluir então que uma função/método se divide em 5 partes: 1 - Tipo de retorno; 2 - nome; 3 - parâmetros de entrada; 4 - implementação e 5 - retorno;

Entendendo o código...

Dentro do método principal do programa, main(), na linha 9, executamos a função/método mensagem().

Entendendo o código...

Além disso, na linha 10, executamos um outro método, o printf()

Entendendo o código...

Podemos concluir que em um programa, utilizamos funções da própria linguagem de programação quanto funções criadas por nós mesmos.

Funções com argumentos

Funções com argumentos

Argumentos são as entradas que uma função recebe.

É através dos argumentos que passamos parâmetros para a função.

Já vimos funções com argumentos e funções sem argumentos.

Funções com argumentos

Argumentos são as entradas que uma função recebe.

É através dos argumentos que passamos parâmetros para a função.

Já vimos funções com argumentos e funções sem argumentos.

Funções com argumentos

O que faz uma função ter ou não argumentos de entradas são as necessidades dos mesmos.

Ou seja, se uma função for criada para efetuar algum cálculo ou ação que dependa de dados do usuário ou externos, então ela deve receber estes dados via parâmetros de entrada.

Caso a função não precise de nenhuma informação do usuário ou de externos, então na sua declaração não será necessário declarar parâmetros de entrada.

Funções com argumentos

Crie o programa04.c

Funções com argumentos

Digite o seguinte código:

Funções com argumentos

Digite o seguinte código:

Funções com argumentos

Compile, execute.

Funções com argumentos

Compile, execute.

Entendendo o código...

Entendendo o código...

Funções com argumentos

Crie o programa05.c

Funções com argumentos

Digite o código abaixo:

Funções com argumentos

Complemente com o código abaixo:

Funções com argumentos

Depois de compilado, a execução é:

Recuperando valores retornados

Recuperando valores retornados

As vezes é necessário recuperar o retorno de uma função para continuar um processamento.

As funções que criamos até agora simplesmente retornavam o número 0.

Ao declararmos que o retorno de uma função é um inteiro, podemos retornar qualquer inteiro nessa função.

Recuperando valores retornados

Crie o programa06.c

Recuperando valores retornados

Digite o seguinte código:

Observações sobre funções

Observações sobre funções

No nosso programa03.c criamos uma função chamada mensagem() que retorna um int.

Poderíamos na verdade não retornar nada, desde que mudássemos o tipo de retorno para void.

Observações sobre funções

No nosso programa03.c criamos uma função chamada mensagem() que retorna um int.

Poderíamos na verdade não retornar nada, desde que mudássemos o tipo de retorno para void.

Observações sobre funções

Se você prestou atenção, viu que sempre criamos nossas funções ANTES da função principal do programa C.

ISSO É IMPORTANTE para que o programa entenda que essa função exista.

O programa irá rodar sem problemas, mas o recomendável é declarar antes. ;)

Laboratório de Programação II

Aula 01 Prof. Diemesleno Souza [email protected] / http://www.diemesleno.com.br

Exercícios

1) Crie um programa em C que ao ser executado, imprima seu nome e sua idade na tela.

2) Crie um programa em C que ao ser executado, pergunte ao usuário 2 números e imprima a soma desses números.

3) Crie um programa em C que tenha uma função que receba 2 números inteiros e retorne a soma destes números. No método principal, deve solicitar ao usuário os 2 números e executar o método passando os dados como parâmetros. Ao final, imprima para o usuário uma informação com o resultado.

4) Crie um programa em C que tenha uma função que receba 2 parâmetros do tipo float e calcule e apresente ao usuário o quadrado desses números e a soma dos quadrados. No programa principal, receba os dados do usuário e apresente o resultado como informação.