Baixe o app para aproveitar ainda mais
Prévia do material em texto
Programação em C (Parte 1) Prof. Valério Rosset Profa. Mariá C. V. N. Rosset Slides adaptados do material da Profa. Rosely Sanches e Simone Senger de Souza, ICMC. Transformando o Portugol em Código (Tipos de Dados Básicos) Tipos de dados primitivos Numérico LiteralLógico Inteiro Real Caracter String Transformando o Portugol em Código (Tipos de Dados Básicos) Tipos básicos em C: Tipo inteiro é: int Variações: unsigned int, long int, unsigned long int Tipo real é: float Variações: double, long double. Tipo caracter é: char Variações: unsigned char Tipo Lógico: em C++ é: bool; em C: não há, mas pode ser utilizado um char. Transformando o Portugol em Código (Tipos de Dados Básicos ANSI C) Tipo Tamanho (bytes) Intervalo char 1 -128 a 127 unsigned char 1 0 a 255 int ou short 2 -32.768 a 32.767 unsigned int 2 0 a 65.535 long int 4 -2.147.483.647 a 2.147.483.647 unsigned long int 4 0 a 4.294.967.295 float 4 Seis dígitos de precisão double 8 Dez dígitos de precisão long double 10 Dez dígitos de precisão O nome da variável é único em todo o algoritmo. O conteúdo da variável deve ser do mesmo tipo usado na declaração da variável. O conteúdo da variável é substituído por outro que lhe será atribuído. O uso de uma variável em uma expressão representa o seu conteúdo naquele momento. O uso apenas não altera o seu conteúdo nem o tipo. Transformando o Portugol em Código (Declarando Variáveis C) Transformando o Portugol em Código (Declarando Variáveis C) Armazenamento das variáveis na memória do computador. Conteúdo Nome da variável tipo en d er e ço Transformando o Portugol em Código (Declarando Variáveis C) Forma de declaração: inteiro: idade; real: peso; caracter: sexo, nome; lógico: temfilhos; Portugol: C: int idade; float peso; char sexo, nome[30]; int temfilhos; // C (0,1) Transformando o Portugol em Código (Declarando Variáveis C) Forma de declaração: inteiro: idade; real: peso; caracter: sexo, nome; lógico: temfilhos; Portugol: C: int idade; float peso; char sexo, nome[30]; int temfilhos; // C (0,1) Reparem aqui que nessa delcaração devemos indicar o número máximo de caracteres para uma cadeia. O valor é 1 quando não especificado. Transformando o Portugol em Código (Declarando Variáveis C) Forma de declaração: inteiro: idade; real: peso; caracter: sexo, nome; lógico: temfilhos; Portugol: C: int idade; float peso; char sexo, nome[30]; int temfilhos; // C (0,1) Transformando o Portugol em Código (Declarando Variáveis C) Memória após a declaração: C ??? idade int 44 F8 ??? peso float 44 F1 0 ??? sexo char 43 3 30 ??? nome char[30] 44 F1 5 ??? temfilhos int 44 3 22 Transformando o Portugol em Código (Declarando Variáveis C) Por convenção, os nomes das variáveis utilizam letras minúsculas (maiúsculas para nome de constantes); Em C existe diferença entre maiúsculo e minúsculo: nome; NOME; Nome; (são três variáveis diferentes) Não é permitido o uso de palavras e símbolos reservadas da linguagem C Exemplo: for, while, do, if, else, +, -, !, %, / … etc Transformando o Portugol em Código (Declarando Variáveis C) EXEMPLOS DE NOMES DE VARIÁVEIS:EXEMPLOS DE NOMES DE VARIÁVEIS: Inválidos: 5x, e(13), a:b, x-y, nota/2, awq*, p&aa; Válidos: a, alpha, x, bj152, notas, h_12q; Transformando o Portugol em Código (Comando de atribuição C) Portugol C A B + C; A = B + C; A B * B; A = B * B; C sqrt (B) + 1; C = sqrt (B) + 1; letra “a”; letra = ‘a’; • Em C a atribuição é feita através do “=” ao invés de “” do Portugol. • Exemplos: 14 Transformando o Portugol em Código (Comando de atribuição C) K ← 1; TOTAL ← cor ← “VERDE” ligado ← ‘s’; k = 1; TOTAL = sqrt (N) + pow(X,2); strcpy(cor, “VERDE”) ; ligado = ‘s’; X 2N Portugol C + 15 Transformando o Portugol em Código (Comando de atribuição C) K ← 1; TOTAL ← cor ← “VERDE” ligado ← ‘s’; k = 1; TOTAL = sqrt (N) + pow(X,2); strcpy(cor, “VERDE”) ; ligado = ‘s’; X 2N Portugol C + constante numérica expressão aritmética constante literal 16 Transformando o Portugol em Código (Comando de Entrada C) O comando de entrada é utilizado para receber dados digitados pelo usuário (DADOS DE ENTRADA) e armazená-los em variáveis. Os dados de entrada são fornecidos ao sistema através de uma unidade de entrada, por exemplo o teclado. NOME MEMÓRIA dado s Transformando o Portugol em Código (Comando de Entrada C) Portugol C leia(nome); leia(num); scanf(“%s”, &nome); scanf(“%d”, &num); leia(salario); scanf(“%f”, &salario); leia(sexo); sexo = getch(); leia(num1, num2); scanf(“%d %d”, &num1, &num2); Mariah Highlight Mariah Highlight 18 Na execução de um comando de entrada, o processamento é interrompido, até que sejam fornecidos, via unidade de entrada, valores para os dados de entrada. Os valores digitados pelo teclado devem ser separados pela digitação da tecla <ENTER> Os identificadores são separados por vírgula Transformando o Portugol em Código (Comando de Entrada C) 19 O comando de saída é utilizado para que o sistema forneça, numa unidade de saída, os resultados do processamento e mensagens. NOME MEMÓRIA Resultados de Processamento Mensagens Transformando o Portugol em Código (Comando de Saída C) 20 Resultados de Processamento: podem ser fornecidos através de conteúdos de variáveis, conteúdos de constantes e resultados de expressões aritméticas e lógicas. Mensagens: são utilizadas para que o programa dê informações ao usuário a respeito do processamento que está se realizando. Podem ser fornecidas através de conteúdo de variáveis, ou constantes do tipo string ou da mensagem propriamente dita. Transformando o Portugol em Código (Comando de Saída C) Transformando o Portugol em Código (Comando de Saída C) Portugol C escreva(nome); escreva(nome, num); printf(“%s”, nome); escreva(“valor inválido!”); printf(“%s %d”, nome, num); printf(“valor inválido!”); Transformando o Portugol em Código (Comando de Saída C) Portugol C escreva(nome); escreva(nome, num); printf(“%s”, nome); escreva(“valor inválido!”); printf(“%s %d”, nome, num); printf(“valor inválido!”); Para pular linha na saída podemos utilizar o caractere “\n”: Ex: printf(“%s \n”, nome); Transformando o Portugol em Código (Comando de Saída C) Portugol C escreva(nome); escreva(nome, num); printf(“%s”, nome); escreva(“valor inválido!”); printf(“%s %d”, nome, num); printf(“valor inválido!”); %c caractere simples %d decimal %e notação científica %f ponto flutuante %o octal %s cadeia de caracteres %u decimal sem sinal %x hexadecimal %ld Long double Transformando o Portugol em Código (Comando de Saída C) Ex: printf(“Olá, Mundo!”); printf(“Olá,\n Mundo!”); Olá, Mundo! Olá, Mundo! Transformando o Portugol em Código (Comando de Saída C) Operadores Aritméticos (C) Operadores Aritméticos Precedência Operadores Relacionais Operadores Relacionais (Precedência) Estrutura do Programa em C Os programa escritos em C tem uma estrutura básica bem definida. Nome do Programa,Delcaração de Bibliotecas, variáveis globais, constantes, etc … Parte Inicial Bloco principal Função main() principal, outros métodos,funções e procedimentos. Estrutura do Programa em C // Program: helloworld // Author: Valério Rosset; RA: XXXXX // Version: 1.0, date 10th Jun 2013 #include <stdio.h> int main() // Bloco Principal do Programa { //Inicio //Saída printf("Hello World!"); return 0; } //Fim. Estrutura do Programa em C // Program: helloworld // Author: Valério Rosset; RA: XXXXX // Version: 1.0, date 10th Jun 2013 #include <stdio.h> int main() // Bloco Principal do Programa { //Inicio //Saída printf("Hello World!"); return 0; } //Fim. Informações sobre o programa Bibliotecas Bloco Principal Estrutura do Programa em C int main() // Bloco Principal do Programa { //Início //Saída printf("Hello World!"); return 0; } //Fim. A função é uma estrutura que deve sempre retornar um valor de resposta. Em C sempre será do tipo inteiro. A função principal sempre será “int main()”. A função principal sempre retornará um valor inteiro. Estrutura do Programa em C int main() // Bloco Principal do Programa { //Início //Saída printf(“Hello World!"); return 0; } //Fim. “//” definem os comentários no programa Estrutura do Programa em C int main() // Bloco Principal do Programa { //Início //Saída printf("Hello World!"); return 0; } //Fim. Chaves demarcam o inicio e o fim do bloc principal e também de qualquer estrutura. Escrevendo seu primeiro Programa em C Abra a ferramenta de desenvolvimento CodeBlocks no seu computador e escreva o programa Helloworld. Siga os passos que o professor irá indicar. Transforme o algoritmo da média aritmética em um programa em C. Algoritmo Média Aritmética 1. início // começo do algoritmo 2. //declaração de variáveis 3. inteiro: nota1, nota2, nota3, nota4; // notas bimestrais 4. real: mediaAnual; // média anual 5. //entrada 6. leia(nota1); 7. leia(nota2); 8. leia(nota3); 9. leia(nota4); 10. //processamento 11. mediaAnual (nota1+nota2+nota3+nota4) / 4; 12. //saída 13. Escreva(mediaAnual); 14. fim // fim do algoritmo Exercício 1 Escreva um algoritmo em C estruturado para calcular o volume de uma esfera de raio R fornecido pelo usuário: 3 3 4 RV 14,3 Exercício 2 Escreva um algoritmo em C para calcular a quantidade (em litros de tinta) necessária e o custo para pintar um tanque cilindrico de combustível. Dados: Cada litro de tinta de custa R$ 10,00; 1 litro por 3 metros quadrados; Área do cilindro = 2* área da base + área lateral; Entrada: altura, e raio; Saída: quantidade, custo; )( 2rAB rhAL 2 14,3 1. início 2. constante pi 3,14; 3. //declaração de variáveis 4. real: altura, raio, areaLateral, 5. areaBase, areaTotal, qtdLitros; 6. //entrada 7. leia(altura); 8. leia(raio); 9. //processamento 10. areaBase pi*raio*raio; 11. areaLateral (2*pi*raio*altura); 12. areaTotal 2* areaBase + areaLateral; 13. qtdLitros areaTotal/3; 14. custo qtdLitros * 10,00; 15. //saída 16. escreva(qtdLitros); 17. escreva(custo); 18. fim // fim do algoritmo Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 2- Comando de Entrada Slide 17 Slide 18 3- Comandos de Saída Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30 Slide 31 Slide 32 Slide 33 Slide 34 Slide 35 Slide 36 Slide 37 Slide 38 Slide 39 Slide 40
Compartilhar