You are on page 1of 39

Construo de Algoritmos

Prof. Gilberto / Prof. Mauricio

Lgica de Programao
Linguagem C
(Introduo)

Prof. Gilberto / Prof. Mauricio

Contedo

- Funcionamento Programas - Formas de gerao programas - Computador Simplificado - Estrutura Programa C


Prof. Gilberto / Prof. Mauricio

Conceitos Bsicos - Computador

UCP

BARRAMENTO

MEMRIA PRINCIPAL

ENTRADA E SADA

Prof. Gilberto / Prof. Mauricio

Conceitos Bsicos Programa

Um programa serve para traduzirmos os que desejamos em linguagem de mquina O programa ensina o que o computador deve fazer sua receita de bolo

Prof. Gilberto / Prof. Mauricio

Conceitos Bsicos Programa

SE O HOMEM SOUBESSE O VALOR QUE TEM A MULHER ANDARIA DE QUATRO SUA PROCURA.

Prof. Gilberto / Prof. Mauricio

Conceitos Bsicos - Linguagens

Linguage Hu ana
B /H

rogra a

QUI

Linguage e quina
Prof. Gilberto / Prof. Mauricio

Exemplos Linguagens de programao

tabuada de 1 a 10 Pseudo-linguagem : leia num para n de 1 at 10 passo 1 faa tab  num * n imprime tab fim faa
Prof. Gilberto / Prof. Mauricio

Linguagens de programao
Linguagem C: scanf(&num); for(n = 1; n <= 10; n++){ tab = num * n; printf(\n %d, tab); };

Prof. Gilberto / Prof. Mauricio

Linguagens de programao
Basic: 10 input num 20 for n = 1 to 10 step 1 30 let tab = num * n 40 print chr$ (tab) 50 next n

Prof. Gilberto / Prof. Mauricio

Linguagens de programao
Fortran: read (num); do 1 n = 1:10 tab = num * n write(tab) 10 continue

Prof. Gilberto / Prof. Mauricio

Conceitos Bsicos

Assembly para INTEL 8088: MOV CX,0 IN AX,PORTA MOV DX,AX LABEL: INC CX MOV AX,DX MUL CX OUT AX, PORTA CMP CX,10
Prof. Gilberto / Prof. Mauricio

JNE LABEL

Conceitos Bsicos Programa

Existem duas formas de se fazer o computador entender o que queremos: Traduzir o que queremos em linguagem de mquina (Traduo) Criar um programa que traduza (em tempo real) o que queremos para o computador (Interpretao)

Prof. Gilberto / Prof. Mauricio

Conceitos Bsicos - Traduo


a in () { /* i ri rin tf( }

e n a te la */ la ! );

Cdi

o F o n te

C IG

I G B J BTJ

BJ

IG

ro

ra

e c u Gilberto Prof. t v e l / Prof. Mauricio

Conceitos Bsicos - Interpretador

Main() { /* imprime na tela */ printf(Ola! ); }

INTERPRETADOR DE COMANDOS

CDI O FONTE

PRO RAMA E EC T VEL

Prof. Gilberto / Prof. Mauricio

Linguagem C

Recursos de Linguagem de Alto Nvel e eficincia de linguagens de baixo nvel

Prof. Gilberto / Prof. Mauricio

Origens da Linguagem C
A linguagem C o resultado de um processo de desenvolvimento que comeou com uma linguagem mais antiga chamada BCLP. BCPL
(Martin Richards)

B
(Ken Thompson)

A linguagem B foi influenciada pela BCPL

C (1970)
(Dennis Ritchie)

A definio de C est contida no livro The C Programming Language de Brian W. Kerninghan & Dennis M. Ritchie de 1978

O ANSI (American National Standards Institute) estabeleceu, em 1983, um comit para criar um padro que definiria a Linguagem C, resolvendo assim problemas vinculados compatibilidade j que surgiram um grande nmero de implementaes de C.

UNIX Assembler -> C


Prof. Gilberto / Prof. Mauricio

COMPUTADOR SIMPLIFICADO

Prof. Gilberto / Prof. Mauricio

Computador Simplificado

Prof. Gilberto / Prof. Mauricio

Prof. Gilberto / Prof. Mauricio

Prof. Gilberto / Prof. Mauricio

Prof. Gilberto / Prof. Mauricio

Prof. Gilberto / Prof. Mauricio

Prof. Gilberto / Prof. Mauricio

Exerccios
Escrever as instrues do computador simplificado (CS): 1) Escreva um conjunto de instrues para fazer o CS somar dois valores (contidos em dois cartes) e subtrair um terceiro valor (contido no terceiro carto) e imprimir o resultado. 2) Dados os comprimentos dos lados de um tringulo retngulo, determinar e imprimir o comprimento do terceiro lado (hipotenusa). H=(cateto12 + cateto22). 3) Ler a temperatura na escala Celsius e imprimir a equivalente em Farenheit (frmula : F=9/5*(C+32). 4) Ler uma quantidade de chuva em polegadas e imprimir a equivalente em milmetros (Polegada=25.4 * Milimetro)
Prof. Gilberto / Prof. Mauricio

Estrutura Bsica de um Programa em C


#include <stdio.h> main() { instruo 1; instruo 2; . . instruo n; }
Obs1: todo programa em C consiste em uma ou mais funes. A nica funo que necessariamente precisa estar presente a denominada main(), que a primeira funo a ser chamada quando a execuo do programa comea. Obs2: #include uma direti a que permite a incluso de um programafonte (<stdio.h> ) em outro.
Prof. Gilberto / Prof. Mauricio

Case Sensiti e Printf <> printf Instrues de em terminar por ; Funes embutidas (padro)

Prof. Gilberto / Prof. Mauricio

Exemplo de um Programa em C
#include <stdio.h> main() { int num, resposta; printf("Digite um numero: "); scanf("%d",&num); resposta=num+10; printf("O resultado de %d + 10 eh igual a %d", num, resposta); }

Prof. Gilberto / Prof. Mauricio

Linguagem C

EXERCCIOS

Prof. Gilberto / Prof. Mauricio

Linguagem C

RECORDANDO... DECLARANDO E USANDO VARIVEIS


int num; num=5; /* Coloca o valor 5 na varivel num*/ printf(%i,num); /* Imprime na tela o contedo da varivel num*/

Prof. Gilberto / Prof. Mauricio

Linguagem C

Vamos escre er um programa em C ue dados 3 nmeros inteiros, soma os dois primeiros, subtrai do terceiro e imprime o resultado na tela

Prof. Gilberto / Prof. Mauricio

Linguagem C

#include <stdio.h> main() { int A1,A2,A3,resultado; A1=1; A2=5; A3=7; resultado=A1+A2-A3; printf(Resultado= %d,resultado); }

Prof. Gilberto / Prof. Mauricio

Linguagem C

Vamos escre er um programa em C ue dados um nmero inteiro, calcula e imprime o anterior e o posterior na tela

Prof. Gilberto / Prof. Mauricio

Linguagem C

#include <stdio.h> main() { int num,num_ant,num_post; num=10; num_ant=num-1; /* Calcula e armazena o nmero anterior */ num_post=num+1; /* Calcula e armazena o nmero posterior */ printf(Nmero= %i, num); printf(Anterior= %i, num_ant); printf(Posterior= %i, num_post); }

Prof. Gilberto / Prof. Mauricio

Linguagem C

Escre er um programa em C ue dados os lados de um tringulo retngulo, calcula e imprime na tela o alor da sua hipotenusa

Prof. Gilberto / Prof. Mauricio

Linguagem C

#include <stdio.h> main() { float cateto1,cateto2,hipotenusa; cateto1=3; cateto2=4; hipotenusa=s rt(cateto1*cateto1+cateto2*cateto2); printf(hipotenusa= %f,hipotenusa); }

Prof. Gilberto / Prof. Mauricio

Linguagem C

Escre er um programa em C ue dada uma temperatura em graus Celsius, con erte e imprime a temperatura em graus Farenheit OBS: Frmula de con erso F=(9/5)*(C+32)

Prof. Gilberto / Prof. Mauricio

Linguagem C

#include <stdio.h> main() { float C,D; C=25; F=(9/5)*(C+32); printf(Temperatura C= %f con ertida F = %f, C, F); }

Prof. Gilberto / Prof. Mauricio

Linguagem C

Escre er um programa em C ue dada a uantidade de chu a em polegadas con erte e imprime a temperatura em milmetros OBS: 25,4 mm = 1 polegada

Prof. Gilberto / Prof. Mauricio

You might also like