tipo
<registro> = registro
<campo1>: <tipo1>;
<campo2>: <tipo2>;
...
<campoN>: <tipoN>;
fim;
type
<registro> = record
<campo1>: <tipo1>;
<campo2>: <tipo2>;
...
<campoN>: <tipoN>;
end;
type
TipoAluno = record
Nome: string[30];
Matricula: string[8];
Media: real;
Frequencia: integer;
end;
var Aluno: TipoAluno;
type
TipoProfessor = record
Nome: string[30];
Codigo: string[8];
Salario: real;
Ingresso: string[8];
end;
var Prof: TipoProfessor;
program RelTurma;
type
TipoAluno = record
Nome: string[30];
Matricula: string[8];
Media: real;
Frequencia: integer;
end;
var
Aluno: TipoAluno;
Aprovados,
Reprovados : integer;
begin
Aprovados := 0;
Reprovados := 0;
write('Nome:'); readln(Aluno.Nome);
while Aluno.Nome <> 'fim' do
begin
write('Matricula:'); readln(Aluno.Matricula);
write('Media:'); readln(Aluno.Media);
write('Frequencia:'); readln(Aluno.Frequencia);
if (Aluno.Media >= 7) and (Aluno.Frequencia >= 60) then
Aprovados := Aprovados + 1
else
Reprovados := Reprovados + 1;
write('Nome:'); readln(Aluno.Nome);
end;
writeln('Total de Aprovados:', Aprovados);
writeln('Total de Reprovados:', Reprovados);
end.
44) Escreva um programa para ler os dados dos professores de um curso, a saber: nome, código, salário e ingresso. Exibir o número de professores com salário acima de R$ 500,00 e com ingresso após 01/01/2000.
45) Ajuste o algoritmo RelTurma de forma que: seja exibido o número de aprovados, reprovados por média, reprovados por falta e o cálculo da média da turma.
46) Escrever um programa para ler os dados dos atletas de um clube (nome, idade, sexo, altura e peso) e determinar o número de atletas (1) do sexo masculino com peso inferior a 80, (2) com mais de 25 anos com altura superior a 1,75 e (3) com altura entre 1,60 e 1,75 ou com peso superior a 55.
47) A firma de entrega de encomendas deseja identificar: (1) o maior nº de entregas efetuadas por um funcionário num dia de trabalho e (2) o menor tempo, em horas gasto por um funcionário para efetuar as entregas num dia de trabalho Para tanto, foi encomendado um algoritmo que lê (diariamente): o código do funcionário, o número de entregas efetuadas por este (funcionário) e o tempo gasto por este (funcionário) para efetuar as entregas.
48) Implementar programa correspondente à questão 45.
| 100 | 4 | 20 | 33 | 51 |
| 'A1' | 'A2' | 'A3' |
| 'B1' | 'B2' | 'B3' |
| 'C1' | 'C2' | 'C3' |
type <ident> = array [1..N] of <Tipo>;
type TipoVetor = array [1..10] of integer;
var Vetor: TipoVetor;
type <ident> = array [1..L, 1..C] of <Tipo>;
type
TipoMatriz = array [1..5, 1..12] of real;
{ Balanço anual de vendas de uma rede de lojas: 5 unidades x 12 meses }
var Matriz: TipoMatriz;
program MaiorQueMedia;
type
TipoVetor = array [1..100] of real;
var
Vetor: TipoVetor;
N, I: integer;
Soma,
Media: real;
begin
Soma := 0;
write('N:'); readln(N);
for I := 1 to N do
begin
write('Vetor[', I, ']:'); readln(Vetor[I]);
Soma := Soma + Vetor[I];
end;
Media := Soma / N;
for I := 1 to N do
if Vetor[I] > Media then
writeln(Vetor[I]);
end.
program OrdenaPalavras;
type
TipoVetor = array [1..30] of string[20];
var
Vetor : TipoVetor;
I, N,
Menor,
Ordenadas : integer;
Temp : string[20];
begin
write('N:'); readln(N);
for I := 1 to N do
readln(Vetor[I]);
Ordenadas := 0;
repeat
inc(Ordenadas); { equivale a Ordenadas := Ordenadas + 1; }
Menor := Ordenadas;
for I := Ordenadas + 1 to N do
if (Vetor[I] < Vetor[Menor]) then
Menor := I;
Temp := Vetor[Ordenadas];
Vetor[Ordenadas] := Vetor[Menor];
Vetor[Menor] := Temp;
until Ordenadas = N;
for I := 1 to N do
writeln(Vetor[I]);
end.
| Arenoso | Cimento | Bloco | Telha | Tijolo | ... | Vetor Produtos | ||
| SE | 200 | 80 | 250 | 300 | 20 | |||
| SP | 20 | 150 | 700 | 500 | 5 | |||
| RJ | 150 | 70 | 180 | 900 | 500 | |||
| ... | ||||||||
|
Vetor Lojas |
Matriz |
|||||||
E definir:
a) estoque de um dado produto numa dada loja.
b) estoque de um dado produto.
c) estoque de uma dada loja.
d) loja em que um dado produto apresenta menor estoque.
e) produto com menor estoque em uma dada loja.
program RedeLojas;
type
VetorProdutos = array[1..5] of string[10];
VetorLojas = array[1..3] of string[2];
MatrizEstoque = array[1..3, 1..5] of integer;
var
Produtos: VetorProdutos;
Lojas: VetorLojas;
Estoque: MatrizEstoque;
Produto: string[10];
Loja: string[2];
Quant, P,
L, I, J: integer;
begin
{ Leitura dos produtos }
writeln('Digite os 5 produtos');
for I := 1 to 5 do
readln(Produtos[I]);
{ Leitura das lojas }
writeln('Digite as 3 lojas');
for I := 1 to 3 do
readln(Lojas[I]);
{ Leitura do estoque por loja }
writeln('Digite o estoque dos produtos por loja');
for I := 1 to 3 do
for J := 1 to 5 do
readln(Estoque[I,J]);
{ Item A - estoque de um dado produto numa dada loja }
write('Digite o produto:'); readln(Produto);
for I := 1 to 5 do
if Produtos[I] = Produto then
P := I;
write('Digite a loja:'); readln(Loja);
for J := 1 to 3 do
if Lojas[J] = Loja then
L := J;
writeln('Estoque do produto ', Produto, ' na loja ', Loja, ':', Estoque[L,P]);
{ Item B - estoque de um dado produto }
write('Digite o produto:'); readln(Produto);
for I := 1 to 5 do
if Produtos[I] = Produto then
P := I;
Quant := 0;
for J := 1 to 3 do
Quant := Quant + Estoque[J,P];
writeln('Estoque do produto ', Produto, ':', Quant);
{ Item C - estoque de uma dada loja }
write('Digite a loja:'); readln(Loja);
for J := 1 to 3 do
if Lojas[J] = Loja then
L := J;
Quant := 0;
for I := 1 to 5 do
Quant := Quant + Estoque[L,I];
writeln('Estoque da loja ', Loja, ':', Quant);
{ Item D - loja em que um dado produto apresenta menor estoque }
write('Digite o produto:'); readln(Produto);
for I := 1 to 5 do
if Produtos[I] = Produto then
P := I;
Quant := Estoque[1,P];
L := 1;
for J := 2 to 3 do
if Estoque[J,P] < Quant then
begin
Quant := Estoque[J,P];
L := J;
end;
writeln('Loja ', Lojas[L], ' tem o menor estoque (', Quant,
') do produto ', Produto);
{ Item E - produto com menor estoque em uma dada loja }
write('Digite a loja:'); readln(Loja);
for J := 1 to 3 do
if Lojas[J] = Loja then
L := J;
Quant := Estoque[L,1];
P := 1;
for I := 2 to 5 do
if Estoque[L,I] < Quant then
begin
Quant := Estoque[L,I];
P := I;
end;
writeln('O produto ', Produtos[P], ' tem o menor estoque na loja ', Loja);
end.
49) Implementar um programa para ordenar números.
50) Implementar programa para ler nome e média dos alunos de uma turma e escrever a relação de estudantes com média superior ou igual à media da turma.
51) Implementar programa para criar as seguintes estruturas:
| Prova | Seminário | Exercícios | Projeto | Vetor Avaliação | ||
| Filosofia | 10 | 9 | 9 | 8 | ||
| Psicologia | 8 | 8 | 7 | 9 | ||
| Economia | 10 | 10 | 5 | 2 | ||
| Administração | 2 | 1 | 10 | 8 | ||
| História | 6 | 6 | 9 | 4 | ||
|
Vetor Disciplinas |
Matriz |
|||||
E determinar:
a) a média em uma dada disciplina
b) a média em uma dada modalidade de avaliação
c) a média do aluno
d) a disciplina em que o aluno obteve maior nota em uma dada modalidade de
avaliação