Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

clovisbene

exerc . PAS

Recommended Posts

Bom amigos estou com um problema e gostaria de esta repartindo com vcs

fiz um exe

Linguagem Pascal

Exercicio de Faculdade

Faça um programa que lê uma lista de 5 números inteiros, não aceitando valores repetidos ( caso em que emite mensagem de aviso). Escreve os valores lidos. :wacko:

 

program a7l9e17;
uses crt;
var
   num:		 integer;
   x:		   integer;
   i:		   integer;
   y:		   integer;
   resp:		integer;
   a:		   array[1..5] of real;
   flag:		integer;
begin
	   clrscr;
	   for x:= 1 to 80 do
	   begin
		  gotoxy(x,1);
		  write('=');
		  gotoxy(20,2);
		  write(' L E I T U R A  D E  N U M E R O S  ');
		  gotoxy(x,3);
		  write('=');
		  gotoxy(x,19);
		  write('=');
		  gotoxy(1,20);
		  write('MSG...: ');
	   end;

	   for i := 1 to 5 do
	   begin
		 gotoxy(10,10);
		 writeln('Digite o ',i,'§ valor da matriz...: ');
		 gotoxy(42,10);
		 writeln('								   ');
		 repeat
		   gotoxy(42,10);
		   readln(num);
		   flag:=0;
		   for y:=1 to 5 do
		   begin
			   if a[y] = num then
			   begin
				  gotoxy(09,20);
				  writeln('Opa! NÆo sÆo permitidos valores repetidos!');



				  flag:=1;
			   end;
		   end;

		 until flag=0;

		 gotoxy(08,20);
		 writeln('											 ');



	   end;

	   readkey;
end.

Pessoal o seuinte eu naum estou conseguindo fazer a comparação pra achar ver se o numero digitados for igual

Ate entaum Muito Obrigado

Pela Antenção!!!!!!!

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom va anexando os numeros digitados num vetor certo?

ai é qnd um numero entrar é soh fazer a comparação, assim:

você cria um vetor de 5 posições, ai você add um dado!

i <- 0;

vet[0] = 5;

++i;

add outro:

vet[1] = 6;

++i;

ai você digita 5 denovo ai pra verificar faz assim:

para j de 0 até i faça

se dado == vet[j] então

escreva("opa você jah digitou esse numero");

else

.

.

[/code]

bom + é logico q você naum vai colocar vet[0] recebe neh, você tem q fazer um loop bonitinho!

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo me perdoa to perdidao :wacko: tipo no meu exercicio o que esta de errado???

Se você poder fazer o favor de corrigir eu agradeceria

Muito Obrigado pela atencao

Compartilhar este post


Link para o post
Compartilhar em outros sites

em pascal o sinal de igualdade é assim '=' ow assim '==' pq c for '==' você errou no trecho da comparação!

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo nao conseguir faze ainda

você poderia marcar o que esta de errado no meu e me mostrar qual que o certo

se puder eu agradeceria e muito Grato

Ate mais!!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

mude esse trecho:

if a[y] = num then
por esse e veja c da certo:

if a[y] == num then

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

no pascal como é o sinal de 'comparação'?

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom naum manjo Pascal + vamos partir do principio entaum, rode o algoritmo como tem agora e me diz ql erro q aparece, ow oq ele naum faz!

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele naum esta comparando

O exercicio pede o seguinte lê 5 numeros e naum pode ser repetido

exemplo:

Digite o 1 numero da matriz:1

Digite o 2 numero da matriz:3

Digite o 3 numero da matriz 1

 

Ops Naum vale numero repetidos!!!

 

Digite o 3 numero da matriz

 

Mais ou menos issso

 

Obrigado

http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você ta querendo aprender lógica numa linguagem de programação, esquça essas firulas de gotoxy.

 

program a7l9e17;
var
  num:		 integer;
  i,y:		   integer;
  a:		   array[1..5] of real;
begin
for i:= 1 to 5 do
begin
  writeln(' L E I T U R A  D E  N U M E R O S  ');
end;

i:=1;
repeat
  writeln('Digite o ',i,'º valor : ');
  readln(num);
  if i = 1 then begin
	  a[i] := num;
	  i:=i+1;
  end else begin
	  for y:=1 to i do begin
		if a[y] = num then begin
		  writeln('Nà sà permitidos valores repetidos!');
		  break;
		end;
	  end;
	  if y = i then begin
		a[y] := num;
		i:=i+1;
	  end;
  end;
  until i>5;
end.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.