Upload
others
View
11
Download
0
Embed Size (px)
Citation preview
Faculdade de Engenharia da ComputaçãoFaculdade de Engenharia da ComputaçãoFaculdade de Engenharia da ComputaçãoFaculdade de Engenharia da ComputaçãoDisciplina: Lógica de Programação
Características fundamentais de codificação de programas
1
codificação de programas
Site : http://www1.univap.br/~wagner/ec.htmlProf. Responsáveis
Wagner Santos C. de Jesus
Conceitos da Linguagem de Programação Cde Programação C
2
Linguagem B
Essa linguagem é resultante de um processoevolutivo de linguagens. O marco inicial foi umalinguagem chamada BCPL, desenvolvida porMartin Richards, que teve forte influência em
3
Martin Richards, que teve forte influência emuma linguagem denominada B, inventada porKen Thompson. Na década de 1970, B levou aodesenvolvimento de C.
Padrão C
• C K&R: Em 1978, Ritchie e Kernighan publicaram aprimeira edição do livro The C Programming
Language.
• C ANSI: Em 1983, “American National StandardsInstitute” – ANSI, estabeleceu um comitê para
4
Institute” – ANSI, estabeleceu um comitê paradefinir um padrão que guiasse todas asimplementações da linguagem C.
• ISO/IEC 9899:1990: Em 1990, o padrão C ANSI foiadotado pela Organização Internacional de Padrões(ISO).
C++
• É uma extensão da linguagem C. As instruçõesque fazem parte desta última representam umsubconjunto da primeira.
• Os incrementos encontrados na linguagem C++
5
• Os incrementos encontrados na linguagem C++foram feitos para dar suporte à programaçãoorientada a objetos.
• A sintaxe desta linguagem é basicamente amesma da linguagem C.
Estrutura de um Programa em CPrograma em C
6
Estrutura de um programa C
//Inclusão das bibliotecas
//Declaração de variáveis globais - opcional
//Declaração de funções – opcional
main() { main() {
<Instruções de um raciocínio lógico>
}
7
main(): Função
Vem a ser a função mãe da linguagem cpossibilitando que desencadeamento dequalquer programa seja iniciado porintermédio da mesma.
Rotina-1
8
main()
Rotina-1R
otin
a-2
Ro
tin
a-4
Rotina-3
Conceito de delimitadores
São símbolos designados paradeterminar inicio e fim deinstruções, expressões ouinstruções, expressões oucomentários.
9
Conceitos Delimitadores
• { - indica início de um bloco de nível
• } – indica fim de um bloco de nível
• // - comentar uma linha
• /* - início do comentário de múltiplas linhas
10
• /* - início do comentário de múltiplas linhas
• */ - final do comentário de múltiplas linhas
• ; - necessário no final de toda linha que represente: instrução, atribuição e declaração.
Conceito de Biblioteca
11
Biblioteca
Conhecida como libc são biblioteca derotinas padronizada da linguagem deprogramação que contém operações comuns comotratamento de entrada/saída, cadeia de caracteres etratamento de entrada/saída, cadeia de caracteres emanipulação numérica.
12
#include
A instrução Include permite realizar inserçãode rotinas (programas) em um programaprincipal.
13
Biblioteca ProgramaPrincipal
Arquivos (.h) Header
• stdio.h – contem os comandos básicos de entradae saída do programa.
• stdlib.h – contem os comandos básicos dalinguagem C
• conio.h – geralmente é utilizada em programasbásicos para utilizar a função “getch();” utilizado
• conio.h – geralmente é utilizada em programasbásicos para utilizar a função “getch();” utilizadopara colocar o programa em modo de espera dapróxima ação do usuário, muito útil paravisualizar os resultados de um programa.
• math.h – contem os comandos matemáticos maisavançados, por exemplo, cálculo de potências.
14
Tipos de variáveis
Tipo Faixa de valores Tamanho(aproximado)
char -128 a 127 8 bits
unsigned char 0 a 255 8 bits
int -32.768 a 32.767 16 bits
unsigned int 0 a 65.535 16 bits
15
unsigned int 0 a 65.535 16 bits
short int -32.768 a 32767 16 bits
long -2.147.483.648 a 2.147.483.647 32 bits
unsigned long 0 a 4.294.967.295 32 bits
float 3.4 x 10-38 a 3.4 x 1038 32 bits
double 1.7 x 10-308 a 1.7 x 10308 64 bits
long double 3.4 x 10-4932 a 1.1 x 104932 80 bits
Estrutura sintática (Atribuição)
Varm = alocexpression
expressionexpression
16
Atribuição de valores
#include <stdio.h>
#include <stdlib.h>
main() {
int a = 222;int a = 222;
float x = 3.45;
}
17
Estrutura de Entrada e Saída
scanf lvalue
Entrada
( )
printf expression
Saída
18
( )
Conceito de IDE
Integrated DevelopmentEnvironmentEnvironment
(Ambiente de Desenvolvimento Integrado)
19
IDE
São programas de computadorque agilizam o processo dedesenvolvimento de aplicações.desenvolvimento de aplicações.
20
IDE – DevC++
21
Funcionamento da IDE
IDE
22
Compilador
Formatos válidosFormato Tipo do Valor
%d Valor inteiro decimal
%f Valor em ponto flutuante
%c Caracter em formato ASCII
%s String de caracteres
23
%s String de caracteres
%u Inteiro decimal sem sinal
%i Valor inteiro decimal, Hexa ou Octal
%o Valor inteiro octal
%x Valor inteiro hexadecimal
%% Caracter %
\n Pula uma linha após impressão
Comandos de Saída Saída
24
Comandos de saída
Um comando de saída envia dados para tela ou uma impressora.
Exemplo:Exemplo:
printf(“Texto %t”, a);
25
Formatações utilizadas na saída.
\t - insere uma tabulação
\n - insere uma quebra de linha
%S.Yf – limita o número de casas decimais, onde“S” é o número de digitos antes do separadordecimal e “Y” é o número de digitosrepresentado após o ponto.
26
Exemplo :
double a = 2.2;
printf("%2.3f\n",a);
Resultado : 2,200
int b = 255;
printf("%4d\n",b);
Resultado : b255
b = Espaço em branco
int b = 255;
printf("%X\n",b);
Resultado : FF
printf("%o\n",b);
Resultado : 377Resultado : 377
int ch = 97;
printf("%c\n",ch);
Resultado : a
int a = 2;
printf("%d %%",a);
Resultado : 2 %
printf("%d %2d %3d\n",3,5,7);
Resultado : 3bb5bbb7
char str1[3] = “ana”;
printf("%s\n",str1);
Resultado : ana
double a = 2.2;
char[3] st = “ana”;char[3] st = “ana”;
printf("%s %1.1f\n",st,a);
Resultado : ana 2,2
Comandos de Entrada de dadosdados
31
Instrução scanf()
Captura uma cadeia ou um valor do teclado.
Sintaxe:
scanf(<formato>,<&Endereco_Memoria>);
32
Exemplo scanf()
Exemplo de entrada de dados com inteiro.int a=0;float k = 0; char b;scanf(“%d”,&a);scanf(“%d”,&a);scanf(“%f”,&k);scanf(“%c”,&b);char m;scanf("%c",&m);
33
Função gets()
Captura uma cadeia decaracteres dada pelo teclado.
Exemplo:Exemplo:
char s[30];
gets(s);
34
Observação
Diferença entre scanf() e gets():
Quando usado o scanf() ao pressionar a tecla<ENTER> todos os caracteres até o primeiro espaçoserão armazenado na memória, todos os outrosserão descartados.serão descartados.
Quando usado gets() ao pressionar a tecla <ENTER>todos os caracteres digitados serão gravados namemória sem exceção.
35
Entrada de dados um número e uma string
int x;
char s[30];
scanf("%d",&x);scanf("%d",&x);
scanf("%s",&s);
Se escrevermos apenas uma palavra a entradapara a variável (s) será válida caso contrario não.
36
Entrada de dados do tipo string
char s[30];
gets(s);
Se neste caso a entrada para a variável(s), será válida se colocarmos, uma oumais palavras.
37
Algortimo “Exemplo”Var
a,b,s:realinicioescreva(“Entre com o valor da variável a”)leia(a) escreva(“Entre com o valor da variável b”)leia(b)S = a+bescreval(“Soma a + b = %f ”,s)} #include <stdio.h>
#include <stdlib.h>
38
}#include <stdlib.h>int main(void){ float a,b,s;printf(“Entre com o valor da variável a\n”);scanf(“%f”,&a); printf(“Entre com o valor da variável b\n”);scanf(“%f”,&b);s=a+b;printf(“Soma a + b = %f \n”,s);}
Operadores de Incremento e Decremento.
++ => Equivalente à x++ / x = x + 1++ => Equivalente à x++ / x = x + 1
_ _ => Equivalente à y-- / y = y - 1
Se a for igual a 3. Exemplo.
b = a++ (O valor da variável b será 3 e davariável a = 4).
b = ++a ( O valor da variával b será 4 e davariável a = 4).
Obs : Idem para operação de subtração