Vetores, Matrizes e Funções

Slides:



Advertisements
Apresentações semelhantes
Funções em C Prof. Fabiano Utiyama.
Advertisements

Programação em Java Prof. Maurício Braga
Um programa em C Bibliotecas Variáveis globais
V Procedimentos – são estruturas que agrupam um conjunto de comandos, que são executados quando o procedimento é chamado. v Funções – são procedimentos.
Linguagem C Marco Reis.
Construção de Algoritmos AULA 07
Programação II Estruturas de Dados Aula 01
LINGUAGEM C.
Estruturas de Dados II Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Linguagem PHP Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Linguagem C Strings.
Linguagem C Funções.
Vetores, Matrizes e Funções
Estruturas de Dados Homogêneas Unidimensionais – Vetores e Strings
Ponteiros em Linguagem C
Slides Prof. Jean SIMÃO Revisão: Prof. João FABRO
Estruturas de Dados Homogêneas Multidimensionais – Matrizes
Matrizes e Funções - Continuação
Fundamentos de Programação 1
1MF. Vectores Tipo de dado usado para representar um CONJUNTO de dados do um mesmo tipo Estrutura de dados homogénea unidimensional Ex: Ler a nota de 3.
Revisão da Linguagem C.
O Portal do Estudante de Computação
APRESENTAÇÃO: GIANCARLO DE GUSMÃO GONÇALVES CURSO DE C AULA 08: Tipos Estruturados.
PROGRAMAÇÃO ESTRUTURADA II
PROGRAMAÇÃO ESTRUTURADA II
Linguagem de Programação II Parte V
CADEIA DE CARACTERES (Strings)
Construção de Algoritmos Professor: Aquiles Burlamaqui Construção de Algoritmos AULA 07 Aquiles Burlamaqui UERN
Estrutura de dados II Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Programação II Estruturas de Dados Aula 02 - continuação
Seminário 1: Revisão de C
UNIDADE 5 ESTRUTURAS DE DADOS HOMOGÊNEAS
Aula 10 - Armazenamento de Dados em Registros
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014
Técnicas de Desenvolvimento de Programas
F UNÇÕES : PASSAGEM DE PARÂMETROS Aluno:Kaynã Vasconcelos Santos Matéria: Estrutura de dados e algoritmos I Turma: Professor: Danilo Silva dos Santos.
Linguagem de Programação
Vetor Prof. Guilherme Baião S. Silva Adaptações:
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
Algoritmos - Profa. Alciléia1 Profa. Maria Alciléia Alves Rocha Funções em C 2011.
Uso de parâmetros na linha de comando. Parâmetros da função main:
Introdução à Linguagem C
Declarando e Chamando Funções
Aula Prática 3 Funções Monitoria Introdução à Programação.
 São utilizadas para dividir um código maior (mais complexo) em partes menores (mais simples).  Quando uma mesma tarefa é realizada várias vezes em um.
Joaquim José Hangalo  Podemos entender a memória do computador como um conjunto de células que armazenam informações.  Cada célula.
Estruturas de Dados Aula 6: Cadeias de Caracteres
Wellington Felix.  Criada por Brian Kernighan e Denis Ritchie, na década de 1970, para uso em um computador DEC PDP-11 em Unix  C++ é uma extensão da.
Prof. Alessandro Gonçalves
Comando de Seleção switch
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo III Comandos de Controle.
Programação de Computadores I – Arquivos
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo IX Subprogramação e Recursividade.
Aula Prática 3 Funções Monitoria Introdução à Programação.
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação Versão: _01.
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Programação Computacional Aula 8: Entrada e Saída pelo Console Prof a. Madeleine Medrano
Programação Computacional Aula 9: Meu primeiro programa em C
Introdução à Programação Engenharia da Computação Aula Prática 3 Funções Monitoria
PROGRAMAÇÃO II – PARTE 6 Profa. Maria Augusta Constante Puget.
Linguagem de Programação
Computação – Informática Aula N. 05 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Matrizes em C”
Fundamentos de Programação 1 Aula N. 02 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Laços de Repetição em C”
Fundamentos de Programação 1 Slides C – Número 4 Prof. SIMÃO Jean Marcelo SIMÃO Estrutura de Dados Homogêneas “vetores de números e de caracteres”
Estrutura de Dados STRUCTS Dilvan Moreira. Objetivos  Entender o que são e como usar:  Estrutura de Dados para a Linguagem C  Structs (Registros)
Fundamentos de Programação 1 Aula N. 02 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Laços de Repetição em C” 1.
Fundamentos de Programação 1 Linguagem C Slides 03 – ‘Vetores’ Prof. SIMÃO Jean Marcelo SIMÃO Estrutura de Dados Homogêneas “Vetores” 1.
FUNÇÕES Dilvan Moreira (baseado em material de Z. Liang)
Computação – Informática Aula N. 05 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Matrizes em C” 1.
Fundamentos de Programação 1
Transcrição da apresentação:

Vetores, Matrizes e Funções Linguagem C Vetores, Matrizes e Funções

Revisão de Funções O que são “Funções”? (ou subprogramas ou subrotinas) São trechos de código fonte agrupados sob um nome, que podem ser chamados sempre que for necessário executar uma determinada ação programada neste trecho;  Como usar funções? Atribui-se um nome à uma seqüência de comandos, e faz-se referência a este nome nos vários lugares do programa onde a seqüência em questão deveria ser repetida.

Revisão de Funções Resumo: Principais motivações para uso das funções! Por que usar funções? Evita escrita repetida de código (uma certa seqüência de comandos deve ser repetida em vários lugares de um programa). Economiza o tempo gasto com o trabalho de copiar estas seqüências; Evitar a necessidade de mudar em múltiplos lugares caso deseje alterar o seu funcionamento; Dividir grandes tarefas de computação em tarefas menores: Facilita o gerenciamento de grandes sistemas e Aumenta a confiabilidade dos mesmos. Resumo: Principais motivações para uso das funções! Evitar repetição de código Modularização

Revisão de Vetores tipo nomedovetor[DimMax]; Onde: Vetores são Estruturas de Dados Homegêneas, isto é, capazes de armazenar uma quantidade pré-definida de valores do mesmo tipo Necessitam de apenas um índice de acesso. Declaração: tipo nomedovetor[DimMax]; Onde: tipo:um dos tipos primitivos de dados em C (char, int, float, double) nomedovetor: segue as mesmas regras das variáveis básicas DimMax: define o número máximo de elementos do vetor pode ser uma expressão constante inteira

Revisão de Vetores #include <stdio.h> #include <stdlib.h> #define NUM_ALUNOS 3 int main( ) { float notas [NUM_ALUNOS]; float media_turma = 0.0; int i; for ( i = 0; i < NUM_ALUNOS; i++ ) printf ("Digite a nota do %d o. aluno: ", i+1); scanf ("%f", &notas[i]); } media_turma += notas[i]; media_turma = media_turma / NUM_ALUNOS ; printf ("A media da turma eh %.2f \n", media_turma); system ("Pause"); return 0;

Vetores e Funções #include <stdio.h> #include <stdlib.h> #define NUM_ALUNOS 3 float media ( float notas[], int n ) { int i = 0; float m = 0.0; for ( i = 0; i < n; i++ ) m = m + notas[i] ; } m = m / n; return m; int main( ) { float notas [NUM_ALUNOS]; float media_turma; int i; for ( i = 0; i < NUM_ALUNOS; i++ ) printf ("Digite a nota do %d o. aluno: ", i+1); scanf ("%f", &notas[i]); } media_turma = media ( notas, NUM_ALUNOS ); printf ("A media da turma eh %.2f \n", media_turma); system ("Pause"); return 0;

Vetores e Funções E para calcular o número de alunos com notas acima da média? A função de cálculo de média pode ser a mesma já utilizada..... E agora criamos a função de cálculo da quantidade de alunos acima da média! #include <stdio.h> #include <stdlib.h> #define NUM_ALUNOS 3 float media ( float notas[], int n ) { int i = 0; float m = 0.0; for ( i = 0; i < n; i++ ) m = m + notas[i] ; } m = m / n; return m;

Vetores e Funções int conta_alunos_acima_da_ media ( float notas[], int n, float media) { int i, conta = 0; for ( i = 0; i < n; i++ ) if (notas[i] > media) conta += 1; } return conta;

Vetores e Funções int main( ) { float notas [NUM_ALUNOS]; float media_turma; int i, melhores_alunos; for ( i = 0; i < NUM_ALUNOS; i++ ) printf ("Digite a nota do %d o. aluno: ", i+1); scanf ("%f", &notas[i]); } media_turma = media ( notas, NUM_ALUNOS ); printf ("A media da turma eh %.2f \n", media_turma); melhores_alunos=conta_alunos_acima_da_ media(notas, NUM_ALUNOS, media_turma); printf (“E o numero de alunos com nota acima da media foi: %d .\n”, melhores_alunos); system ("Pause"); return 0;

Vetores e Funções Desafio 1: Alterar o programa anterior para: Receber duas notas bimestrais de cada aluno; Verificar se cada nota está entre 0.0 e 10.0; Calcular a média de cada aluno (e armazenar o valor em um vetor); Modificar o programa para apresentar os seguintes resultados: média geral da turma; número de alunos com média individual acima da média da turma.

Matrizes e Funções Será que é possível “passar matrizes” por parâmetro? Se sim, como?

Matrizes e Funções int main() { #include <stdio.h> #include <stdlib.h> #define NUM_ALUNOS 3 int main() { float notas [NUM_ALUNOS][2], media_turma; int i; for ( i = 0; i < NUM_ALUNOS; i++ ) printf ("Digite a 1a. nota do %d o. aluno \n: ", i+1); scanf ("%f", &notas[i][0]); printf ("Digite a 2a. nota do %d o. aluno \n: ", i+1); scanf ("%f", &notas[i][1]); } media_turma = media_geral ( notas, NUM_ALUNOS ); printf ( "A media da turma eh %.2f \n", media_turma); system ("Pause"); return 0;

Matrizes e Funções float media_geral ( float notas[][2], int n ) { int i = 0; float m = 0.0; float notaaluno = 0.0; for ( i = 0; i < n; i++ ) notaaluno = ( notas[i][0] + notas[i][1] )/2; m = m + notaaluno; } m = m / n; return m;

Exercício Complementar: Elabore um programa que manipule os dados para uma sala de 40 alunos. O programa deve receber como entrada (via leitura de teclado): Os nomes dos alunos (máximo 50 caracteres). As duas notas parciais. O programa deve calcular e imprimir, numa mesma linha, para cada aluno: O nome e a média final. E também deve apresentar: A maior média da turma, e a menor média da turma. A quantidade de alunos aprovados, reprovados e em exame. Uma listagem com o nome dos alunos que irão para a final.