• Nenhum resultado encontrado

Lógica de Programação - Aula 09

N/A
N/A
Protected

Academic year: 2021

Share "Lógica de Programação - Aula 09"

Copied!
57
0
0

Texto

(1)

Lógica de Programação e

Algoritmos

Linguagem C

(2)

Introdução

• O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional UNIX. 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.

(3)
(4)

Criadores Linguagens B e C

(5)

C linguagem Genérica

• O C é uma linguagem de programação genérica que é utilizada para a criação de programas diversos como processadores de texto, planilhas eletrônicas, sistemas operacionais e etc...

(6)

ANSI C

• Estudaremos a estrutura do ANSI C, o C padronizado pela ANSI (Instituto Nacional Americano de Padrões).

(7)

Introdução

• O C é "Case Sensitive“

• o C é "Case Sensitive", isto é, maiúsculas e minúsculas fazem diferença.

• Se você declarar uma variável com o nome soma ela será diferente de Nome, NOME, NomE ou nOme

• Da mesma maneira, os comandos do C printf e scanf, por exemplo, só podem ser escritos em minúsculas pois senão o compilador não irá interpretá-los como sendo comandos, mas sim como variáveis.

(8)

Introdução

• Os computadores não entendem nada além de comandos, dados e endereços escritos em linguagem binária.

• Mas, qualquer ser humano que se disponha a tentar desenvolver um programa complexo programando diretamente em linguagem de máquina simplesmente vai ficar louco muito antes de concluir seu trabalho

(9)

Compiladores

• Para resolver este impasse, surgiram as linguagens de programação, que permitem escrever programas usando comandos fáceis de lembrar e funções já prontas.

• O compilador é um programa (Software) que permite transformar este código escrito na linguagem de programação em linguagem de máquina, gerando o binário ou “programa executável”.

(10)

Compiladores

• Nesse curso será usado o compilador Dev-C++ que na verdade é uma interface de desenvolvimento integrada, que possui um editor de código, um compilador, um debugador e outras coisas mais...

(11)
(12)
(13)
(14)
(15)

Linguagem Compilada e Interpretada

• Linguagem Compilada

– O compilador, a partir do código em linguagem de alto nível, chamado de código-fonte, gera um arquivo com o código em linguagem de máquina, conhecido como código-objeto.

(16)

Linguagem Compilada e Interpretada

• Linguagem Interpretada

– O interpretador faz o mesmo trabalho, porem não gera o arquivo em código-objeto. As instruções são traduzidas para a linguagem de máquina em tempo de execução, instrução a instrução.

(17)
(18)
(19)

Código fonte

• O “código fonte” de um programa é o arquivo (ou conjunto de arquivos) que contém os comandos e rotinas que formam um programa.

• Este código é então compilado, gerando o arquivo binário (ou executável) que será executado.

(20)

Código fonte

• Ao comprar um programa qualquer, recebemos apenas os binários, que permitem instalar e executar o programa, mas não o código fonte, que permitiria alterá-lo ou entender como ele funciona.

(21)

Código fonte

• Em programas comerciais, o código fonte é cuidadosamente guardado, mas existe um movimento crescente de desenvolvimento de softwares livres, onde o código fonte é distribuído junto com o programa, o que permite a qualquer um com conhecimentos de programação alterá-lo, corrigir bugs ou adicionar novos recursos, desde que sejam mantidos os créditos para o criador original.

(22)
(23)

Esqueleto básico de um programa em

C

• Um conjunto de instruções básicas. #include <stdio.h>

int main() { return 0; }

(24)

Comparação com VisualG

Algoritmo “nome” var

inicio

(25)

Esqueleto básico de um programa em

C

• Todos os programas que iremos escrever nessas primeiras aulas serão formados por um conjunto de comandos (ou instruções) entre a linha “int main()” e a linha “return 0;”.

(26)

Exemplo

• Ler uma idade e exibir: Algoritmo “idade” Var

idade : inteiro Inicio

escreva(“Informe uma idade: ”) leia(idade)

escreva(“Nossa, ”, idade ,“ anos”) Fimalgoritmo

(27)

Exemplo

#include <stdio.h> int main() {

int idade;

printf(“Qual a sua idade?\n”); scanf(“%d”, &idade);

printf(“\nNossa.. %d anos!!\n”, idade); return 0;

(28)

Para que serve o ponto-e-vírgula?

• O ponto-e-vírgula ( ; ) deve ser usado ao final de cada comando em Linguagem C. Isto é uma “regra geral”, mas como todos sabem, toda regra possui exceções. Considere inicialmente essas duas exceções:

– As linhas de #include <> não devem possuir ponto-e-vírgula

– As linhas com { ou } normalmente não devem possuir ponto-e-vírgula

(29)

Primeiros comandos

• Saída de dados:

– printf()

• printf(“seu texto aqui!”);

• Observe que o uso das aspas duplas é obrigatório, portanto os seguintes comandos estariam errados:

– printf(‘seu texto aqui!’); – printf(seu texto aqui!);

(30)

Primeiros Comandos

• Existem várias combinações de caracteres “especiais” que podem ser usados dentro do comando printf(), como por exemplo o \n. Esse \n quer dizer “quebra de linha”, ou “pule uma linha”.

(31)

#include <stdio.h> int main() { printf(“Bem vindo!”); printf(“Estou aprendendo Liguagem C!”); printf(“Bye, bye...”); return 0; }

(32)
(33)

• Agora, vamos introduzir quebras de linha ( \n ) dentro do primeiro e do segundo printf(), de forma que o nosso programa fique da seguinte maneira:

(34)

#include <stdio.h> int main() { printf(“Bem vindo!\n”); printf(“Estou aprendendo Liguagem C!\n”); printf(“Bye, bye...”); return 0; }

(35)

Primeiros Comandos

• getchar()

#include <stdio.h> int main() {

printf(“Bem vindo!\n”);

printf(“Estou aprendendo Liguagem C!\n”); printf(“Bye, bye...”);

getchar (); return 0; }

(36)

Endentação

• Um ponto fundamental organização de escrita de códigos fonte é a Endentação. Endentar é organizar horizontalmente de forma hierárquica as linhas de código, de acordo com o escopo onde elas se encontram.

(37)

Exemplo Endentação

Var A = 0

SE (A < 1) ENTAO

ESCREVA "Variável A é menor que 1."

(38)

Exemplo Endentação

#include <stdio.h> int main() {

printf(“Bem vindo!”);

printf(“\nEstou aprendendo Linguagem C!”);

printf(“\nBye, bye...”);

printf(“\n\nPressione <ENTER> para sair do programa.”);

getchar(); return 0; }

(39)

Exemplo Endentação

#include <stdio.h> int main() {

printf(“Bem vindo!”);

printf(“\nEstou aprendendo Linguagem C!”); printf(“\nBye, bye...”);

printf(“\n\nPressione <ENTER> para sair do programa.”); getchar();

return 0; }

(40)

Comentários

• Usando a barra dupla // • Comentários com /* */

(41)

Exemplo Comentários

/* Programa exemplo Linguagem C Thiago */ #include <stdio.h> int main() { printf(“Bem vindo!”);

printf(“\nEstou aprendendo Linguagem C!”); printf(“\nBye, bye...”);

printf(“\n\nPressione <ENTER> para sair do programa.”); getchar(); //Esperando o <ENTER>

return 0; }

(42)

Exemplo Comentários

/* Programa exemplo Linguagem C -- Thiago */ #include <stdio.h> int main() { //Mensagem de saudação printf(“Bem vindo!”);

printf(“\nEstou aprendendo Linguagem C!”); printf(“\nBye, bye...”);

//Esperando o usuário pressionar <ENTER> para sair do programa printf(“\n\nPressione <ENTER> para sair do programa.”);

getchar(); return 0; }

(43)

Variáveis

• O que são variáveis:

– Uma variável nada mais é do que um espaço na memória do computador para armazenarmos algum tipo de informação.

(44)

Variáveis

• Tipos básicos de variáveis na Linguagem C:

– int: Esse tipo de variável armazena valores numéricos inteiro. Normalmente podem ser armazenados valores entre -32.768 e +32.767 nesse tipo de variável.

• o Exemplos de valores que podem ser armazenados em uma variável int: 100, -28, 0, 19, 28965, -19852...

(45)

Variáveis

• float: O tipo float permite representar valores numéricos pertencentes ao conjunto dos números reais. Normalmente podem ser armazenados valores entre 3.4*10-38 e 3.4*10+38.

– o Exemplos de valores que podem ser armazenados em uma variável float: 75.87, -28.9985, 0.741, 199852.58, -852.87...

(46)

Variáveis

• double: O tipo double também é usado para representar valores numéricos pertencentes ao conjunto dos números reais. A diferença entre uma variável float e uma variável double é que esta última possui o dobro da precisão, eu seja, pode armazenar números muito maiores.

– o Normalmente podem ser armazenados valores entre 1.7*10-308 e 1.7*10+308

(47)

Variáveis

• char: Usado para armazenar um único caractere. Em outras palavras, este tipo é utilizado para se guardar valores definidos dentro da tabela ASCII (-127 a 127). O

– Exemplos de valores que podem ser armazenados em uma variável char: ‘v’ , ‘t’, 25...

(48)

Declarando variáveis

• Toda variável que será usada em um programa em Linguagem C precisa ser declarada.

• O processo de declaração de variáveis é fundamental para que o compilador saiba quantos lugares (e de que tamanhos) ele dele reservar na memória do computador para que o programa que está sendo compilado possa manipular seus dados.

(49)

Modelo de Declaração de Variáveis

• O formato básico de declaração de uma variável em Linguagem C é:

– <tipo_da_variável> <nome_da_variável>; – int idade;

– float peso;

(50)

Inicialização de Variáveis

int numero = 2; char letra = ‘a’;

(51)

Exemplo

• Forma de Escrever (Sintaxe)

– <tipo> <identificador>

#include <stdio.h> int main() {

int idade; //Declaração de Variável

printf(“Qual a sua idade?\n”); scanf(“%d”, &idade);

printf(“\nNossa.. %d anos!!\n”, idade); return 0;

(52)

Primeiros Comandos

• scanf() – Comando de entrada • scanf(“%d”, &idade) • %d - int • %f - float • %lf - double • %c - caractere

(53)
(54)

Exemplo

int main() {

int idade; //Declaração de Variável

printf(“Qual a sua idade?\n”);

scanf(“%d”, &idade);//Ler variável Idade

printf(“\nNossa.. %d anos!!\n”, idade); return 0;

(55)

Primeiros Comandos

• #include <stdlib.h> • system(“pause”)

(56)

Operadores aritméticos

• <variável_que_recebe> = <operando1> <operador> <operando2>;

(57)

Exemplos

• Faça um algoritmo que leia o altura e a peso de um indivíduo, exibindo-os logo em seguida;

• Faça um programa que receba uma letra, as três notas de um aluno, depois calcule e exiba sua média;

• Faça um algoritmo que calcule e mostre a área de um triangulo;

Referências

Documentos relacionados

O IDD é a diferença entre o desempenho médio do concluinte de um curso e o desempenho médio estimado para os concluintes desse mesmo curso e representa, portanto, quanto cada curso

A DIREÇÃO GERAL DO CAMPUS PORTO VELHO ZONA NORTE DO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE RONDÔNIA, no uso de suas atribuições legais e por meio do Departamento

A cho que um dos momentos mais tristes das nossas vidas é quando a porta da casa dos avós se fecha para sempre, ou seja, quando essa porta se fecha, encerramos os encontros com

Nesse sentido visando à problemática do êxodo rural de jovem cada vez maior, assim sendo o problema de pesquisa a ser debatido será: Quais são os motivos e as expectativas que levam

Nesta exposição, preparada para a Mesa Redonda “Edson Zampronha: sensibilidade e interatividade no discurso e na criação musical”, apresento um breve resumo sobre as concepções

@ j`glugt` ci hol`tos i cos lugtos priig- @ j`glugt` ci hol`tos i cos lugtos priig- jancos j`e osfoht` j`gstntun ueo joeoco ne- jancos j`e osfoht` j`gstntun ueo joeoco ne-

2) Fica a critério da banca examinadora, somente se mais de um candidato estiver realizando o concurso: atribuir ao candidato que obtiver a maior pontuação na Soma Absoluta 1 a

Uma análise mais aprofundada das imagens em questão nos permitiria dizer, ainda, que, embora o repórter fotográfico da FolhaPress ocupe uma posição-sujeito que está inscrita na