Algoritmo

Disponível somente no TrabalhosFeitos
  • Páginas : 3 (696 palavras )
  • Download(s) : 0
  • Publicado : 23 de fevereiro de 2013
Ler documento completo
Amostra do texto
rogram Registros_ModulosP10;
{$APPTYPE CONSOLE}
uses
  SysUtils, crt;

const {define uma constante: valor fixo}
  Nmax = 10;

type {type define um tipo personalizado de dados}
  {cria o tipo"Produto", com três campos: "Nome", "Preco" e "Q"}

//  NomeProduto = string[12];
  Str12 = string[12];

  Produto = record
    Nome: Str12; {nome com até 12 caracteres}
    Preco: real;
   Q: real; {Quantidade}
  end; {finaliza a definição do registro}

  {cria um tipo que um vetor de Nmax elementos do tipo Produto}
  Lista_Produtos = array[1..Nmax] of Produto;

var
  N, K, k2:integer;
  Op: char;
  Lista: Lista_Produtos;

procedure LeProduto(var NomeProd: Str12; var PrecoProd, QProd: real);
begin
  repeat
    write('Digite o nome  do produto: ');
   readln(NomeProd);
  until NomeProd <> '';

  repeat
    write('Digite o preço do produto: ');
    readln(PrecoProd);
  until PrecoProd > 0;

  repeat
    write('Digite a Qdade do produto: ');
   readln(QProd);
  until QProd > 0;
end;

procedure InsereProduto(NomeProd: string; PrecoProd, QProd: real);
begin
  N := N + 1;
  Lista[N].Nome := NomeProd;
  Lista[N].Preco := PrecoProd;
 Lista[N].Q := QProd;
end;

procedure FixaDados;
begin
  InsereProduto('Chocolate', 4.50, 1);
  InsereProduto('Mortadela', 2.9, 1);
  InsereProduto('Leite', 2.10, 1);
  InsereProduto('Sabao',5.4, 1);
  InsereProduto('Goiabada', 4.70, 1);
end;

function TotalLista: real;
var
  i: integer;
  soma: real;
begin
  soma := 0;
  for i := 1 to N do
    Soma := Soma + Lista[i].Preco *Lista[i].Q;
  TotalLista := Soma;
end;

procedure MostraLista;
var
  i: integer;
begin
  clrscr;
  TextColor(red);  //amarelo
 writeln('>>>>>>>>>>>>>>>>>>>>>>  Lista de Compras  <<<<<<<<<<<<<<<<<<<<<<<<');
  TextColor(LightGray); //cinza claro
 ...
tracking img