Help! Pascal

5 respostas
guhhh

Bem galera...alem do java como lingaguem principal meu prof da facul da esses exercicios em pascal tbm de ordenação etc...

bem oque ta ocorrendo eho seguinte...o problema pede para que se crie o seguinte:

Passo 1 - 200 Cartelas com 30 Numeros CADA (Numeros de 0~100)
Passo 2 - Não pode haver números iguais nas cartelas...
Passo 3 - Ordenar todas as cartelas de forma crescente
Passo 4 - Verificar se existe alguma Cartela Repetida,caso sim,adicionar +1 no contador

Logo abaixo segue o codigo...quem executar vai ver q mesmo assim ele nao esta substituindo os numeros
repetidos nas cartelas...gostaria que alguem me mostrasse aonde esta o erro o.0..JA tentei de todas as maneiras que eu imaginei
entao esse modelo ai foi a ultima tentativa que fiz -.-

agradeço a todos abcs

Program bingo;
uses crt;

const
maxtab=200; {Qtde de tabelas a serem geradas}
maxnum=30; {Qtde de numeros contidos na tabela}

type
matriz = array [1..maxtab,1..maxnum] of integer;

var
tabela:matriz;

x,y,tabrep,c,contrep:integer; {coluna,linha,tabelas total rep,temp,cont tab rep}
troca:boolean;
procedure embaralha_vetor;
begin
          writeln ('Embaralhando a tabela..Aguarde!');
          for x:=1 to maxtab do
          begin
               for y:=1 to maxnum do
               begin
               delay (1);
               (tabela[x,y]):=random(100);
               if y=1 then
               begin
               (tabela[x,2]):=random (100);
               end;
                   while ((tabela[x,y])=tabela[x,y+1]) do
                   begin
                   (tabela[x,y]):=random(99);
                   end;

               end;

          end;

end;

Begin
tabrep:=0;
embaralha_vetor;
troca:= true;


{EFETUA A ORDENACAO DA MATRIZ}
  while troca = true do
    begin
      troca := false;
      for x:=1 to maxtab do
        begin
          for y:=1 to maxnum-1 do
          begin
          if tabela[x,y] > tabela[x,y+1]  then
            begin
              c:=tabela[x,y];
              tabela[x,y]:=tabela[x,y+1];
              tabela[x,y+1]:=c;
              troca:=true;
            end;
        end;
    end;
   end;
        {REALIZA A COMPARACAO PARA DIZER SE EXISTE 2 OU + TAB REP}
            for x:=1 to maxtab do
            begin
               for y:=1 to maxnum-1 do
               begin
                    if ((tabela[x,y]) = (tabela[x+1,y])) then
                    begin
                    contrep:=contrep+1;
                    end;


               end;
               if contrep = maxnum then
               begin
               tabrep:=tabrep+1;
               end;
            end;


          for x:=1 to maxtab do
          begin
          writeln ('TABELA ',x);
               for y:=1 to maxnum do
               begin
               writeln (tabela[x,y]);
               end;
          end;
writeln ('Quantidade de tabelas comparadas => ',maxtab);
writeln ('Tabelas repetidas => ',tabrep);
readkey;
end.

5 Respostas

LPJava

GUJ = Grupo de Usuários Java.

Procure um forum de pascal! :smiley:

fsquadro

guhhh,

De uma olhada em um desses sites, você deverá encontrar ajuda em algum deles.

http://www.delphi.eti.br/
http://www.delphibr.com.br/
http://www.activedelphi.com.br/

paulovittor23

deu saudades do tempo que eu brincava com Pascal :cry:

ckitano

nossa…pascal tive na faculdade …na materia de lógica de programação…
bons tempos :shock:

guhhh

ckitano:
nossa…pascal tive na faculdade …na materia de lógica de programação…
bons tempos

eh eu tbm to tendo em lógica de programção…no caso estrutura de dados -.-’

Bem se alguem tiver uma luz agradeço!
abcs

Criado 28 de agosto de 2007
Ultima resposta 28 de ago. de 2007
Respostas 5
Participantes 5