1 / 22

Iniciação à linguagem C++

Programação em C++. Iniciação à linguagem C++. 1º Programa em C++. Um programa em C++ é constituído por: Várias funções, das quais uma obrigatoriamente tem que se chamar main. A função main(), como qualquer outra é definida : por um cabeçalho constituído por:

Download Presentation

Iniciação à linguagem C++

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programação em C++ Iniciação à linguagem C++

  2. 1º Programa em C++ • Um programa em C++ é constituído por: • Várias funções, das quais uma obrigatoriamente tem que se chamar main. • A função main(), como qualquer outra é definida : • por um cabeçalho constituído por: • tipo de dados que a função devolve. • o seu nome. • parâmetros formais que recebe. • por um corpo (definido entre “{ }”) com : • declarações • definições • instruções • comentários • Inclusão de ficheiros header com: • protótipos de funções, macros, instruções, declarações de tipos #include <iostream.h> int main() { // Mensagem a mostrar no ecra. cout << "Hello, World!\n"; return 0; } Iniciação à linguagem C++

  3. Outro exemplo Ex . - Mostrar a equivalência entre números decimais, hexadecimais e octais #include<iostream.h> #include<iomanip.h> void main() { int fim,inc,num; // Primeira linha (declaracoes). fim=16; // Segunda linha (afectação). inc=1; // Terceira linha (afectação). // Quarta linha (expressão). cout << "decimal hexadecimal octal" << endl; // Quinta linha (instrução for). for (num =0; num <= fim ;num= num + inc) cout << dec <<num<<´-´<< hex <<num<<´-´<< oct <<num<<endl; } Iniciação à linguagem C++

  4. Ambiente de desenvolvimento • - editor • compilador • linker/locator • debugger Iniciação à linguagem C++

  5. Sempre que um programa for constituído por vários módulos, torna-se necessário criar um projecto, indicando quais os módulos que devem ser ligados, na fase de criação do programa final. Fases de geração de um programa Iniciação à linguagem C++

  6. Palavras chave do C++ O C++ (como qualquer linguagem) define um conjunto de palavras que não podem ser usadas para objectivos diversos do seu significado. Iniciação à linguagem C++

  7. Declarações e definições Em C++ qualquer identificador tem que ser declarado antes de ser usado. Declarar uma entidade, consiste exclusivamente em anunciar a sua existência, explicitando-lhe o nome e o tipo. No entanto, a maior parte das declarações, são também definições, isto é, definem a entidade que passa a ser designada por esse nome. int y; // variável y do tipo inteiro /*variável do tipo char, iniciada com o caracter 'k'.*/ char c='k'; extern int x; float sqrt ( float ); Iniciação à linguagem C++

  8. Cálculo da área de um circulo Operadores e expressões Com variáveis e operadores, constroem-se expressões a que ficam associados valores. Expressões operam sobre variáveis de forma a produzir novos valores. Como constituintes de um programa, constam também operadores aritmético, lógicos e relacionais ( +, -, *, /, =, &&, ||, etc. ). #include <iostream.h> // Directiva para o pré processador. void main() { // Declaração (definição e iniciação) de uma constante do tipo float. const float pi = 3.14159265; int raio; // Declaração (definição) de um inteiro. float area; // Declaração (definição) de um float. // Instruções de saída e entrada de dados cout << "Qual o raio do circulo? "; cin >> raio; area = pi * ( raio * raio ); // Aqui têm que existir conversões de tipos. cout << "A area e’ " << area << endl; // Escrita do área no ecrã. } Iniciação à linguagem C++

  9. A partir dos tipos de variáveis básicos, definem-se outros tipos de variáveis ditos tipos derivados, tais comoarrays, enumerados, apontadores, referências, estrutura e uniões desses tipos fundamentais (ou básicos). Tipos primitivos de dados e sua representação Iniciação à linguagem C++

  10. Alcance e espaço de memória ocupado Iniciação à linguagem C++

  11. 12345678901234567890 255 255 1250500750 99.99895 Representação de dados formatados no stdout #include <iostream.h> #include <iomanip.h> void main() { int int_num = 255; float float_num = 99.99895; // long int por omissão. long big_num = 1250500750.75; cout <<"12345678901234567890\n"; cout << int_num << endl; cout << setw(6) << int_num << endl; cout << big_num << endl; cout << float_num << endl; } Qual será o output deste programa Iniciação à linguagem C++

  12. Operadores - Precedência e ordem de avaliação (1) Iniciação à linguagem C++

  13. Operadores - Precedência e ordem de avaliação (2) Iniciação à linguagem C++

  14. Instrução de controlo de execução Decisão binária - if Programa em C++ #include <iostream.h>void main() { int year; cout << "Ano -> "; cin >> year; if (year%400 == 0 || year%4 == 0 && year%100 != 0) cout << "E’"; else cout << "Nao e’"; cout << " um ano bissexto." << endl;} O ano é bissexto? Iniciação à linguagem C++

  15. Operador condicional ternário (?:) O operador condicional ternário é uma forma compactada de exprimir uma acção condicional if-else; modulo_n = (n<0) ? -n: n; if (n<0) modulo_n=-n; else modulo_n=n; Iniciação à linguagem C++

  16. Instrução de controlo de execução Decisão múltipla - switch Iniciação à linguagem C++

  17. Quantos dias faltam até ao fim do mês? #include<iostream.h> void main() { int dia, mes, a, numDias; cout << "Dia -> "; cin >> dia; cout << "Mes -> "; cin >> mes; cout << "Ano -> "; cin >> a; if ( mes > 0 && mes <= 12) switch (mes) { case 2 : numDias = 28 + (a%400 == 0 || a%4 && a%100 != 0); break; case 4 : case 6 : case 9 : case 11: numDias = 30; break; default: numDias = 31; } else numDias = 0; if (dia > 0 && dia <= numDias) cout << "Faltam " << (numDias - dia) << "dias." << endl; else cout << "Data invalida." << endl; } Iniciação à linguagem C++

  18. Instruções de controlo de execução Repetição condicional - while, for, do-while Iniciação à linguagem C++

  19. Adivinhar um nº entre 0 e 7 em 3 tentativas (1) Arvore de decisão binária Iniciação à linguagem C++

  20. Adivinhar um nº entre 0 e 7 em 3 tentativas (2) Fluxograma Programa em C++ #include <iostream.h>#include <ctype.h>void main() { cout << "Pense num numero de 0 a 7 " " e prima uma tecla."; cin.get(); // Adivinhar o número. int number = 0; for(int i = 4 ; i > 0; i /= 2) { char ch; cout << "\nE’ maior ou igual que " << (i + number) << " (S/N)?"; cin >> ch; if (toupper(ch) == 'S') number += i; } cout <<"\nO numero que pensou e’ ” << number <<'.' << endl;} Iniciação à linguagem C++

  21. Instruções de transferência de controlo break e continue void main() { char buf[80]; cout << "Escreve uma string : "; cin.getline(buf, 80, '\n'); for(int i = 0; i < strlen(buf); ++i) if(buf[i] != '@') continue; else { cout << "Caracter '@' encontrado na posição " << i << endl; break; } if ( i == strlen(buf) ) cout << "caracter '@' não encontrado!" << endl; cout << “BYE” << endl; } Iniciação à linguagem C++

  22. Instruções de transferência de controlo goto #include <iostream.h>#include <ctype.h>void main() { char ch; cout<<"O programa verifica se um inteiro e' capicua.\n"; do { unsigned long number, invNumber = 0; cout <<"Escreva o inteiro - "; cin >> number; while ( number ) { int digit = (int) (number % 10); if ( (number/=10) == invNumber || number == (invNumber = invNumber * 10 + digit)) { cout << "Muito bem, o inteiro escrito"; goto endProgram; } } cout<<"Nao e' capicua.\nQuer tentar de novo (S/N) ? "; cin>>ch; } while ( tolower(ch) == 's’ ); // Repetir até basta. cout << "Por exemplo 12321";endProgram: cout << " e' capicua." << endl;} E´capicua? Iniciação à linguagem C++

More Related