• 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

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

@ 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-

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

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

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

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