Baixe o app para aproveitar ainda mais
Prévia do material em texto
Prof. Claudio Cesar de Oliveira Cordeiro 001 claudio_cesar_cordeiro@yahoo.com.br Out 2013 Capítulo 05 Matrizes e Vetores Linguagem de Programação C++ 1 Matrizes 002 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Matrizes e Vetores Matrizes são estruturas homogêneas de dados que podem armazenar DADOS DE UM MESMO TIPO dentro de uma mesma variável! int x; Variável do tipo inteiro que só pode armazenar um número de cada vez! int fone [100]; Matriz unidimensional do tipo inteiro que pode armazenar 100 números de telefones do tipo inteiro! 2 Exemplo 01 – Média de Notas sem uso de Matriz 003 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Desenvolver um programa em C++ para calcular a Média Aritmética Geral da turma, sem usar o conceito de matriz. Seja a tabela abaixo com 4 notas de 5 alunos e a Média Aritmética calculada no Excel 2010. Matrizes e Vetores 3 004 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ #include <iostream> #define NL "\n" using namespace std; int main() { float MA1, MA2, MA3, MA4, MA5; cout << NL; cout << "Matrizes 01 - Calculo Media Sem Uso de Matriz" << NL; cout << "=============================================" << NL; cout << NL << NL; cout << "Entre a Media do Aluno 1 ..................: "; cin >> MA1; cout << "Entre a Media do Aluno 2 ..................: "; cin >> MA2; cout << "Entre a Media do Aluno 3 ..................: "; cin >> MA3; cout << "Entre a Media do Aluno 4 ..................: "; cin >> MA4; cout << "Entre a Media do Aluno 5 ..................: "; cin >> MA5; cout << NL << NL; cout << "A Media Geral da Turma eh .................: " << (MA1+MA2+MA3+MA4+MA5)/5 << NL << NL; cout << NL << NL << NL; system ("pause"); return 0; } Exemplo 01 – Solução Matrizes e Vetores #define é uma diretiva do preprocessador que substitui um determinado valor por um identificador. Em outras palavras, cria uma constante. Sintaxe: #define identificador substituição Exemplos de #define: #define NL endl #define PI 3.14159265 #define MAX 100 4 005 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Exemplo 02 – Média de Notas COM uso de Matriz Desenvolver um programa em C++ para calcular a Média Aritmética Geral da turma, USANDO O CONCEITO DE MATRIZ. Seja a mesma tabela anterior do Exemplo 01 Matrizes e Vetores 5 006 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ #include <iostream> #define NL "\n" using namespace std; int main() { float MA[5], SOMA=0; int i; cout << NL; cout << "Matrizes 02 - Calculo Media Usando Matriz" << NL; cout << "=========================================" << NL; cout << NL << NL; for (i=0;i<=4;i++) { cout << "Entre a Media ....................: "; cin >> MA[i]; SOMA = SOMA + MA[i]; } cout << NL << NL; cout << "A Media Geral da Turma eh ........: " << SOMA/5 << NL << NL; cout << NL << NL; system ("pause"); return 0; } Exemplo 02 – Solução Matrizes e Vetores 6 007 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Exemplo 03 – Média de Notas COM uso de Matriz Desenvolver um programa em C++ para receber as médias de cada aluno, calcular a Média Aritmética Geral da turma, USANDO O CONCEITO DE MATRIZ e mostrar as médias entradas. Seja a mesma tabela anterior do Exemplo 01 Matrizes e Vetores 7 008 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Exemplo 03 – Solução #include <iostream> #define NL "\n" using namespace std; int main() { float MA[5], SOMA=0; int i; cout << NL; cout << "Matrizes 03 - Media - Mostrando Elementos da Matriz" << NL; cout << "===================================================" << NL; cout << NL << NL; for (i=0;i<=4;i++) { cout << "Entre a Media ....................: "; cin >> MA[i]; SOMA = SOMA + MA[i]; } cout << NL << NL; cout << "A Media Geral da Turma eh ........: " << SOMA/5 << NL << NL; cout << NL << NL; cout << "Mostrando os Elementos da Matriz" << NL << NL; for (i=0;i<=4;i++) { cout << "O elemento " << i << " da Matriz contem o valor ....: "; cout << MA[i] << NL; } cout << NL << NL; system ("pause"); return 0; } Matrizes e Vetores 8 Armazenamento dos Elementos na Memória 009 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Matrizes e Vetores Elemento 0 MA[0] = 5.0 Elemento 1 MA[1] = 7.5 Elemento 2 MA[2] = 7.3 Elemento 3 MA[3] = 7.4 Elemento 4 MA[4] = 7.0 Os elementos da Matriz são numerados a partir de zero (0). float MA[5]; – Declaração da Matriz com CINCO (5) elementos! 9 Vetor – Declarando e Iniciando um Vetor 010 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Matrizes e Vetores Vetor é uma Matriz UNIDIMENSIONAL, isto é, tem somente uma dimensão. Nossa matriz que usamos até agora é um Vetor! float MA[5] = {5.0, 7.5, 7.3, 7.4, 7.0}; //Declara e inicia o VETOR Elemento 0 MA[0] = 5.0 Elemento 1 MA[1] = 7.5 Elemento 2 MA[2] = 7.3 Elemento 3 MA[3] = 7.4 Elemento 4 MA[4] = 7.0 10 011 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Matrizes e Vetores Exemplo 04 – Iniciando um Vetor #include <iostream> #define NL "\n" using namespace std; int main() { float SOMA=0; int i; float MA[5] = {5.0, 7.5, 7.3, 7.4, 7.0}; cout << NL; cout << "Matrizes 04 - Iniciando um Vetor - Matriz Unidimensional" << NL; cout << "========================================================" << NL; cout << NL << NL; for (i=0;i<=4;i++) { SOMA = SOMA + MA[i]; } cout << "A Media Geral da Turma eh ................: " << SOMA/5 << NL << NL; cout << NL; cout << "Mostrando os Elementos da Matriz" << NL << NL; for (i=0;i<=4;i++) { cout << "O elemento " << i << " da Matriz contem o valor ....: "; cout << MA[i] << NL; } cout << NL << NL; system ("pause"); return 0; } 11 012 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Matrizes e Vetores Exemplo 05 – Matriz Bidimensional Desenvolver um programa em C++ para receber as QUATRO NOTAS de CADA UM DOS alunos, calcular a Média Aritmética Geral da turma, USANDO O CONCEITO DE MATRIZ BIDIMENSIONAL, e mostrar esta Média Geral na tela. Seja a mesma tabela anterior do com algumas informações adicionais: 12 013 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Matrizes e Vetores Exemplo 05 – Solução - Matriz Bidimensional 13 014 claudio_cesar_cordeiro@yahoo.com.br Linguagem de Programação C e C++ Matrizes e Vetores Exemplo 05 – Solução - Matriz Bidimensional #include <iostream> #include <conio.h> #include <iomanip> #define QTE_NOTAS 4 #define QTE_ALUNOS 5 #define NL "\n" using namespace std; int main () { float notas [QTE_NOTAS][QTE_ALUNOS]; int aluno=0,nota=0; float soma=0, media=0; cout << NL; cout << "Matrizes 05 - Matriz Bidimensional Usando Comando define" << NL; cout << "========================================================" << NL << NL; for (aluno=0;aluno<QTE_ALUNOS;aluno++) { cout << NL; for (nota=0;nota<QTE_NOTAS;nota++) { cout << "Entre a Nota " << nota+1 << " do Aluno "<< aluno+1 << " ......: "; cin >> notas [aluno][nota]; soma = soma + notas [aluno][nota]; } } cout << NL << NL; cout << "Relatorio Final" << NL; cout << "===============" << NL << NL; cout << "Numero de Alunos da Turma ......................................: " << QTE_ALUNOS << NL; cout << "Quantidade de Notas Entradas ...................................:" << (QTE_NOTAS * QTE_ALUNOS) << NL; cout << "Soma Total das Notas ...........................................: " << soma << NL; media = soma/(QTE_NOTAS * QTE_ALUNOS); cout << "Media Aritmetica Geral da(s) " << QTE_NOTAS << " nota(s) do(s) " << QTE_ALUNOS << " aluno(s) eh .....: " << setprecision(2) << media; cout << NL << NL << NL; cout << "Pressione qualquer tecla para terminar o programa!"; getch(); return 0; } 14
Compartilhar