O Sistemas de Informação
Por: Ualisson Silva • 7/12/2017 • Trabalho acadêmico • 16.362 Palavras (66 Páginas) • 245 Visualizações
FACULDADE DE EDUCAÇÃO SÃO LUÍS
SISTEMAS DE INFORMAÇÃO
Apostila
Algoritmos e Programação de Computadores II
Prof. Dr. Geraldo Nunes Corrêa
Versão para a Linguagem C
Mauricio Anderson Perecim
Sumário
VARIÁVEIS COMPOSTAS HOMOGÊNEAS 1
Identificando a nota mais alta e o aluno correspondente 2
MÉTODOS DE CLASSIFICAÇÃO (ORDENAÇÃO) DE VETORES 6
Primeira Estratégia 6
Segunda Estratégia 8
VARIÁVEIS COMPOSTAS MULTIDIMENSIONAIS 9
VARIÁVEIS COMPOSTAS HETEROGÊNEAS 18
Registro 18
Registro dentro de registro 21
CONJUNTO DE REGISTROS 23
FUNÇÕES 28
PARÂMETROS DE PROCEDIMENTOS 37
MODO DE PASSAGEM DE PARÂMETROS NOS PROCEDIMENTOS 39
FUNÇÕES 47
Variáveis Compostas Homogêneas
As Variáveis Compostas Homogêneas correspondem a conjuntos de elementos de um mesmo tipo. Estas variáveis se dividem em duas categorias, as unidimensionais (vetores) e as multidimensionais (matrizes), dependendo da quantidade de índices que são necessários para a individualização de cada elemento do conjunto. Estas variáveis são conhecidas nas Linguagens de Programação (C, C/C++ etc) como arrays. Índices são variáveis do tipo inteiro que informam a posição que estávamos acessando no vetor ou na matriz, uma característica do índice na linguagem C é que ele deve iniciar no número 0 ao invés de 1 como nas demais linguagens.
Variável variável unidimensional
[pic 2][pic 3][pic 4][pic 5][pic 6][pic 7][pic 8][pic 9][pic 10]
Índice 0 1 2 3 4 5 6 7
Nota (uma nota apenas) Nota (capacidade para armazenar 8 notas)
Declaração
TIPO DE DADO NOME_VETOR [ TAMANHO ];
OBS: Não é necessário usar uma biblioteca especial para declarar os vetores
Exemplo
int vet[10];
char nome[130];
float b[5];
int a[6];
Exemplo de utilização da estrutura de vetores na definição de variáveis.
{este programa lê dez notas de alunos, armazenando-as em uma variável do tipo vetor e as imprime utilizando uma segunda estrutura de repetição FOR}
#include
#include
#include
int main(){
float nota [10]; //{declaração da variável Nota (do tipo vetor) }
int i; //{indice}
system(“cls”);
for (i=0;i<10;i++){ //{leitura das notas}
printf(“digite a nota do aluno%d: ““,i);
scanf(nota[i]);
}
system(“cls”);
for (i=0;i<10;i++){ //{impressao das notas}
printf (“A nota lida para o aluno%d foi: %5.2f “,i,nota[i]);
}
system(“pause”);
return 0;
}
Identificando a nota mais alta e o aluno correspondente
{este programa lê dez notas de alunos, armazenando-as em uma variável do tipo vetor e as imprime utilizando uma segunda estrutura de repetição FOR. Além o programa identifica a nota mais alta e o aluno correspondente na segunda estrutura de repetição}
#include
#include
#include
int main(){
float nota[10], maior;
int i,imaior;
system(“cls”);
maior=0;
for (i=0;i<10;i++){
printf (“digite a nota do aluno%d: “,i);
scanf(nota[i]);
}
system(“cls”);
for (i=0;i<10;i++){
printf(“A nota lida para o aluno %d foi %5.2f “, i,nota[i]);
//{identificação da nota mais alta}
if (nota[i] > maior) {
maior= nota[i];
imaior=i;
}
}
printf (“A maior nota da classe foi %5.2f do aluno %d”,maior, imaior);
system(“pause”);
return 0;
}
Exercício
Faça um programa que leia uma seqüência de 15 nomes de uma classe e identifique a quantidade de alunos com o nome ‘Jose”, utilizando para isso duas estruturas de repetição FOR.
Resposta
#include
#include
#include
typedef string vetor[20]; //{ declara um novo tipo de dados }
int main(){
string nomes[15]; //{variável que armazena 15 nomes}
...